`
pcajax
  • 浏览: 2173490 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

[转载]C#获取DLL的目录

阅读更多

当前使用的是: AppDomain.CurrentDomain.BaseDirectory


Assembly myAssembly = Assembly.GetEntryAssembly();

string path = myAssembly.Location;
DirectoryInfo dr = new DirectoryInfo(path);
path=dr.Parent; //当前目录的上一级目录


System.Environment.CurrentDirectory;
//例: c:\test
Application.ExecutablePath;(包括名称)
//例: c:\test\myapp.exe
Application.StartupPath;(不包括名称)
//例: c:\test

C#获取程序当前路径的方法

//获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。
string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)
//获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。
string str = System.Environment.CurrentDirectory;
result: X:\xxx\xxx (.exe文件所在的目录)

//获取当前 Thread 的当前应用程序域的基目录,它由程序集冲突解决程序用来探测程序集。
string str = System.AppDomain.CurrentDomain.BaseDirectory;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")

//获取和设置包含该应用程序的目录的名称。
string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;
result: X:\xxx\xxx\ (.exe文件所在的目录+"\")

//获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。
string str = System.Windows.Forms.Application.StartupPath;
result: X:\xxx\xxx (.exe文件所在的目录)

//获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。
string str = System.Windows.Forms.Application.ExecutablePath;
result: X:\xxx\xxx\xxx.exe (.exe文件所在的目录+.exe文件名)

//获取应用程序的当前工作目录(不可靠)。
string str = System.IO.Directory.GetCurrentDirectory();
result: X:\xxx\xxx (.exe文件所在的目录)
<script type="text/javascript"> if ($ != jQuery) { $ = jQuery.noConflict(); } var isLogined = false; var cb_blogId = 60046; var cb_entryId = 1648283; var cb_blogApp = "jinlongyu"; var cb_blogUserGuid = "74865a1a-358f-de11-be36-001cf0cd104b"; var cb_entryCreatedDate = '2010/1/15 9:41:00'; </script>
分享到:
评论

相关推荐

    C# 遍历Dll文件中的所有子类 Demo

    2. **获取所有类型**:加载DLL后,我们可以调用`dllAssembly.GetTypes()`来获取其中定义的所有类型。 ```csharp Type[] dllTypes = dllAssembly.GetTypes(); ``` 3. **筛选子类**:接下来,我们需要筛选出这些类型...

    C#动态获取dll文件 源码

    总的来说,C#动态获取dll文件是一项重要的编程技巧,它可以帮助开发者创建更加灵活、可扩展的软件系统。通过熟练掌握这一技术,开发者可以应对不断变化的需求,提高代码的复用性和可维护性,从而在IT行业中展现出更...

    C#动态获取DLL类库文件中的方法并调用

    本篇文章将详细探讨如何利用C#来动态获取DLL类库文件中的方法并进行调用。 首先,我们需要了解DLL(动态链接库)在Windows操作系统中的作用。DLL是一种共享代码的机制,多个应用程序可以同时使用同一DLL中的函数或...

    c#调用dll示例

    可以通过“添加引用”对话框将DLL文件引入到项目中,或者手动复制DLL文件到C#项目的输出目录(通常是bin/Debug或bin/Release)。 2. 使用DllImport特性:C#使用`DllImport`特性来声明对C++ DLL函数的调用。例如: ``...

    C#Winform动态调用C++和C#的Dll

    4. 动态加载DLL:在C#代码中,使用`ResourceManager`或`Assembly.GetManifestResourceStream`来获取嵌入的资源流,然后使用`MemoryStream`和`Assembly.Load`方法加载DLL。 ```csharp using System.IO; using System...

    C++调用C#的DLL实例程序

    本示例探讨了如何使用C++调用由C#编写的DLL动态链接库。C++与C#是两种不同的编程语言,它们有着各自的优势,但在某些情况下,可能需要结合两者的能力。下面将详细介绍这个过程,并解释相关知识点。 首先,我们要...

    C# PosDLL网口打印Demo

    在本文中,我们将深入探讨"C# PosDLL网口打印Demo"这一主题,它是一个基于C#语言的控制打印机的示例应用,适用于多种接口类型的打印机,包括串口、并口、USB以及网络接口。该应用的核心是PosDLL库,它为开发者提供了...

    C# 编写DLL 让VB调用

    这里,我们导入了C#DLL的命名空间,并在按钮点击事件中创建了`CSharpFunctions`对象,调用了`HelloWorld`方法。 **注意事项** - 确保C#和VB项目都使用相同的.NET Framework版本。 - 如果遇到跨语言互操作性问题,...

    DLL 编译 和 引用 DLL编译和引用 c# C# DLL编译和引用

    详细的介绍了DLL的编写,同时也有调用程序 ...DLL 编译 和引用 DLL 编译和引用 c# C# DLL编译 和 引用 DLL 编译 和引用 DLL 编译和引用 c# C# DLL编译 和 引用 DLL 编译 和引用 DLL 编译和引用 c# C# DLL编译 和 引用

    C#dll的学习例子

    编译成功后,DLL文件将在项目的“bin\Debug”或“bin\Release”目录下生成,名为“ClassLibrary1.dll”。 4. 使用C# DLL 要从另一个C#应用程序中使用这个DLL,首先需要将DLL添加到项目的引用中。在新项目中,右键...

    获取exe和dll文件的版本号

    本篇文章将深入探讨如何使用C#语言来获取指定文件夹及其子文件夹下所有EXE和DLL文件的版本号。 首先,我们需要了解什么是文件版本号。在Windows操作系统中,每个可执行文件(.exe和.dll)都有一个关联的资源信息,...

    delphi调用C# DLL

    ### Delphi调用C# DLL的关键知识点 #### 一、环境配置与理解.NET与Delphi交互的基本原理 在深入探讨如何让Delphi调用C#编写的DLL之前,我们需要了解几个基本概念,以及如何配置相应的开发环境。 1. **环境配置**...

    C# 获取磁盘目录结构以树形方式显示

    C# 获取磁盘目录结构以树形方式显示 C#获取你电脑磁盘的目录结构,并以树形菜单的方式显示出来,如果有子目录,会逐级递归下去,直到显示完成,程序的树形控件也比较不错,这也是大家常用的菜单显示方法,有必要学会...

    c#通过dll读取opencv里的mat图片

    在IT领域,跨语言通信是常见的需求之一,本例中我们关注的是如何使用C#通过C++编写的DLL(动态链接库)来处理OpenCV中的MAT图像数据,并最终在C#的PictureBox控件中显示出来。这个过程涉及到几个关键的技术点,我们...

    VC++ 调用 C#生成DLL的多种方法

    "VC++ 调用 C#生成DLL的多种方法" 本文将详细介绍 VC++ 调用 C# 生成 DLL 的多种方法,这些方法都是常规方法和变通方法。我们将从 COM、CLR、API 等方面来介绍这些方法,并且提供了相关的优点和缺点分析。 常规...

    最简单的C#调用dll文件(user32.dll)

    本篇文章将深入探讨如何在C#中调用dll文件,以user32.dll为例,这是一个包含许多与用户界面交互相关函数的系统库。 首先,让我们了解什么是dll(动态链接库)。DLL是一种共享库,它包含可由多个程序同时使用的代码...

    Pb调用 c#编写的DLL

    在本文中,我们将探讨如何使用PowerBuilder (PB) 调用由C#编写的DLL。C#是一种现代化、类型安全且面向对象的编程语言,它具有丰富的库和功能,而PowerBuilder则是一款广泛用于构建客户端/服务器(MIS)系统的快速应用...

    C#Dll打包进Exe

    C#Dll打包进Exe C#把 DLL 文件打包进 EXE 的技巧是指将原本需要单独存在的 DLL 文件整合到生成的 EXE 文件中,以便于程序的部署和运行。下面将详细介绍这项技术的实现步骤和原理。 首先,我们需要使用 Visual ...

    C# DLL 进程注入示例。

    本示例主要关注如何使用C#来实现DLL(动态链接库)的进程注入。下面将详细阐述这一主题。 首先,我们需要理解C#中的DLL。DLL是Windows操作系统中的一种共享库,它包含可由多个程序同时使用的函数和资源。在C#中,...

Global site tag (gtag.js) - Google Analytics