`
jgsj
  • 浏览: 1028279 次
文章分类
社区版块
存档分类
最新评论

获取程序路径的方法

 
阅读更多

转自:http://dev.firnow.com/course/3_program/c++/cppjs/20100721/476794.html

用vc写程序时经常要获取程序的路径主要有以下三种方法
1,.//是的到应用程序的当前目录,但当前目录不一定等于应用程序执行文件的所在目录,一个应用程序被启动时,当前目录是可以被任意设置的。
2,GetCurrentDirectory同./

3,GetModuleFileName()得到模块的完整路径名,例如,你载入c:/windows/system32/mfc.dll,得到模块句柄h,则你可以用GetModuleFileName()得到h模块的完整路径名
1和2获取的是路径名,而3获取的是全路径名


GetModuleFileName函数原型
DWORD GetModuleFileName(
HMODULE hModule, // handle to module。将要得到的模块的句柄。如果是当前模块,NULL
LPTSTR lpFilename, // path buffer 得到的文件名。
DWORD nSize // size of buffer 一般MAX_PATH就可以了
);
可以通过以下方法获取路径名

char szCurPath[MAX_PATH];//定义一个字符串数据,长度为MAX_PATH ,MAX_PATH是预定义的宏,一般是个数字常量如256

GetModuleFileName(NULL,szCurPath,_MAX_PATH);

char* p = szCurPath;

while(strchr(p,'//'))
{
p = strchr(p,'//');
p++;
}

*p = '/0';

CString strSwfname = szCurPath;
szCurPath就是去除文件名的路径名

分享到:
评论

相关推荐

    C#实现获取程序路径方法小结

    本文实例讲述了C#实现获取程序路径方法。分享给大家供大家参考。具体如下: 获取DLL的目录: Assembly myAssembly = Assembly.GetEntryAssembly(); string path = myAssembly.Location; DirectoryInfo dr = new ...

    C#获取程序路径的方法 中需要注意的地方

    C#获取程序路径的方法中需要注意的地方(版本1) 获取运行程序路径的方法主要有以下7种:

    通过已安装exe程序名获取程序路径

    在解决“通过已安装exe程序名获取程序路径”的问题时,我们可以传递一个NULL参数给`GetModuleFileName`,它会返回调用进程的可执行文件的路径。这样,如果我们知道程序的名称,比如"notepad.exe",但不知道其具体...

    windows系统通过端口号、pid获取程序路径

    根据端口号、pid号 获取程序名称、程序路径的信息 主要通知cmd.exe的 netstat -ano、netstat -aon |findstr 80、wmic process get name,executablepath,processid|findstr 80。三个指令调用主机底层指令的。 适合...

    C#获取程序运行路径的几种方式

    根据不同的应用场景(如WinForms应用、ASP.NET Web Forms应用或Windows服务),获取程序运行路径的方法也会有所不同。下面将详细介绍这些方法,并解释它们之间的差异及适用场景。 #### ASP.NET Web Forms 应用 在...

    获取应用程序的路径

    在编程领域,尤其是在Windows系统上使用C++进行开发时,获取应用程序的路径是一个常见的需求。这通常涉及到获取可执行...在VS2008中,由于C++11标准尚未完全支持,因此推荐使用Windows API或Boost库来获取程序路径。

    C# 获取文件路径

    在控制台应用程序中,可以使用以下方法获取文件路径: 1. `Environment.CurrentDirectory`:获取或设置当前工作目录的完全限定路径。 2. `AppDomain.CurrentDomain.BaseDirectory`:获取基目录,它由程序集冲突解决...

    c++_获取当前程序(EXE)所在的路径

    获取当前程序路径而不包含文件名可以通过以下步骤实现: ```cpp #include #include std::string getCurrentDirectoryPath() { TCHAR szFilePath[MAX_PATH + 1] = {0}; GetModuleFileName(NULL, szFilePath, ...

    VC获取当前程序文件的路径,文件名以及路径+文件名

    VC 获取当前程序文件的路径、文件名以及路径+文件名...获取当前程序文件的路径、文件名以及路径+文件名是 VC++ 中的一个常见问题,本文为大家介绍了两种经典的解决方案,同时也讨论了 CFileDialog 对话框的使用方法。

    文件的Handle获取文件路径

    标题中的“文件的Handle获取文件路径”是指在操作系统层面,通过一个已经打开的文件句柄(Handle)来获取该文件的实际存储路径。这通常在编程中用于需要知道某个已打开文件的具体位置,但只有其句柄的情况下实现。...

    labview根据程序是调试状态还是可执行程序状态,自动获取当前路径和data路径

    自己编的labview小程序,根据程序是调试状态还是可执行程序状态,自动获取当前路径和data路径

    通过PID获取进程路径

    同时,描述还强调了代码能够支持32位和64位程序路径的获取,这在多平台兼容性上具有重要意义,因为现代计算机系统常常需要处理不同架构的进程。 64位进程路径标签则提示我们,这个功能不仅限于传统的32位系统,还...

    VB 获取系统路径

    对于32位应用程序,可以使用`Environ("ProgramFiles")`来获取程序文件夹,通常是C:\Program Files。而对于64位系统上的32位程序,会返回C:\Program Files (x86)。 3. 获取用户文档文件夹: 使用`Environ("USER...

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

    ### C#中获取程序当前路径的方法 在C#编程中,获取程序的当前路径是非常常见的需求之一,这对于处理文件操作、资源定位等场景至关重要。本文将详细介绍几种在C#中获取程序当前路径的方法,并对每种方法进行深入解析...

    c#获取各种路径的方法

    #### 二、获取程序路径 1. **`this.GetType().Assembly.Location`** - **作用**:获取当前进程的完整路径,包括文件名。 - **示例代码**: ```csharp string path = this.GetType().Assembly.Location; ``` - ...

    PID获取程序路径的软件源码

    标题中的“PID获取程序路径”是指在编程中通过进程ID(PID)来获取该进程所对应的执行文件的完整路径。这个过程通常涉及到操作系统接口的调用,特别是在Windows系统中,通常使用API函数来实现。VB(Visual Basic)是...

    Visual C++源代码 76 如何获取系统服务程序路径信息

    Visual C++源代码 76 如何获取系统服务程序路径信息Visual C++源代码 76 如何获取系统服务程序路径信息Visual C++源代码 76 如何获取系统服务程序路径信息Visual C++源代码 76 如何获取系统服务程序路径信息Visual ...

    C#获取相对路径方法

    本文将详细介绍八种获取相对路径的方法,并对每种方法进行深入解析,以便开发者能够根据不同的应用场景选择最适合的方式。 ### 1. 获取和设置当前目录的完全限定路径 通过`System.Environment.CurrentDirectory`...

Global site tag (gtag.js) - Google Analytics