Windows CE/Pocket PC安裝盤的製作 (轉)
CE/Pocket PC盤的製作
by blackcolor 2002.02.21
工作環境為: EMBDVTOOLS 3.0、Microsoft ActiveSync 3.1、SE、Microsoft Visual C++ 6.0,
PDA是聯想天璣3000(Windows CE 3.0版本、是ASA1110)
Windows CE/Pocket PC安裝盤的製作可分為以下幾個步驟,在詳細說明之前,假設在C:已經建立一個目錄sample,
裡面有已經編譯好的EXEsample.exe(放在sample的子目錄下)和一個ico檔案sample.ico。
一、準備一個inf檔案(Sample.inf),放在c:sample下,其格式如下:
; PDA安裝檔案:Sample.inf
;
[Version]
Signature = "$$"
Provr = "你的公司名稱"
CESignature = "$Windows CE$"
[CEStrings]
AppName = "你的應用名稱"
InstallDir = %CE1%%AppName%
[CEDevice]
ProcessorType = 2577 ; CPU型別為ARM SA11xx
[SourceDisksNames]
1 = ,"Common files",,source ; 原始檔在在C:Samplesource下
[SourceDiskiles]
sample.exe = 1 ; 已經編譯好的EXE檔案
[DefaultInstall]
CopyFiles = Files.InstallDir
AddReg = RegData
CEShortcuts = Links
[DestinationDirs]
Files.InstallDir = ,%InstallDir%
Links = ,%CE11%
DefaultDestDir = ,%InstallDir%
[Files.InstallDir]
"porder.exe",porder.exe ; 將複製的檔案
[RegData]
HKLM,SoftwareMicrosoft%AppName%,MajorVersion,0x00010001,1
HKLM,SoftwareMicrosoft%AppName%,MinorVersion,0x00010001,0
[Links]
"快捷方式名稱",0,sample.exe,%CE17% ; 在開始選單建立快捷方式
二、用CabWiz.exe製作一個CAB包,CabWiz.exe檔案在目錄
%evtoolsdir%Windows CE Toolswce300MS Pocket PCsupportActiveSyncwindows ce application installationcabwiz
下,其中%evtoolsdir%是Microsoft EMBDVTOOLS 3.0的安裝目錄,在該目錄的上級目錄中有一檔案buildcab.bat,
把buildcab.bat複製到c:sample,修改為:
@echo off
REM
REM Sample batch file used to compile the CabWiz INF file
REM
REM
REM Replace
REM Replace
REM
REM 請在檔案"sample.inf"上面加上一對""號
REM 下面的命令應該是一行
"%evtoolsdir%Windows CE Toolswce300MS Pocket PCsupport
ActiveSyncwindows ce application installationcabwizCabWiz.exe" "sample.inf" /err err.log
修改完畢之後,就可以buildcab.bat檔案,該檔案將生成sample.cab。
三、製作一個ini檔案install.ini,放在c:sample下,如下:
[CEAppManager]
Version = 1.0
Component = Sample
[POrder]
Description = 說明文字
IconFile = Sample.ico
IconIndex = 0
DeviceFile = Sample.exe
CabFiles = Sample.CAB
四、把PDA連上Windows 98SE,進入MS DOS方式,進入Microsoft ActiveSync 3.1的安裝目錄
C:Program FilesMicrosoft ActiveSync,執行如下命令:
C:Program FilesMicrosoft ActiveSync>ceappmgr c:sampleinstall.ini
將啟動安裝程式,把Sample.exe安裝到PDA上。如果覺得每次這樣安裝麻煩,請參照步驟五。
五、使用VC6建立一個簡單的安裝載入程式
1.開啟vc6新建一個工程,在Projects標籤選擇 Application,“Project Name”
輸入install。
2.第二步選擇“An empty project”,按Finish按鈕。
3.新建一個檔案install.cpp,並加入工程,內容如下:
// --------------------------------------------------
// PDA 安裝程式(Pocket PC)
// --------------------------------------------------
#include
#include
#include
#include
#include
#include <.h>
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// 取自身的路徑
char szPath[MAX_PATH];
GetModuleFileName(NULL, szPath, MAX_PATH-1);
// 轉換成ini檔名
int iLen = strlen(szPath);
strcpy(&szPath[iLen-3], "ini");
// 取CEAppMgr.exe的全路徑
HKEY hResult;
char szCEAppMgr[]="softwareMicrosoftWindowsCurrentVersionApp PathsCEAppMgr.exe";
LONG iRet=RegOpenKeyEx(HKEY_LOCAL_MACHINE, szCEAppMgr, NULL, KEY_READ, &hResult);
BYTE szCEAppMgrExe[MAX_PATH*2+1];
if(iRet==ERROR_SUCCESS)
{
D cbName, dwType;
cbName = MAX_PATH;
dwType = REG_SZ;
iRet = RegQueryValueEx(hResult, NULL, NULL, &dwType, szCEAppMgrExe, &cbName);
RegCloseKey(hResult);
}
if (iRet!=ERROR_SUCCESS)
{
MessageBox(NULL, "請先安裝Microsoft ActiveSync!", "錯誤", MB_ICONERROR);
return 1;
}
char szExe[MAX_PATH*2+2];
strcpy(szExe, (char *)szCEAppMgrExe);
// 開始安裝
SHELLEXECUTEINFO ExecInfo ;
memset((char *)&ExecInfo, 0, sizeof(ExecInfo));
ExecInfo.cbSize = sizeof(ExecInfo);
ExecInfo.fMask = SEE_MASK_CLASSKEY;
ExecInfo.hwnd = NULL;
ExecInfo.lpFile = szExe;
ExecInfo.lpParameters = szPath;
ExecInfo.nShow = SW_SHOW;
ShellExecuteEx(&ExecInfo);
return 0;
}
4.將編譯後的EXE檔案install.exe,複製到c:sample目錄,執行install.exe
將自動安裝上面的軟體。
六、說明
1.更詳細的資料請參考Microsoft EMBDVTOOLS 3.0的聯機幫助,
Microsoft EMBDVTOOLS 3.0可以由網站免費獲得。
2.我手裡只有一個PDA,對其他型號的PDA我沒有進行測試。
3.本文版權歸原作者所有,其它網站轉載請註明出處並保持本文的完整性,
傳統轉載須事先與原作者聯絡,與建議請一併發至to:blackcolor@263">blackcolor@263.net。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-992075/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- U盤如何製作win10安裝盤|win10安裝U盤製作方法Win10
- win10怎麼製作安裝u盤_win10安裝U盤製作教程Win10
- windows系統盤製作,系統裝機Windows
- windows10建立U盤安裝介質流程_win10 U盤安裝介質如何製作WindowsWin10
- Mac 製作 win10 安裝盤MacWin10
- 怎樣製作win10的iOS映象安裝U盤_製作win10 iso映象安裝U盤教程Win10iOS
- oracle linux使用安裝盤製作本地yumOracleLinux
- 如何製作windows啟動盤 u盤製作win10啟動盤WindowsWin10
- 如何製作uefi win10安裝盤啟動U盤Win10
- win10系統製作mac10.11安裝u盤的方法_win10如何製作mac os x 10.11安裝u盤Win10Mac
- 隨身碟如何製作win10安裝盤|win10安裝隨身碟製作方法Win10
- windows10系統盤製作Windows
- Linux 安裝 Docker CELinuxDocker
- macOS Big Sur系統製作安裝啟動盤教程Mac
- Linux製作系統啟動盤以及掛載和解除安裝U盤Linux
- 如何製作win10啟動u盤安裝系統Win10
- linux/OSX中“DD”命令製作ISO映象作業系統安裝U盤Linux作業系統
- Ubuntu18.04 安裝 Docker CE 的方法UbuntuDocker
- Debian安裝包的簡單製作
- 如何製作uefi win10安裝盤啟動隨身碟Win10
- 在Linux下製作Linux&windows啟動盤LinuxWindows
- Docker-CE 安裝(centos7)DockerCentOS
- centos7.9 安裝docker-ceCentOSDocker
- Python 模組的製作,釋出,安裝Python
- Windows 11 作業系統安裝方法Windows作業系統
- Windows 多次製作母盤,備份檔案變大的問題Windows
- u盤製作系統盤
- 【系統】打造自己最喜愛的 Windows10 —— U 盤啟動盤製作篇Windows
- [系統] 打造自己最喜愛的 Windows10 —— U 盤啟動盤製作篇Windows
- win10系統如何建立U盤安裝介質_win10製作介質u盤的方法Win10
- DMG Canvas 4.0.7 DMG安裝包製作Canvas
- Powershell 命令列安裝 Windows 作業系統命令列Windows作業系統
- 怎樣在桌面上安裝 Docker CE?Docker
- Ubuntu安裝和配置Docker-CE映象加速UbuntuDocker
- Linux(Centos7)安裝Docker 社群(ce)版LinuxCentOSDocker
- Data2Pocket怎麼免費啟用?Data2Pocket安裝及啟用圖文教程
- u盤製作系統盤工具
- iMac安裝Windows系統鍵盤無反應MacWindows
- windows10建立隨身碟安裝介質流程_win10 隨身碟安裝介質如何製作WindowsWin10