How to call the function GetWindowRect of Windows API in matlab

6 views (last 30 days)
Hello, everyone! I want to get the screen position of a program outside the Matlab. I found the GetWindowRect function in windows API could help me finish that. The introduction of this function from msdn is shown below: https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-getwindowrect.
The problem is that I cannot convert the simple struct datatype in the matlab to the C struct LPRECT in GetWindowRect funtion parameters. I tried the following code using libstruct
RECT.left = int32(0);
RECT.top = int32(0);
RECT.right = int32(0);
RECT.bottom = int32(0);
RECT1 = libstruct('_RECTL',RECT);
calllib('WinUser32Lib', 'GetWindowRect', WHand, RECT1);
% Load System Library Procedure Starts above...
% BOOL GetWindowRect(hWnd, LPRECT);
fcns.name{4} = 'GetWindowRect';
fcns.calltype{4} = 'cdecl';
fcns.LHS{4} = 'voidPtr';
fcns.RHS{4} = {'voidPtr','voidPtr'};
% Initiating Function Call Parameter Mapping above...
It still doesn't work, and I really need for your help!

Answers (1)

TIAN ZHU
TIAN ZHU on 26 Feb 2022
Hi, I also encountered the same problem. How did you solve it?

Categories

Find more on Package MATLAB Functions in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!