begin
ShellExecute(Handle,'Open',PChar( 'notepad.exe'),PChar('c:\re.txt'),nil,SW_SHOWNORMAL);
end;我的问题是第一行代码用ShellExecute打开记事本c:\re.tet后,程序然后直接运行下一行代码.结果redtMemo中的内容还是原来c:\re.txt中的内容
我的意思是修改并保存re.txt后,程序在执行redtMemo.lines.LoadFromFile('c:\re.txt');以获取修改后的内容.
希望各位朋友帮帮忙!小弟先谢谢了
ShellExecute(Handle,'Open',PChar( 'notepad.exe'),PChar('c:\re.txt'),nil,SW_SHOWNORMAL);
end;我的问题是第一行代码用ShellExecute打开记事本c:\re.tet后,程序然后直接运行下一行代码.结果redtMemo中的内容还是原来c:\re.txt中的内容
我的意思是修改并保存re.txt后,程序在执行redtMemo.lines.LoadFromFile('c:\re.txt');以获取修改后的内容.
希望各位朋友帮帮忙!小弟先谢谢了
解决方案 »
- 各位:电脑网路断线几分钟后恢复正常, 请问ADO连接怎么复位
- 关于DeleteFile的问题,在线等!
- 数据库断开后如何退出系统?
- 用PrintDBGridEh1打印dbgrideh怎么打印窗体上另外的一些edit.text和lablel的内容?
- 请问Excel控件
- 怎样控制AdoTable变成Active时记录指针移动到指定记录?
- 在grid控件下有一个列有很多个重复的值,如何只让第一行显示,以下的为空白?
- 兄弟们超难问题搞了好长时间没进展三方控件问题高手请进。。。。。。。。。。。。。。。。。。。。。。。。。。。。
- 如何拷贝出access的mdb的几张表?
- 别人的.db无法用delphi的desktop database打开,为什么?(不是做坏事)
- 如何在twebbrowser中可视化获取xpath,即获取鼠标所在位置的xpath
- 关于WEBBROWSER的问题
si:TStartupInfo;
pi:TProcessInformation;
hwin:HWND;
begin
FillChar(si, Sizeof(si), #0);//必须将si结构的成员初始化为0
si.cb := Sizeof(si);
si.dwFlags := STARTF_USESHOWWINDOW;
si.wShowWindow := SW_hide;
if CreateProcess(pchar('c:\windows\notepad.exe'), nil, nil, nil, false, CREATE_NEW_CONSOLE, nil, nil, si, pi) then begin
begin
//当前进程会一直等到记事本进程结束,然后才往下执行
WaitForSingleObject(pi.hProcess,INFINITE);
//////
//执行你其他的操作
/////
end;
end;或是
你自己开个线程监控readme.txt(这个方法可以试试,没实践过)
sleep(12000);//等待12秒。
redtMemo.lines.LoadFromFile('c:\re.txt');
刚然,比较完美的做法是监听文件变化,来实时载入,代码就比较多了。
还有一种比较好用的方法是不停的取该txt文件的大小,发现大小发生变化了,再载入到redtMemo中。
si:TStartupInfo;
pi:TProcessInformation;
hwin:HWND;
begin
FillChar(si, Sizeof(si), #0);//必须将si结构的成员初始化为0
si.cb := Sizeof(si);
si.dwFlags := STARTF_USESHOWWINDOW;
si.wShowWindow := SW_hide;
if CreateProcess(pchar('c:\windows\notepad.exe'), nil, nil, nil, false, CREATE_NEW_CONSOLE, nil, nil, si, pi) then begin
begin
//当前进程会一直等到记事本进程结束,然后才往下执行
WaitForSingleObject(pi.hProcess,INFINITE);
//////
//执行你其他的操作
/////
end;
end;
这样是打开一个空白的记事本,我的意思是打开已有的记事本,然后在编辑,最后保存。
proc_info : TProcessInformation;
startinfo : TStartupInfo;
Success : Boolean;
szExeName, szFileName : String;
begin
szExeName := 'c:\windows\notepad.exe';
szFileName := '.\test.txt';
FillChar(proc_info, sizeof(TProcessInformation), 0);
FillChar(startinfo, sizeof(TStartupInfo), 0);
startinfo.cb := sizeof(TStartupInfo);
Success := CreateProcess(nil,
pchar(szExeName + ' ' + szFileName),
nil,
nil,
false,
CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS,
nil,
nil,
startinfo,
proc_info);
if Success then begin
WaitForSingleObject(proc_info.hProcess,INFINITE);
Memo1.Lines.LoadFromFile(szFileName);
end;
end;