Re: Second monitor enumeration
- Posted by AndyDrummond Jun 23, 2019
- 1054 views
irv said...
How are you "wrapping" the call?
It's hard to guess what the problem might be without an example. Are you passing a null as the first parameter and the monitor # as the second?
I should have put this in originally. It is a very basic call based upon other Win32Lib function registering. I assumed that merely giving some space for a buffer would be adequate, and passing the pointer, would do. I didn't progress further because I thought that if I can get a return boolean to reflect whether there is a monitor there or not then I was on the right track. If not, i wasn't. And i wasn't.
atom ddptr integer ddret sequence ddbuff constant xEnumDisplayDevicesA = registerw32Function(user32, "EnumDisplayDevicesA", {C_POINTER, C_LONG, C_POINTER, C_LONG}, C_UINT) trace(1) ddbuff = repeat(0, 424) ddbuff[1] = 424 ddptr = w32acquire_mem(0, ddbuff) ddret = w32Func(xEnumDisplayDevicesA, {VOID, 1, ddptr, 1}) -- I also tried NULL where I have VOID release_mem(ddptr)
Is this a valid way to call the function??