能在我做的程序里关掉任何管理器里的其它的进程吗? 我想在我的程序里关掉其它人的EXE.能在我做的程序里关掉任务管理器里的其它的进程吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不是系统的进程可以关掉呀,但是系统关键进程是结束不掉的,然后就是我遇到了一个问题,如果QQ打开了,但是没有在屏幕上显示出来,也结束不掉,不知道是我QQ的问题还是操作系统的问题.. 这里有个源代码:http://www.delphifans.com/SoftView/SoftView_1939.html procedure EndProcess(AFileName: string);constPROCESS_TERMINATE = $0001;varContinueLoop: BOOL;FSnapShotHandle: THandle;FProcessEntry32: TProcessEntry32;beginFSnapShotHandle := CreateToolhelp32SnapShot(TH32CS_SNAPPROCESS, 0);FProcessEntry32.dwSize := SizeOf(FProcessEntry32);ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);while integer(ContinueLoop) <> 0 dobeginif ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =UpperCase(AFileName))or (UpperCase(FProcessEntry32.szExeFile ) =UpperCase(AFileName))) thenTerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(0),FProcessEntry32.th32ProcessID), 0);ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);end;end;procedure TForm1.Button1Click(Sender: TObject);begin EndProcess('youfilename.exe');end; 很感谢大家的支持.其实还是那个老问题.我的程序有一个导入EXCEL的功能,可是如果我导入多次,在主程序退出时就会说EXCEL.EXE的内存不可读..或者说EXCEL会弹出一个提示:"是否编写123.XSL (读/写) (取消)" .真的是搞得我快晕死了.一个关闭EXCEL的问题一直延续到现在还是没有办法解决...如果有谁能解决请告诉我一声,万分感谢. 如果是用OLE控制Excel,退出时先关闭Workbook,再退出Excel,如下:vWorkBook.Close;vWorkBook := Unassigned;vExeceApp.Quit;vExceApp := Unassigned; TO: ccrun(老妖)(www.ccrun.com) 这样的做法我试过了,不行..如果我导入一个EXCEL文件(运行EXCEL.EXE----导入完成---没有结束EXCEL.EXE)我再导入一个EXCEL文件,任务管理器里运行多一个EXCEL.EXE,然后结束一个EXCEL.EXE,这时如果再导入另外一个EXCEL文件就会报错..说:"XX文件.XLS 已经以独占的方式打开了." 公司的系统是win2000 Server(非正版)同样的代码,我在家里的电脑运行却是正常的如果我导入一个EXCEL文件(运行EXCEL.EXE----导入完成---结束EXCEL.EXE)很奇怪..我家的系统是win2000 professional(非正版)两台电脑装的OFFICE2000是同一张光盘.. 发送者:bells2000 发送时间:2005-11-7 17:31:36 删除 回复 接受者:jackie168 重要性:重要性:1 非常不重要重要性:2 不重要重要性:3 一般重要性:4 重要重要性:5 非常重要 内容 请问:TProcessEntry32;是在哪个单元里的,我找都找不到.要装什么东西后才有吗?能回复我的话请来原贴,谢谢.http://community.csdn.net/Expert/topic/4372/4372023.xml?temp=8.304995E-02 ================================================================uses TLHelp32; TO: jackie168(三箭齐发)谢了! 大家给一些界面和控件的建议 delphi clientdataset字段成自动生成了,高手请进~ 求算法 DELPHI7:为何不能导航至已处于搜索路径的单元文件? dll 怎样给FORM画边框呢? 为什么在多线程中使用Synchronize()函数? 怎样将组件的流属性变量存入*.dfm文件中???高分酬谢!! 怎样定义一个自增字段?那些数据库可以做到? Delphi6, 新功能,新问题! winexec的问题 请教大虾:MS SQL 自动+1的字段,在D7中,无法实现,如何是好?(新手分数不多,请海涵)
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: BOOL;
FSnapShotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
FSnapShotHandle := CreateToolhelp32SnapShot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
while integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(AFileName))
or (UpperCase(FProcessEntry32.szExeFile ) =
UpperCase(AFileName))) then
TerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(0),
FProcessEntry32.th32ProcessID), 0);
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
EndProcess('youfilename.exe');
end;
其实还是那个老问题.我的程序有一个导入EXCEL的功能,可是如果我导入多次,在主程序退出时就会说EXCEL.EXE的内存不可读..或者说EXCEL会弹出一个提示:"是否编写123.XSL (读/写) (取消)" .真的是搞得我快晕死了.
一个关闭EXCEL的问题一直延续到现在还是没有办法解决...如果有谁能解决请告诉我一声,万分感谢.
vWorkBook := Unassigned;vExeceApp.Quit;
vExceApp := Unassigned;
这样的做法我试过了,不行..
如果我导入一个EXCEL文件(运行EXCEL.EXE----导入完成---没有结束EXCEL.EXE)
我再导入一个EXCEL文件,任务管理器里运行多一个EXCEL.EXE,然后结束一个EXCEL.EXE,
这时如果再导入另外一个EXCEL文件就会报错..说:"XX文件.XLS 已经以独占的方式打开了."
同样的代码,
我在家里的电脑运行却是正常的
如果我导入一个EXCEL文件(运行EXCEL.EXE----导入完成---结束EXCEL.EXE)
很奇怪..
我家的系统是win2000 professional(非正版)
两台电脑装的OFFICE2000是同一张光盘..
接受者:jackie168 重要性:重要性:1 非常不重要重要性:2 不重要重要性:3 一般重要性:4 重要重要性:5 非常重要
内容 请问:TProcessEntry32;
是在哪个单元里的,
我找都找不到.
要装什么东西后才有吗?能回复我的话请来原贴,谢谢.
http://community.csdn.net/Expert/topic/4372/4372023.xml?temp=8.304995E-02
================================================================
uses TLHelp32;
谢了!