为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

32bit and 64bit msi

2019-03-28 8页 doc 50KB 9阅读

用户头像

is_014457

暂无简介

举报
32bit and 64bit msi目的:一個打包檔包含32位元、64位元driver。 範例為讓打包檔可以安裝Vista(32、64bit)、Winodows7(32、64bit)。想法是把64bit、32bit的資料用Feature區分,再到OnFirstUIBefore判斷要安裝的是64bit或32bit的Feature. 1. 建立兩個Feature,分別為System32bit、System64bit。區分系統位元,以方便之後的控管。 2. 分別建立Components,在這Components區分特定的系統下要安裝什麼。 3. 在Compone...
32bit and 64bit msi
目的:一個打包檔包含32位元、64位元driver。 範例為讓打包檔可以安裝Vista(32、64bit)、Winodows7(32、64bit)。想法是把64bit、32bit的資料用Feature區分,再到OnFirstUIBefore判斷要安裝的是64bit或32bit的Feature. 1. 建立兩個Feature,分別為System32bit、System64bit。區分系統位元,以方便之後的控管。 2. 分別建立Components,在這Components區分特定的系統下要安裝什麼。 3. 在Components的屬性的Condition設定系統條件。主要是用條件來決定哪一個系統下要安裝時資料。以下為系統的條件 Vista32:VersionNT=600 AND WindowsBuild >5600 Win7_32:VersionNT=601 Vista64:VersionNT64=600 AND WindowsBuild >5600 Vista64_inf:VersionNT64=600 AND WindowsBuild >5600 Win7_64:VersionNT64=601 Win7_64inf:VersionNT64=601 4. Vista64_inf、Win7_64inf的路徑請設定到[WindowsFolder]inf。 這個作法主要是讓driver直接安裝到\Windows\inf下,因為當硬體要裝driver時,系統是在這個路徑下尋找有無適合的driver。 5. 分別放入各系統的driver。 範例:32bit的driver檔名為UsbDriver.inf、UsbDriver.sys 64bit的driver檔名為UsbDriver.inf、UsbDriver.sys、UsbDriver64.cat Vista64、Vista64_inf放入相同的資料。Win7_64、Win7_64inf也是放入相同的資料。 同上 Vista64、Vista64_inf放入相同的資料。Win7_64、Win7_64inf也是放入相同的資料。 6. 在OnFirstUIAfter中加入下面程式,先尋找有無UsbDriver.INF,如無示未此安裝檔未支援該系統;如有就讓32bit的driver執行一下。 STRING szProgram,szCmdLine; begin Disable(STATUSEX); szProgram = "rundll32.exe"; if (FindFile (INSTALLDIR, " UsbDriver.INF ", svResult) < 0) then MessageBox ("未支援此系統", SEVERE); else if(!SYSINFO.bIsWow64) then  //非64bit  szCmdLine = "setupapi.dll,InstallHinfSection DefaultInstall 132 "+INSTALLDIR^" UsbDriver.INF ";  LaunchAppAndWait(szProgram, szCmdLine, LAAW_OPTION_WAIT); endif; endif;        7. 在OnFirstUIBefore Dlg_SetupType: szTitle = ""; szMsg  = ""; nResult = SetupType(szTitle, szMsg, "", nSetupType, 0); 下加入下面程式,用程式來控制是要安裝哪一個位元的driver,當SYSINFO.bIsWow64判斷是64bit時,把System32bit的Feature勾選取消;如不是64bit則把System32bit的Feature勾選取消 if(SYSINFO.bIsWow64) then  FeatureSelectItem ( MEDIA,"System32bit" ,FALSE ); else FeatureSelectItem ( MEDIA,"System64bit" ,FALSE ); endif; 8. 按Complie,再Release就完成了打包檔
/
本文档为【32bit and 64bit msi】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索