我在32位Windows 7 PC上使用Delphi 2010进行编程。
以下代码在我的电脑上以管理员身份运行时可以使用。
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellApi;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
ShellExecute(0,'open','command','/c ipconfig /all > testipco.txt','',0);
showmessage('Test IP Config file should be written');
end;
end.
输出文件TESTIPCO.TXT并包含与在命令提示符窗口中输入ipconfig / all相同的结果。
当我编译文件并在64位Windows 8.1 PC上以管理员身份运行时,程序似乎运行正常,显示消息(没有错误),但不生成文件TESTIPCO.TXT。
即使在兼容性设置为Windows 7的Windows 8计算机上运行exe也无法正常工作。
我无法弄清楚为什么会这样。我希望你们中的一个聪明的人能够引导我朝着正确的方向前进。
答案 0 :(得分:1)
您是否尝试过cmd.exe
? Command
是一个有点过时的参考。