2016-06-24 14:05 GMT+02:00 Esteban Lorenzano <[email protected]>: > > On 24 Jun 2016, at 09:53, Nicolai Hess <[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* >> >> 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* >> . >> >> 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 >> >> >> >> > > >
