W wxb761014 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-03 #1 由于课题需要,我需将一些小程序组成软件包。<br>?1:如何打包,请指教。<br> 另外,我在软件包中使用了WinExec来调用对应程序。<br>?2:但WinExec需要程序的具体路径,请问大虾<br>如何在用户安装软件包后路径不定的情形下实现<br>灵活调用。
由于课题需要,我需将一些小程序组成软件包。<br>?1:如何打包,请指教。<br> 另外,我在软件包中使用了WinExec来调用对应程序。<br>?2:但WinExec需要程序的具体路径,请问大虾<br>如何在用户安装软件包后路径不定的情形下实现<br>灵活调用。
G gxg8816 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-03 #2 1:找一个安装工具打包,如 installshield<br>2:安装时,把安装路径写入注册表或ini文件中.运行时读注册表或ini 文件取得路径.
P Pipi. Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-03 #3 path中的exe不需要路径(比如windows windows/system 目录下的,<br>和其他列在path中的)<br><br>比如 WinExec('notepad.exe',SW_NORMAL) 就可以了。<br><br>如果是自己的程序,可以用相对目录<br>比如 WinExec('../prg2/prg2.exe',SW_NORMAL)
path中的exe不需要路径(比如windows windows/system 目录下的,<br>和其他列在path中的)<br><br>比如 WinExec('notepad.exe',SW_NORMAL) 就可以了。<br><br>如果是自己的程序,可以用相对目录<br>比如 WinExec('../prg2/prg2.exe',SW_NORMAL)
化 化石 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-04 #4 可以用extractfilepath(application.exename)得到执行文件的运行目录,<br>然后加上所要调用的对应程序的相对目录即可,如果调用的对应程序与主程序<br>位于同一目录下就不用加上相对目录了。
可以用extractfilepath(application.exename)得到执行文件的运行目录,<br>然后加上所要调用的对应程序的相对目录即可,如果调用的对应程序与主程序<br>位于同一目录下就不用加上相对目录了。
W wrench Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-04 #5 在当前目录的话<br>WinExec('xxx.exe',SW_NORMAL)即可<br>加相对路径也可
3 3h Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-04 #6 个人总觉得WinEXEC在使用上比SHFileExecute不是很方便。<br>至于解决问题的方法,<br>1方面gxg8816的比较行的通,否则用自解包的方式也可以。<br>2方面化石朋友的方法正是我所想的,由于安装时总是安装在同一路径,<br>所以提取应用程序的路径作为装入文件的路径总是正确的。<br>另外一个方法是将应用程序的路径设置为当前路径,<br>然后装入程序时用"./xxx.exe"的方式,也是行的通。
个人总觉得WinEXEC在使用上比SHFileExecute不是很方便。<br>至于解决问题的方法,<br>1方面gxg8816的比较行的通,否则用自解包的方式也可以。<br>2方面化石朋友的方法正是我所想的,由于安装时总是安装在同一路径,<br>所以提取应用程序的路径作为装入文件的路径总是正确的。<br>另外一个方法是将应用程序的路径设置为当前路径,<br>然后装入程序时用"./xxx.exe"的方式,也是行的通。
W wxb761014 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-05 #7 各位大虾:<br> 你们的方法我都式过(gxg8816的除外)<br>均五工而返。<br>请问如何再所有硬盘中查找某一特定的<br>.exe文件。<br>gxg8816:能否说的详细写!!!<br>不身感激!!!
各位大虾:<br> 你们的方法我都式过(gxg8816的除外)<br>均五工而返。<br>请问如何再所有硬盘中查找某一特定的<br>.exe文件。<br>gxg8816:能否说的详细写!!!<br>不身感激!!!
王 王文武 Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-08 #8 wxb761014:<br> 你提出的前两个问题,在我的科研项目中也遇到了。为了确定Winexec函数需要程序的路径,我采用的思想与"化石"提出的思想相同,这是完全可行的。Winexec调用的对应程序与主程序的相对位置关系是固定的。<br> 另外,你又提到的“请问如何再所有硬盘中查找某一特定的.exe文件”问题,这样解决:用ExpandFileName()函数可以返回特定文件的完整路径名和文件名.<br> ......<br> ExpandFileName('Main.exe');<br>
wxb761014:<br> 你提出的前两个问题,在我的科研项目中也遇到了。为了确定Winexec函数需要程序的路径,我采用的思想与"化石"提出的思想相同,这是完全可行的。Winexec调用的对应程序与主程序的相对位置关系是固定的。<br> 另外,你又提到的“请问如何再所有硬盘中查找某一特定的.exe文件”问题,这样解决:用ExpandFileName()函数可以返回特定文件的完整路径名和文件名.<br> ......<br> ExpandFileName('Main.exe');<br>
J jamesxia Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-09 #9 最方便的办法是 写 INI文件或者用TRegiste
D Dogdog Unregistered / Unconfirmed GUEST, unregistred user! 2000-04-10 #10 1.程序打包可以用InstallShield,也可以自己编,把exe文件,DLL,数据库文件,帮助文件等等和程序相关的文件考入需安装的机器上(当然,不要忘了压缩),最后,把相关信写入注册表中.(建议用第一种方法).<br>2.Pipi朋友和化石朋友的方法都很好.我比较喜欢化石朋友的方法.
1.程序打包可以用InstallShield,也可以自己编,把exe文件,DLL,数据库文件,帮助文件等等和程序相关的文件考入需安装的机器上(当然,不要忘了压缩),最后,把相关信写入注册表中.(建议用第一种方法).<br>2.Pipi朋友和化石朋友的方法都很好.我比较喜欢化石朋友的方法.