delphi怎样把字符写入bat文件
比如在已经做成的t.bat文件的最后一行接写abc高手再判断一下我这两句话套用错了吗:把WinExec('c:\test.bat',SW_SHOWNORMAL);换成Wi...
比如在已经做成的t.bat文件的最后一行接写abc
高手再判断一下我这两句话套用错了吗:把
WinExec('c:\test.bat',SW_SHOWNORMAL);换成
WinExec(extractFilePath(application.exeName)
+'batFile\useDos.bat',SW_SHOWNORMAL);
为什么[Error] doBat.pas(89): Incompatible types: 'String' and 'PAnsiChar' ?
====== ======= ====== ====== ====== ===== =====
再次请教cb120520025大侠:sl.Strings[sl.Count - 1] := sl.Strings[sl.Count - 1] + 'abc'; 在最后一行后面接着写
,但下一次再触发这个事件时就是在这个新添的“abc”之后再增加字符了。怎样处理把这个新添的“abc”用了之后再把它删去,也就是触发事件时永远是对文件内容初始状态下的增添。本人业余菜鸟,望大师指点! 展开
高手再判断一下我这两句话套用错了吗:把
WinExec('c:\test.bat',SW_SHOWNORMAL);换成
WinExec(extractFilePath(application.exeName)
+'batFile\useDos.bat',SW_SHOWNORMAL);
为什么[Error] doBat.pas(89): Incompatible types: 'String' and 'PAnsiChar' ?
====== ======= ====== ====== ====== ===== =====
再次请教cb120520025大侠:sl.Strings[sl.Count - 1] := sl.Strings[sl.Count - 1] + 'abc'; 在最后一行后面接着写
,但下一次再触发这个事件时就是在这个新添的“abc”之后再增加字符了。怎样处理把这个新添的“abc”用了之后再把它删去,也就是触发事件时永远是对文件内容初始状态下的增添。本人业余菜鸟,望大师指点! 展开
4个回答
展开全部
//在最后插入行
procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('c:\t.bat');
sl.Add('abc');
sl.SaveToFile('c:\t.bat');
finally
sl.Free;
end;
end;
//在最后一行后面接着写
procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('c:\t.bat');
sl.Strings[sl.Count - 1] := sl.Strings[sl.Count - 1] + 'abc';
sl.SaveToFile('c:\t.bat');
finally
sl.Free;
end;
end;
那样的话你准备多一个bat文件是放原始数据的,保存出来到另外一个bat文件,载入的时候就载入原始的bat,如有t1和t两个bat文件,t1是原始数据的,t是要修改运行的
procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('c:\t1.bat');
sl.Strings[sl.Count - 1] := sl.Strings[sl.Count - 1] + 'abc';
sl.SaveToFile('c:\t.bat');
finally
sl.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('c:\t.bat');
sl.Add('abc');
sl.SaveToFile('c:\t.bat');
finally
sl.Free;
end;
end;
//在最后一行后面接着写
procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('c:\t.bat');
sl.Strings[sl.Count - 1] := sl.Strings[sl.Count - 1] + 'abc';
sl.SaveToFile('c:\t.bat');
finally
sl.Free;
end;
end;
那样的话你准备多一个bat文件是放原始数据的,保存出来到另外一个bat文件,载入的时候就载入原始的bat,如有t1和t两个bat文件,t1是原始数据的,t是要修改运行的
procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
begin
sl := TStringList.Create;
try
sl.LoadFromFile('c:\t1.bat');
sl.Strings[sl.Count - 1] := sl.Strings[sl.Count - 1] + 'abc';
sl.SaveToFile('c:\t.bat');
finally
sl.Free;
end;
end;
展开全部
以TextFile方式打开Bat文件
WriteLn()写入
WriteLn()写入
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
procedure TForm1.bitbtn1(Sender: TObject);
var
f:textfile;
begin
assignfile(f, 't.bat'); //打开BAT文件
writeln(f, 'echo');
writeln(f, 'dir c:\');
closefile(f);//关闭BAT文件
end;
var
f:textfile;
begin
assignfile(f, 't.bat'); //打开BAT文件
writeln(f, 'echo');
writeln(f, 'dir c:\');
closefile(f);//关闭BAT文件
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单,一句话搞定
winexec(pchar('cmd /c echo abc>>t.bat'),sw_hide);
测试了下,没有问题的。呵呵。程序吗,就像姑娘的裙子,越短越好。一句话可以搞定不要费那么多事的咯。
问题补充的回答:
WinExec(PChar(extractFilePath(Application.ExeName)+'batFile\useDos.bat'),SW_HIDE)
winexec(pchar('cmd /c echo abc>>t.bat'),sw_hide);
测试了下,没有问题的。呵呵。程序吗,就像姑娘的裙子,越短越好。一句话可以搞定不要费那么多事的咯。
问题补充的回答:
WinExec(PChar(extractFilePath(Application.ExeName)+'batFile\useDos.bat'),SW_HIDE)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询