我有一個c#應用程序,我在Windows Mobile 6.1設備上的cleanboot期間安裝。它安裝正確,但是,我需要讓它在cleanboot後自動啓動。乾淨啓動後的Windows Mobile 6.1自動啓動應用程序
我總是不得不在cleanboot啓動後啓動掌上電腦。
我該如何避免這種情況?
我有一個c#應用程序,我在Windows Mobile 6.1設備上的cleanboot期間安裝。它安裝正確,但是,我需要讓它在cleanboot後自動啓動。乾淨啓動後的Windows Mobile 6.1自動啓動應用程序
我總是不得不在cleanboot啓動後啓動掌上電腦。
我該如何避免這種情況?
我asume,你正在使用CAB文件在cleanboot期間安裝您的C#應用程序。
您可以使用DLL的Install_Exit函數調用(setupdll示例,例如:http://www.codeproject.com/Articles/7724/Creating-Pocket-PC-Application-Setup-Packages-Usin)在cab文件安裝後使用cab內的setup.dll啓動應用程序。但是MS表示你不能依靠調用cab安裝本身的文件。
另一種方法是安裝C#應用程序後安裝並調用您的應用程序,甚至使用安裝DLL的seond cab。
另請參閱http://msdn.microsoft.com/en-us/library/bb158796.aspx瞭解如何將多個駕駛室安裝到一個安裝位置。
cleanboot安裝程序和AutoStart的問題是,操作系統已經安裝了運行\ Windows \ StartUp和其他自動啓動功能。因此,您通常需要重新啓動,然後使用StartUp(或HKLM \ Init)執行您的應用程序。
您也可以使用腳本引擎安裝cab,然後啓動已安裝的應用程序。例如使用MortScript,它支持在SD Card \ 2577或類似的目錄(卷名\ 2577)中用作「AutoStart.exe」。該腳本可以調用wceload.exe來安裝您的應用程序,然後啓動已安裝應用程序的可執行文件。像使用批處理。
由於這是Intermec安裝,您可以使用\ Flash File Store \ UserAutoInstall_sstransferagent.xml自動安裝和啓動應用程序。
例如:你的出租車是在\ Flash文件存儲\ MyInstall \ MyCab.cab並安裝到MyApp.exe的\ Program Files文件\ MyApp的:
<?xml version="1.0"?>
<Devices>
<Device Type="" Family="" Model="" Boot="">
<Files SrcDir="\Flash File Store\UserAutoInstall">
<File SrcName=""
DestName="wceload.exe"
DestDir="\Windows"
Run="true"
CmdLine='"\Flash File Store\MyInstall\MyCab.cab" /silent /verifyconfig /nodelete'
/>
<File SrcName=""
DestName="MyApp.exe"
DestDir="\Program Files\MyApp\MyApp.exe"
Run="NoWait"
CmdLine=''
/>
</Files>
</Device>
</Devices>
問候