精华内容
下载资源
问答
  • 1、寻找dll文件路径 public static string FindAssemblyPath(string assemblyName) { if (assemblyName.EndsWith(".dll") == false) { assemblyName = assemblyName +=

    1、寻找dll文件的路径

    public static string FindAssemblyPath(string assemblyName)
            {
                if (assemblyName.EndsWith(".dll") == false)
                {
                    assemblyName = assemblyName += ".dll";
                }
                string file = assemblyName;
    
                if (File.Exists(file) == false)
                {
                    file = string.Format("{0}{1}", AppDomain.CurrentDomain.BaseDirectory, assemblyName);//如果有插件则判断是否在程序安装目录中
                }
                if (File.Exists(file) == false)
                {
                    file = string.Format("{0}\\{1}", Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), assemblyName);
                }
    
                return file;
            }

    2、load  dll

     public static Assembly LoadAssembly(string assemblyName)
            {
                string file = FindAssemblyPath(assemblyName);
                Assembly assembly = Assembly.LoadFrom(file);
               
                return assembly;
            }


    展开全文
  • 只能获取到 EXE文件所在路径,如果需要获取DLL路径怎么办? 有如下两种办法: 1. 从DllMain(hModule, …)中获取DLL句柄,并传入GetModuleHandle(); 但有些DLL被封装过的很难找到hModule,如: MFC的DLL, vs...

    通过GetModuleHandle(NULL, .., .. ); 只能获取到 EXE文件所在路径,如果需要获取DLL路径怎么办?

     

    有如下两种办法:

    1. 从DllMain(hModule, …)中获取DLL句柄,并传入GetModuleHandle();

    但有些DLL被封装过的很难找到hModule,如: MFC的DLL, vstest的UnitTest DLL 等。

    2.  变量 IMAGE_DOS_HEADER __ImageBase 可以转换为 hModule,传入GetModuleHandle()可得到DLL文件路径。

    GetDllModulePath
    1. // from ATL 7.0 sources
    2. #ifndef _delayimp_h
    3. extern"C"IMAGE_DOS_HEADER __ImageBase;
    4. #endif
    5.  
    6. void GetDllModulePath()
    7. {
    8.     HMODULE hModule = reinterpret_cast<HMODULE>(&__ImageBase);
    9.     TCHAR szPathBuffer[256] = { 0 };
    10.     ::GetModuleFileName(hModule, szPathBuffer, MAX_PATH);
    11. }

    转载于:https://www.cnblogs.com/herryzz/p/4735240.html

    展开全文
  • 在调用非托管的DLL文件时,.net是无法引用的,这个时候我们就需要用到DllImport来引用(using System.Runtime.InteropServices)dll文件。 DllImport引用dll的路径查找顺序是首先从当前应用程序bin目录,然后system32...

    在调用非托管的DLL文件时,.net是无法引用的,这个时候我们就需要用到DllImport来引用(using System.Runtime.InteropServices)dll文件。

    DllImport引用dll的路径查找顺序是首先从当前应用程序bin目录,然后system32文件夹下面寻找,接着是环境变量。

    一般我放在bin目录下面,但是这个时候有问题时就是dll可能会重名

    解决方法:

    在bin目录下面新建文件夹,不同的dll放入不同的文件夹中。

       然后DllImport引用时使用虚拟路径:

          [DllImport(@"E:\Chinese_Eletric_Power\Word_NEW\word_exp.20170920\word_exp.20170920\word_exp\bin\MydllA", EntryPoint = "add", CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Ansi)]//绝对路径
       // [DllImport("MydllA", EntryPoint = "add", CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Ansi)]  //相对路径
    --------------------- 
    原文链接:https://blog.csdn.net/mt122/article/details/7276754

    展开全文
  • C#引用dll文件路径问题

    千次阅读 2012-02-28 10:26:35
    在调用非托管的DLL文件时,.net是无法引用的,这个时候我们就需要用到DllImport来引用(using System.Runtime.InteropServices)dll文件。 这个时候DllImport引用dll的路径是这样需找的,首先从当前应用程序bin目录,...

    在调用非托管的DLL文件时,.net是无法引用的,这个时候我们就需要用到DllImport来引用(using System.Runtime.InteropServices)dll文件。

    这个时候DllImport引用dll的路径是这样需找的,首先从当前应用程序bin目录,然后system32文件夹下面寻找,接着是环境变量。

    一般我是在放在bin目录下面,这个时候有个问题,就是dll重名怎么办,我是这样解决的:在bin目录下面新建文件夹,不同的dll放入不同的文件夹中。

       然后DllImport引用时使用虚拟路径:

    /// <summary>
            /// 初始化播放器SDK资源。(初始化解码SDK资源)
            /// 对整个解码SDK系统的初始化,加载所需的动态库和内存预分配等操作。
            /// IMOS_XP_PLAYER_EXPORT ULONG STDCALL IMOS_XP_Init()
            /// @注解:
            /// 1、该接口函数支持Windows和Linux。
            /// </summary>
            /// <returns>
            /// 返回如下错误码:
            /// ERR_COMMON_SUCCEED 成功
            /// ERR_XP_FAIL_TO_INIT_XP 初始化播放器资源失败
            /// </returns>
            [DllImport(@".\H3c_Imos_xp_sdk_win\redist\xp_player.dll", EntryPoint = "IMOS_XP_Init", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
            public static extern UInt32 IMOS_XP_Init();

    以上全是我自己的一点心得,发布出来供大家参考

    展开全文
  • idea配置jar包依赖dll文件路径

    千次阅读 2019-03-26 14:04:20
    进入项目的edit configuration配置VM options路径
  • java程序调用c++的dll文件 ,idea 配置
  • 获取加载的dll文件路径

    千次阅读 2014-03-30 15:29:55
    #pragma once ...//完整路径 std::string GetDllFileFullPath() { char temp[MAX_PATH] = {0}; ::GetModuleFileNameA( GetCurrentModule(), temp, MAX_PATH ); return std::string(temp); }
  • 获取EXE及Dll文件路径信息

    千次阅读 2015-05-15 23:03:53
    //-------------------------------------------------------------------...// 获取EXE的路径信息 //----------------------------------------------------------------------------- // // GetModuleFileName,第一个
  • cls @echo off echo 注册控件中,请稍后... for /r %~dp0 %%i in (*.ocx *.dll) do ( echo %% register is starting... rem C:\Windows\System32\regsvr32.exe %%i /s echo %%i register is finished... ) pause
  • java调用动态库时,.dll文件路径问题

    万次阅读 2016-05-09 09:54:27
    网上说”.dll”应该放在”.class”同级目录下,但经测试,程序报错: “java.lang.UnsatisfiedLinkError: no JniDllDemo in java.library.path” 当放到java工程同级目录时,一个例子可以调用: 当我调用vtk...
  • 修改VS2010生成的lib和dll文件路径

    千次阅读 2013-10-28 17:31:54
    1.修改lib. "..\"表示工程的上级目录,$(ProjectName)表示工程名,D表示debug版本 2.修改dll(debug版本)
  •   问题:在使用VBA时,有时我们会调用外部的Dll文件,而此DLL文件会随着打包程序的发放而放在不同的目录,...然而很多时候程序并不能识别到定义的Dll文件路径。如何让程序自动识别相对路径,即为本问题所在!   解...
  • 如何在DLL中,获取DLL本身的路径以及调用DLL文件路径呢?主要通过GetModuleFileName(HMODULEhModule,LPTSTR lpFilename,DWORD nSize)函数来获取,根据hModule参数来辨别是DLL本身还是DLL的调用者。 当hModule ...
  • DLL工程获取DLL当前路径,获取DLL路径然后和配置文件拼接,读取配置文件
  • visual c++枚举进程和进程对应的文件路径和该进程调用的模块路径.zip
  • 使用VS生成的exe文件放在其他电脑上运行时,...经过谷歌才发现了一个叫做Process Explorer的程序(百度是真的辣鸡),可以找到dll文件并且连路径也有,然后用一个python脚本把这些路径下的dll复制到一个路径下就行了
  • 程序中调用LoadLibrary函数装载一个DLL文件,没有指定文件路径,那么Windows操作系统搜索DLL文件的顺序如下: MSDN中说得很明白: 1.The directory where the executable module for the current process is ...
  • DLL 获取自身的文件路径

    千次阅读 2018-12-26 12:29:48
    DLL中获取DLL自身的文件路径: //获取本DLL文件路径 TCHAR szCurrent[520] = { 0 }; HMODULE hModule = GetModuleHandle(_T("YourDllName.dll")); if (hModule) { GetModuleFileName(hModule/*NULL...
  • 遇到了一个dll文件路径设置的问题,现将我的解决过程记录下来。 我的开发环境为: Windows系统 IDEA java11 首先在IDEA的右上角找到如图的图表,然后点击Edit Configuration 按照如图设置VM options,双引号...
  • Windows文件路径选择的dll封装,需要的可以下载看看。
  • 与子程序平级的dll文件中有句话需要以dll路径为基础调用x文件实现某些功能。 问题: 如果打开子程序文件夹,双击打开子程序,一切正常 如果从主程序中使用 string pathFileName = AppDomain.CurrentDomain....
  • 获取文件路径 dll

    2021-03-08 18:24:49
    这Project将来会生成一个dll 当AclLogistyxService 这个CS文件中的类 需要获取XSD的文件路径 怎么做? [img=https://img-bbs.csdn.net/upload/202103/08/1615198921_475942.png][/img]
  • 研究delphi服务的路径,试了好几个方法 ,都没取出来,最后发现,要采用取DLL路径的方法 //一、获取Dll自身路径 //1)方法一: Function GetDllPath(sDllName:string):string; var ModuleFileName:array[0..255] of...
  • 经常会有某些特殊业务需要用到服务器端的物理路径,使用传统的System.IO.Directory.GetCurrentDirectory()方法返回的则是WINNT\System32目录,这个一般不能满足正常的业务需求,而要得到具体运行DLL所在的物理目录...
  • 1.dll文件的依赖分析可以通过 使用64位的depends.exe查看你exe依赖的...3.dll文件的搜索路径 作者:朱金灿 来源:http://blog.csdn.net/clever101/ DLL的动态链接有两种方法。一种是加载时动态链接(Load_tim...
  • char moduledir[MAX_PATH];GetModuleFileNameA(GetModuleHandleA("ppdl_BE081_BIW_seal_library.dll"),moduledir,MAX_PATH);moduledir[strlen(moduledir)-strlen("application\\ppdl_BE081_BIW_seal_library.dll...
  • Delphi的Dll中获取文件路径

    千次阅读 2017-11-15 08:52:10
    //一、获取Dll自身路径 //1)方法一: Function GetDllPath(sDllName:string):string; var ModuleFileName:array[0..255] of char; begin //{取得dll的实际位置} GetModuleFileName(GetModuleHandle...
  • dll 内获取路径

    2017-09-26 10:04:54
    利用 DllMain 函数获取 dll 文件路径 和 运行程序路径:char selfPath[MAX_PATH]; char progPath[MAX_PATH];BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fwdreason, LPVOID lpvReserved) { switch(fwdreason) ...
  • 关于指定dll搜索路径

    2019-03-07 22:22:00
    关于指定dll搜索路径 ...当部分DLL放在子文件夹下,需要指定DLL搜索路径,否则系统将找不到文件 产生原因 系统默认搜索只会在前程序目录并不包括子目录 解决方法 1,使用App.config配置实现...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,756
精华内容 3,102
关键字:

dll文件路径