如何在不生成exe文件而只是编译成dll文件中取出指定文件的路径?

goldbrighten 2002-05-20 07:17:48
我在做webservice时,服务端用*.dll/soap的文件,可是用绝对路径总不太好,而用相对路径却不能象exe文件时可以通过GetCurrentDir或ExtractFileDir来取出,有人知道该怎么办吗?
...全文
74 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
black_fox 2002-05-20
  • 打赏
  • 举报
回复
你用GetCurrentDir得出的宿主的程序路径。当然不对。给你一个函数

{******************************************************************
函数: GetCurrentDirEx
功能: 获取配置文件
返回: String
入口: 无
****************************************************************** }

FUNCTION GetCurrentDirEx(): ansistring;
VAR
ModuleFileName : ARRAY[0..MAX_PATH] OF Char;
BEGIN
GetModuleFileName(HInstance, @ModuleFileName[0], MAX_PATH);
//取得当前文件名
result := IncludeTrailingBackslash(ExtractFilePath (ModuleFileName)) ;
END;
可以取得当前DLL或是应用程序的路径。
haohaisen 2002-05-20
  • 打赏
  • 举报
回复
up
短歌如风 2002-05-20
  • 打赏
  • 举报
回复
如果你用了COM对象(或Automation Object,或Remote DataModule)可以用ComServer.ServerFileName.(ComServer在ComServ单元).
很土 2002-05-20
  • 打赏
  • 举报
回复
当前路径 := ExtractFileDir(ParamStr(0)); // 得到调用 Dll 程序的路径。
westfly 2002-05-20
  • 打赏
  • 举报
回复
用GetModuleFileName

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧