我一直在開發c#中的應用程序,並且我想在插入USB大容量存儲時進行一些驗證。用於C#的C庫,用於從操作系統隊列中刪除消息
問題是,在驗證過程中,我想從消息隊列中取出海量存儲的消息。
一個人告訴我,你不能在C#中這樣做,但只能在C語言中使用匯編語言。
你們能幫我找到一個C庫,可以從C#中使用它從操作系統消息隊列中取消消息嗎?
protected override void WndProc(ref Message m)
{
switch (m.Msg)
{
case Win32.WM_DEVICECHANGE:
//OnDeviceChange(ref m);
break;
}
base.WndProc(ref m);
}
void OnDeviceChange(ref Message msg)
{
int wParam = (int)msg.WParam;
if (wParam == Win32.DBT_DEVICEARRIVAL)
{
label1.Text = "Arrival";
//MessageBox.Show("" + wParam);
//msg = Message.Create(new IntPtr(),1,new IntPtr(),new IntPtr());
}
else if (wParam == Win32.DBT_DEVICEREMOVECOMPLETE) label1.Text =
"Remove";
}
我已經這樣做了,但它只是告訴你發生了什麼事。
我想關閉消息,以便操作系統不會知道與設備相鄰,然後在驗證通過驗證時再次將消息置於其上。
我想要做的是當大容量存儲設備插入時,如果密碼正常,它會要求輸入密碼......它將消息轉發給操作系統,否則會消息消息,以便操作系統不知道關於它......(所有這些都要在窗口服務中完成......) – kashifmehmood