2014-01-15 75 views
0

我使用opennetcf庫在windowCE 5.0上開發了一個應用程序。 我想檢查我的設備是否連接到搖籃。這意味着我想處理將設備插入搖籃或其他類似事件。當設備連接到搖籃窗口時使用C#編程的opennetcf處理事件

我的目的是,當設備連接到搖籃時,我禁用了我的應用程序的所有形式, ,並且當它從搖籃中移除時,所有表單都被啓用。

我搜索了很多。但答案並不符合我的預期。

請幫幫我。


閱讀opennetcf的引用之後,我發現了兩個事件:ACPowerApplied和ACPowerRemoved

這裏是我的代碼:

public static event DeviceNotification ACPowerApplied; 
public static event DeviceNotification ACPowerRemoved; 

void Form1_ACPowerRemoved() 
{ 
MessageBox.Show("Un-cradle"); 
} 

void Form1_ACPowerApplied() 
{ 
MessageBox.Show("Cradle"); 
} 

private void Form1_Load(object sender, EventArgs e) 
{ 
ACPowerApplied += new DeviceNotification(Form1_ACPowerApplied); 
ACPowerRemoved += new DeviceNotification(Form1_ACPowerRemoved); 
} 

但是這個過程並沒有步入Form1_ACPowerRemoved()和Form1_ACPowerApplied()。

有什麼想法嗎?對不起,我英文很差。先謝謝你。

回答

0

您的代碼是錯誤的。您訂閱了該表單的活動,但沒有人提出。 Documentation沒有顯示如何使用的代碼,我認爲。它顯示聲明。

也許它會工作(未測試):

OpenNETCF.WindowsCE.DeviceManagement.ACPowerApplied += Form1_ACPowerApplied 
OpenNETCF.WindowsCE.DeviceManagement.ACPowerRemoved += Form1_ACPowerRemoved 

你也可以嘗試使用WinAPI的來電:http://blogs.msdn.com/b/davidklinems/archive/2005/02/10/370591.aspx

如果你想,我有完整的代碼,但也有很多浪費和「OnRs232Connect」事件。順便說一句,「craddled」對你來說意味着什麼?可以將交流電源和PC兩者斷開。我的意思是,當你的設備開始通電或者通過Active Sync連接到PC時,你想處理嗎?如果第二個,你想趕上「OnRs232Connect」事件

相關問題