在DELPHI运行时没有提示错误,打开运行时产生的工程文件名.EXE能正常运行,但在关闭时弹出窗口说:
“工程文件名.EXE遇到问题需要关闭,我们对此引起的不便表示抱歉。如果你正处于进程当中,信息有可能丢失,关于此错误的其他信息,单击此处:得到信息是这样的:<?xml version="1.0" encoding="UTF-16"?>
<DATABASE>
<EXE NAME="工程文件名.exe" FILTER="GRABMI_FILTER_PRIVACY">
<MATCHING_FILE NAME="工程文件名.exe" SIZE="12559872" CHECKSUM="0xC198F878" MODULE_TYPE="WIN32" PE_CHECKSUM="0x0" LINKER_VERSION="0x0" LINK_DATE="06/19/1992 22:22:17" UPTO_LINK_DATE="06/19/1992 22:22:17" />
</EXE>
<EXE NAME="kernel32.dll" FILTER="GRABMI_FILTER_THISFILEONLY">
<MATCHING_FILE NAME="kernel32.dll" SIZE="1150464" CHECKSUM="0xC48B85C8" BIN_FILE_VERSION="5.1.2600.5781" BIN_PRODUCT_VERSION="5.1.2600.5781" PRODUCT_VERSION="5.1.2600.5781" FILE_DESCRIPTION="Windows NT BASE API Client DLL" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft(R) Windows(R) Operating System" FILE_VERSION="5.1.2600.5781 (xpsp_sp3_gdr.090321-1317)" ORIGINAL_FILENAME="kernel32" INTERNAL_NAME="kernel32" LEGAL_COPYRIGHT="(C) Microsoft Corporation. All rights reserved." VERFILEDATEHI="0x0" VERFILEDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x11E97E" LINKER_VERSION="0x50001" UPTO_BIN_FILE_VERSION="5.1.2600.5781" UPTO_BIN_PRODUCT_VERSION="5.1.2600.5781" LINK_DATE="03/21/2009 14:06:57" UPTO_LINK_DATE="03/21/2009 14:06:57" VER_LANGUAGE="中文(中国) [0x804]" />
</EXE>
</DATABASE>。
还有两个按钮:调试和关闭”,如果不单击调试铵钮,那工程文件名.EXE不能关闭,只有在任务管理器中结束进程才可以关闭,请问高手们这是为什么呀?怎么解决?
“工程文件名.EXE遇到问题需要关闭,我们对此引起的不便表示抱歉。如果你正处于进程当中,信息有可能丢失,关于此错误的其他信息,单击此处:得到信息是这样的:<?xml version="1.0" encoding="UTF-16"?>
<DATABASE>
<EXE NAME="工程文件名.exe" FILTER="GRABMI_FILTER_PRIVACY">
<MATCHING_FILE NAME="工程文件名.exe" SIZE="12559872" CHECKSUM="0xC198F878" MODULE_TYPE="WIN32" PE_CHECKSUM="0x0" LINKER_VERSION="0x0" LINK_DATE="06/19/1992 22:22:17" UPTO_LINK_DATE="06/19/1992 22:22:17" />
</EXE>
<EXE NAME="kernel32.dll" FILTER="GRABMI_FILTER_THISFILEONLY">
<MATCHING_FILE NAME="kernel32.dll" SIZE="1150464" CHECKSUM="0xC48B85C8" BIN_FILE_VERSION="5.1.2600.5781" BIN_PRODUCT_VERSION="5.1.2600.5781" PRODUCT_VERSION="5.1.2600.5781" FILE_DESCRIPTION="Windows NT BASE API Client DLL" COMPANY_NAME="Microsoft Corporation" PRODUCT_NAME="Microsoft(R) Windows(R) Operating System" FILE_VERSION="5.1.2600.5781 (xpsp_sp3_gdr.090321-1317)" ORIGINAL_FILENAME="kernel32" INTERNAL_NAME="kernel32" LEGAL_COPYRIGHT="(C) Microsoft Corporation. All rights reserved." VERFILEDATEHI="0x0" VERFILEDATELO="0x0" VERFILEOS="0x40004" VERFILETYPE="0x2" MODULE_TYPE="WIN32" PE_CHECKSUM="0x11E97E" LINKER_VERSION="0x50001" UPTO_BIN_FILE_VERSION="5.1.2600.5781" UPTO_BIN_PRODUCT_VERSION="5.1.2600.5781" LINK_DATE="03/21/2009 14:06:57" UPTO_LINK_DATE="03/21/2009 14:06:57" VER_LANGUAGE="中文(中国) [0x804]" />
</EXE>
</DATABASE>。
还有两个按钮:调试和关闭”,如果不单击调试铵钮,那工程文件名.EXE不能关闭,只有在任务管理器中结束进程才可以关闭,请问高手们这是为什么呀?怎么解决?
如果是代码错误,是不是在关闭按钮事件有问题呢?
全部代码太多啦,我把关闭按钮的贴出来吧
procedure TfrmMain.SpeedButton6Click(Sender: TObject);
var
h: Cardinal;
begin
h:= GetModuleHandle('wmp.dll');
// if h<>0 then
FreeLibrary(h);
h:= GetModuleHandle(nil);
// if h<>0 then
FreeLibrary(h);
frmMain.Action.Free;
close;
frmMain:= nil;
end;
把你的关闭代码写在frmMain的close事件里面,看来只能逐句调试了。