1
我正在使用CreateFile打開與我的USB硬件的連接。如果我有兩個(或更多)硬件連接到PC,我想阻止我的PC應用程序的多個實例(不同的PID)連接到相同的硬件。CreateFile不會阻止其他進程打開我的設備
我認爲這是通過使用dwShareMode = 0運行CreateFile來完成的。出於某種原因,這是行不通的。向相同的USB設備運行CreateFile時,PC應用程序的幾個不同實例將獲得有效的句柄。
hDev = CreateFile(
"\\\\?\\usb#vid_0442&pid_0891&mi_01#6&2ea0fbc8&0&0001#{ff646f80-8def-11d2-9449-00105a075f6b}"
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED,
NULL
);
如果可能的話,我想使這項工作,因爲我想在不改變驅動程序,因爲這將調用驅動程序的證書籤名,yadayada ...
有什麼我錯過了?
http://msdn.microsoft.com/en-us/library/windows/desktop/aa363858(v=vs.85).aspx