有一个.DLL 程序(DCOM),是由另一个.EXE 程序来启动的,但 .DLL被启动后,需要
根据它自已当前的路径来做其它的工作,但在.DLL中却不知如何获取这个路径名.请各位大侠帮助..
THANK!!

解决方案 »

  1.   

    两种方式:
    1、在exe调用dll的时候就用一个变量把dll所在目录传进去
    2、如果该dll总跟那个exe在同一个目录,除了前面的方法,还可以把exe的Application传进去,就可以在dll里面根据Application取相应的目录,有时候说不定还用的上这个Application的句柄
      

  2.   

    可是这个DLL是个注册的程序, 这个EXE 程序运行时通DCOM连接来启动这个DLL程序的,不是通是DLL 文件名来通用的,所以EXE 也不知道DLL程序具体在什么目录下,可能的方法是通过
    注册表来获得这个DLL文件的路径,但是除了这个方法之后,不知还有其他方法吗?我的意思是
    通过DLL运行来获取它自已的路径,就象EXE 程序有个APPLICATION.EXECNAME 这个属性而获得它的相关路径信息.
      

  3.   

    就是这个
    GetModuleFileName(hMod,buf,nBufSize);通过传入不同的hmod就可以得到不同的路径,如自己的路径,调用者的路径。