if you send me the code, I can take a look.

> On 24 Jun 2016, at 15:06, Nicolai Hess <[email protected]> wrote:
> 
> 
> 
> 2016-06-24 14:52 GMT+02:00 Esteban Lorenzano <[email protected] 
> <mailto:[email protected]>>:
> 
>> On 24 Jun 2016, at 14:40, Nicolai Hess <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> 
>> 
>> 2016-06-24 14:32 GMT+02:00 Esteban Lorenzano <[email protected] 
>> <mailto:[email protected]>>:
>> … and I enhanced the example to not induce to confusion anymore :)
>> 
>> Esteban
>> 
>> Sorry, I must be stupid, it still does not work ( and it actually looks the 
>> same as with the existing WinHandle type). 
> 
> well, that I don’t know… for me it works, I tested it in Win10 and it was 
> fine. 
> 
> What was fine?
>  
> What exactly are you trying to do?
> 
> As I wrote, I try to get the vmmodule handle (WinProcess getVMModuleHandle) 
> and assign it to the hInstance field of a WinWndClassEx,
> getting the vm module handle works, (both, if I use the existing WinHandle 
> type or (like you) a direct FFIConstantHandle).
> 
> But assigning this value to the hInstance field always gives a DNU 
> MessageNotUnderstood: SmallInteger>>isExternalAddress
> 
> I do understant that a WinHandle is not an external (memory) resource and has 
> no external address. 
> I just don't undestand how to pass this type of arguments.
>  
> 
> Esteban
> 
>> 
>>  
>> 
>>> On 24 Jun 2016, at 14:27, Nicolai Hess <[email protected] 
>>> <mailto:[email protected]>> wrote:
>>> 
>>> 
>>> 
>>> 2016-06-24 14:05 GMT+02:00 Esteban Lorenzano <[email protected] 
>>> <mailto:[email protected]>>:
>>> 
>>>> On 24 Jun 2016, at 09:53, Nicolai Hess <[email protected] 
>>>> <mailto:[email protected]>> wrote:
>>>> 
>>>> 
>>>> 
>>>> I’m sorry… I do not understand. This is solved in UFFI since some months, 
>>>> and Torsten’s OSWindow uses it. 
>>>> 
>>>> Sorry then it is my fault. I know that Torsten already ported OSWindow to 
>>>> UFFI, and that most things are already working. 
>>>> 
>>>> UFFI provides FFIConstantHandle type to deal with windows HANDLE types, as 
>>>> comment says: 
>>>> 
>>>> I represent a constant HANDLE, as described in  *Windows 
>>>> MSDN>https://msdn.microsoft.com/en-us/library/windows/desktop/ms724457(v=vs.85).aspx*
>>>>  
>>>> <https://msdn.microsoft.com/en-us/library/windows/desktop/ms724457(v=vs.85).aspx*>
>>>> 
>>>> A ==HANDLE== is a special kind of external object who is accessed through 
>>>> numbers, therefore and ==ExternalAddress== is not appropriate to describe 
>>>> it (since they are constants and external addresses represents disposable 
>>>> spaces from memory).
>>>> 
>>>> Is not clear this is necessary outside Windows, but according to 
>>>> documentation they are somekind analogous to unix's File Descriptors (but 
>>>> with some remarkable diferences, as documented 
>>>> *here>http://lackingrhoticity.blogspot.fr/2015/05/passing-fds-handles-between-processes.html*
>>>>  
>>>> <http://lackingrhoticity.blogspot.fr/2015/05/passing-fds-handles-between-processes.html*>.
>>>> 
>>>> Example: 
>>>> [[[
>>>> HWND := #FFIConstantHandle.
>>>> self ffiCall: #(HWND GetActiveWindow())
>>>> ]]] 
>>>> 
>>>> is there anything I’m missing?
>>>> 
>>>> I don't know what else should I do, I already posted the example.
>>>> The code I provided just don't work (DNU on isExternalAddress, see other 
>>>> mail), and I have no idea how to make it work.
>>>> Yes, maybe I don't know enough about ffi for this type of the function 
>>>> argument passing.
>>> 
>>> the example is a simplification, you cannot put both definition and call in 
>>> same method… find attached a working example of what you want.
>>> 
>>> 
>>> Thank you!
>>>  
>>> 
>>> 
>>> 
>>> 
>>>> 
>>>> (actually I tried to port some NBOpenGL code to UFFI, for this I need to 
>>>> register a Window Class with WinWndClassEx (to create a gl context).
>>>> So if this *is* already working, I need to look what I have done wrong).
>>>> 
>>>> thanks for your response.
>>>> nicolai
>>>> 
>>>>  
>>>> 
>>>> Esteban
>> 
>> 
> 
> 

Reply via email to