installshield问题,我用InstallShield2013进行编译,直接报出了下面的这个错误,setup.inx这个文件是有

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了installshield问题,我用InstallShield2013进行编译,直接报出了下面的这个错误,setup.inx这个文件是有相关的知识,希望对你有一定的参考价值。

的,但是build之后这个文件就没了,重新放一个进去然后再build,又没了,这是什么问题啊。ISDEV : error 136: Could not copy file 'D:\InstallShield\BHS15_IntegratedInstaller_Project\BHS15_IntegratedInstaller_Project\BHS15\Script Files\setup.inx' to 'D:\InstallShield\BHS15_IntegratedInstaller_Project\BHS15_IntegratedInstaller_Project\BHS15\Media\BHS15\Disk Images\Disk1\setup.inx' "The system cannot find the file specified."

今天也遇到了这个问题,已经解决,一句话说:将Script Files路径下所有文件都去除只读属性。详细解决过程如下:报的这个错实际上只是表面错误,真正的错误还在输出里我没仔细看,其实有一句“can not open .obs out file”,打不开某个输出文件,我怀疑是某个文件变成只读属性了,所以去Script Files路径下看了一下,确实有一个setup.obs文件,并且属性是只读,将只读属性去除就好了。然后还是编不过,这次是setup.dbg的只读问题,索性将Script Files路径下所有文件都去除只读属性,于是可以编过了。 参考技术A 重新编译试试。本回答被提问者采纳

Installshield打包

Installshield打包注意事项:
问题
:当32位的AP调用WINSYSDIR变量时,会默认指向syswow64,就算是调用WINDIR^"system32",也会被强迫指向syswow64。

解决:Disable(WOW64FSREDIRECTION)
WOW64FSREDIRECTION:起着判断64位系统下调用哪个系统变量的作用,Disable掉后,就会默认指向system32。
注意:当安装进行完后,记得Enable(WOW64FSREDIRECTION),以避免影响系统的其他程序。

 

经验:
在Installing()事件中Disable(WOW64FSREDIRECTION);

 在Installed()事件中Enable(WOW64FSREDIRECTION);

这样整个安装过程就不用去考虑何时开关了。

 

同样,卸载的过程中也得在UnInstalling()和UnInstalled()中这样做,才会卸载掉对应的部分。

https://hds.networld.co.jp/helpdesk/support/FaqFacadeServlet?TaskType=Detail&seriesId=InstallShieldFAQ&id=00001575&categoryId=0061&faqInfo=1&JspUrl=/support/FrequentlyDetail.jsp#question

export prototype Feature64files_Installing();
   function Feature64files_Installing()
   begin
      // ファイルリダイレクトを無効にした状態で自動登録をする必要があるので、
      // バッチメソッドによる自動登録は無効にしておきます。
      Disable ( SELFREGISTERBATCH );
    
      // ファイルが 64-bit システムフォルダに正しく転送されるようにファイルリダイレクトを無効にします。
      Disable ( WOW64FSREDIRECTION );
    
      // 32-bit プロセス(InstallScript エンジン)からレジストリの 64-bit 部分に書き込めるように
      //レジストリリダイレクトを無効にします。
      REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;

     /*
        ここに RegDBSetKeyValueEx 関数などを使用して、レジストリの書き込み処理などを追加します
     */

   end;


   export prototype Feature64files_Installed();
   function Feature64files_Installed()
   begin
     // バッチメソッドを有効にします。
     Enable ( SELFREGISTERBATCH ); 

     // ファイルリダイレクトを有効にします。 
     Enable ( WOW64FSREDIRECTION );

     // レジストリリダイレクトを有効にします。
     REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;
   end;


   export prototype Feature64files_UnInstalling();
   function Feature64files_UnInstalling()
   begin
     Disable ( SELFREGISTERBATCH );
     Disable ( WOW64FSREDIRECTION );
     REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;
   end;

 
   export prototype Feature64files_UnInstalled();
   function Feature64files_UnInstalled()
   begin
     Enable ( SELFREGISTERBATCH );
     Enable ( WOW64FSREDIRECTION );
     REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;
   end;

 

以上是关于installshield问题,我用InstallShield2013进行编译,直接报出了下面的这个错误,setup.inx这个文件是有的主要内容,如果未能解决你的问题,请参考以下文章

installshield怎么安装多语言的程序

InstallShield - 相对文件路径

我用`pip install paramiko`安装了paramiko,但无法导入paramiko [重复]

安装installshield问题

InstallShield 2015 安装 在vs2015

InstallShield 先决条件(错误 -7067)