ocx 和 EXE 当前路径运行路径区别

获取工程运行路径源代码

string GetProgramDir()
{
    char exeFullPath[MAX_PATH]; // Full path
    string strPath = "";   

    GetModuleFileName(NULL,exeFullPath,MAX_PATH);
    strPath=(string)exeFullPath;    // Get full path of the file
    int pos = strPath.find_last_of(‘\\‘, strPath.length());
    return strPath.substr(0, pos);  // Return the directory without the file name   

} 

执行结果:
ocx:会是IE路径安装路径

EXE:exe所在文件夹

获取工程当前路径源代码

string GetCurrentDir(const string &path){
    string ls_FileName;
    LPTSTR lpBuffer;
    UINT uSize;
    HANDLE hHeap;
    uSize=(GetCurrentDirectory(0,NULL))*sizeof(TCHAR);
    hHeap=GetProcessHeap();
    lpBuffer=(LPSTR)HeapAlloc(hHeap,HEAP_ZERO_MEMORY,uSize);
    GetCurrentDirectory(uSize,lpBuffer);
        ls_FileName = (string) lpBuffer;
    ls_FileName.append(path);
    return ls_FileName;
}

执行结果:
ocx:会是用户桌面

EXE:运行该exe工程的文件夹路径

debug:(工程名AAA)

原文地址:http://blog.51cto.com/whish/2092255

时间: 2024-08-03 03:39:32

ocx 和 EXE 当前路径运行路径区别的相关文章

【C++】求当前exe的运行路径

在C++中要求出当前exe的运行路径,只需要把主函数写成以下的样子,而不是int main()就可以了: #include<iostream> using namespace std; int main(int argc,char *argv[]) { cout<<*argv; //此处就可以显示文件路径了,文件路径存放在argv[]这个数组里面 return 0; } 唯一值得注意的是int argc虽然这里没有用到,但是不能省. 运行结果如下: 版权声明:本文为博主原创文章,未

VS2013编译的exe独立运行在XP中方案

转载知乎 现在,我们深入探讨一下:<如何使用VS 2013发布一个可以在Windows XP中独立运行的可执行文件>. 这个问题是比较常见且容易造成初学者困惑的,作为曾经撞了无数次南墙的初级代码狗终于看到了自己能够回答的问题,那么就让我来简单阐述一下造成这个问题的简单原理极其简单解决方法,如有错误纰漏敬请指正. /*我们讨论的是非托管的C++程序.*/ 为了方便说明,我们新建一个简单的控制台应用程序项目,直接如图:非常简单,一个使用了C++标准库的控制台应用程序,在装有开发环境的本机顺利执行出

linux关于readlink函数获取运行路径的小程序

摘自:http://blog.csdn.net/djzhao/article/details/8178375 linux关于readlink函数获取运行路径的小程序 相关函数: stat, lstat, symlink表头文件: #include <unistd.h>定义函数:int  readlink(const  char *path,  char *buf, size_t  bufsiz);函数说明:readlink()会将参数path的符号连接内容到参数buf所指的内存空间,返回的内容

C#程序集系列06,程序集清单,EXE和DLL的区别

CLR在加载程序集的时候会查看程序集清单,程序集清单包含哪些内容呢?可执行文件和程序集有什么区别/ 程序集清单 □ 查看程序集清单 →清空F盘as文件夹中的所有内容→创建MainClass.cs文件→把MainClass.cs编译成程序集→反编译MyDll.dll,在1.txt文件中呈现 ildasm /out:1.txt MyDll.dll →打开1.txt文件 1.txt // Metadata version: v4.0.30319 .assembly extern mscorlib {

linux 下查看一个进程运行路径

在linux下查看进程大家都会想到用 ps -ef|grep XXX 可是看到的不是全路径,怎么看全路径呢? 每个进程启动之后在 /proc下面有一个于pid对应的路径 例如:ps -ef|grep python 显示:oracle    4431  4366  0 18:56 pts/2    00:00:00 python Server.py 4431就是进程号 到/proc/4431下,ls -l 会看到(需要root权限): 总用量 0 -r--r--r--    1 oracle  

C# 两个获得程序运行路径的函数

EXE文件的存储路径,不太受调用时环境变量的影响: Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); EXE文件的运行路径,如果不知双击打开的,而是用其他程序调用的,返回的不一定是EXE的存储路径: System.Windows.Forms.Application.StartupPath;

WPF获取应用程序路径方法,获取程序运行路径方法

试了好多种方法,在WPF中获取工程的路径都没能解决掉,暂时用的绝对路径"D://WPF.....",但是发布的时候出现问题了,放到别的电脑上找不到路径,又开始了地毯式搜索,终于解决了,跟遇到此类问题的朋友分享下解决办法,如下: AppDomain.CurrentDomain.BaseDirectory +文件名即可,简单吧? //获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称. string str5=Application.StartupPath; //可获得当前执行的

unicode string和ansi string的转换函数及获取程序运行路径的代码

#pragma once#include <string> namespace stds { class tool { public: std::string ws2s(const std::wstring& ws) { std::string curLocale = setlocale(LC_ALL, NULL); // curLocale = "C"; setlocale(LC_ALL, "chs"); const wchar_t* _Sou

来来来,有讲一个吐血的故事(matlab)之脚本运行路径是什么

脚本运行路径是什么,这真是太重要!! 重要1:你默认保存的路径 重要2:你访问的相对路径 先放图: 再看一幅图: 我的操作,点击左侧的文件夹,使上框的显示栏路径不一样,再点击运行,发现pwd指示的路径不一样.当然身亡.脚本的默认路径令人堪忧.难怪我总是错路径.addpath 总是出错. 解决方法: (1)按照上述的,点左边的文件夹,使上框显示的路径和你心仪的路径(你要运行的脚本路径)一致. (2)法2,run(‘你脚本的路径’) (3)附上永久修改默认路径的方法(不推荐) http://jing