4

从 BPL 中,是否有可能获得自己的文件名?例如 C:\foo\bar.bpl

(动态加载和delphi7,如果重要的话)

4

2 回答 2

8

打电话GetModuleFileName。对于模块句柄,使用SysInit.HInstance. 传递零将为您提供主机 EXE 的文件名,也称为ParamStr(0).

于 2009-10-28T02:11:26.937 回答
1

GetModuleFileName 的使用示例:

function  DLLFileName : string;
begin
  SetLength(Result,MAX_PATH);
  GetModuleFileName(HInstance,PCHar(Result),MAX_PATH);
  SetLength(Result,StrLen(PChar(Result)));
end;
于 2009-10-30T17:13:53.207 回答