import user32.dll and use the 'BlockInput' function in it

Hi,
I am sending a series of keystrokes to the notepad application from Matlab and through the total process I would like to lock the user input form both keyboard and mouse till the process completes and then release the lock. I found that there is a function called 'BlockInput' MSDN function in 'user32.dll'. So I am trying to import this dll into Matlab and use the function but I am getting the following error when I am trying to load the dll using 'loadlibrary' command.
loadlibrary('"C:\WINDOWS\system32\user32.dll"','winuser'); Warning: The library class 'user32' already exists. Use a classname alias.
Any guidance is appreciated.
Thanks, Krishna.

 采纳的回答

I created a dll in VB dotnet for the required function 'BlockInput'. I registered the created dll in Matlab using RegAsm.exe . Once I registered the dll in Matlab I created a COM component using 'actxserver' command. Then I could use the methods in the COM component and I got it working :) .

更多回答(5 个)

Sorry about repeating the question.. I am getting 0.. I guess this means the library is not loaded..
Try:
addpath('C:\WINDOWS\system32\')
loadlibrary user32 winuser.h
If you continue to see the same error, try:
loadlibrary user32 winuser.h alias user32lib

1 个评论

Matlab removed my previous post, here is my new post with source code..
And to my knowledge the loadlibrary method I followed is undocumented...

请先登录,再进行评论。

Hi Krishna,
Did you find out what was the problem?
Hi Krishna, I would like to disable temporality my keyboard and mouse through Matlab and I would like to know how did you do that.
Could you please post your solution or somehow send it to me?
Thanks!

类别

帮助中心File Exchange 中查找有关 Desktop 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by