如何从用Delphi XE编写的EXE文件中启动Delphi 7?

| 我正在做一些构建自动化,并且想从我正在使用Delphi XE编写的应用程序中运行Delphi 7 IDE。 我的Delphi 7 IDE位于:
\'C:\\Program Files\\Borland\\Delphi7\\Bin\\delphi32.exe\'
还在做:
ShellExecute( Handle, \'Open\', \'C:\\Program Files\\Borland\\Delphi7\\Bin\\delphi32.exe\', \'\', \'\', sw_ShowNormal );
最终会进入Delphi 7 IDE,但只有在丢失许多包装错误之后才可以。 正在做:
ShellExecute( Handle, \'Open\', \'C:\\windows\\notepad.exe\', \'\', \'\', sw_ShowNormal );
Works文件打开记事本。 我还有一个名为\'Delphi7IDE.bat \'的批处理文件,当我单击该批处理文件时会打开Delphi 7,但是这样做是:
ShellExecute( Handle, \'Open\', \'C:\\sys\\batch\\Delphi7IDE.bat\', \'\', \'\', sw_ShowNormal );
产生与上述相同的错误。 我已尝试使用Delphi 7菜单快捷方式中指定的Directoy(即调用:
ShellExecute( Handle, \'Open\', \'C:\\Program Files\\Borland\\Delphi7\\Bin\\delphi32.exe\', \'\', \'C:\\Program Files\\Borland\\Delphi7\\Projects\\\', sw_ShowNormal );\"
但这会产生相同的错误(这是可以预期的,因为上面的批处理文件示例没有固定目录,并且在单击时运行良好)。 有多个错误,但其中一个示例是 请问我做错了什么?     
已邀请:
现在我想我明白了。 Delphi 7很旧。 Windows Vista(或7)是新的。您正在以管理员身份运行“ 5”,不是吗?也就是说,如果右键单击
delphi32.exe
(或快捷方式),则在“兼容性”选项卡中选择了“以管理员身份运行该程序”。如果以管理员身份运行
delphi32.exe
,一切都很好,但是如果不这样做,则在启动期间会遇到所有这些错误。 现在,当您从Delphi应用程序中获得
ShellExecute
delphi32.exe
时,
delphi32.exe
继承了Delphi应用程序的特权。这很可能在没有任何提升特权的情况下运行,ѭ5也将如此。 解决方案:右键单击您的Delphi应用程序(例如12英镑),选择“兼容性”选项卡,然后单击“以管理员身份运行该程序”复选框。     
您可能会弄错工作目录。右键单击“开始”菜单上的\“ Delphi 7 \”图标,然后按Ctrl + C此快捷方式的工作目录。使用此字符串作为
ShellExecute
Directory
参数。 我没有要试用的任何Delphi 7系统,但是在安装了Delphi 4的虚拟Windows 95机器中,确实有一个指定的工作目录:     
这可能使您感兴趣:http://msdn.microsoft.com/zh-cn/library/ms682431(v=vs.85).aspx这是有关如何使用该功能的Delphi示例:http:// www .delphi3000.com / articles / article_4176.asp     

要回复问题请先登录注册