如何获取程序路径[重复]

2023-11-27

可能的重复:
如何在C中找到可执行文件的位置

我正在使用 GTK+ 用 C++ 编写一个多平台应用程序,但遇到了问题。我必须获取程序路径。例如,当程序处于/home/user/program (or C:\Users\user\program.exe), 我有/home/user/ (or C:\Users\user\).

我可以以及如何做到这一点?


对于 Win32/MFC C++ 程序:

char myPath[_MAX_PATH+1];
GetModuleFileName(NULL,myPath,_MAX_PATH);

另请注意以下注释:http://msdn.microsoft.com/en-us/library/windows/desktop/ms683156%28v=vs.85%29.aspx,

本质上:WinMain 不包含 lpCmdLine 中的程序名称,main()、wmain() 和 _tmain() 应该在 argv[0] 处包含它,但是:

注意:命令行中可执行文件的名称 操作系统提供给进程的不一定是相同的 在调用进程提供给的命令行中 创建进程函数。操作系统可能会预先考虑一个完整的 未提供完整名称的可执行文件名称的限定路径 合格的路径。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取程序路径[重复] 的相关文章

随机推荐

  • 有没有类似Python导出的东西?

    我们一直使用 python 的导入机制来导入模块 变量和其他东西 但是 有什么可以作为导出的吗 喜欢 我们从模块导入东西 from abc import 那么我们可以像这样导出吗 to xyz export 或者 将a b c导出到prog
  • 如何在 Java 中表示整数区间?

    我们都知道数学中的区间 例如 4 如何在 Java 中表示这些数学区间 例如 4 和 3 之间的数字 4 3 2 3 等 检查 apache commons langIntRange 因此 如果您想检查一个数字是否在给定的间隔 范围 内 您
  • 我使用 Django 应用程序在 heroku 中收到错误 R14(超出内存配额)

    我在 Heroku 平台上为 Django 应用程序运行 3 个测功机 它工作正常 1 5 年 两周以来 我经常收到错误 R14 超出内存配额 错误 我应该怎么做才能避免这个错误 我如何监控问题 2015 01 27T10 34 01 85
  • 类变量字典未在 python 2.7 中使用 pickle.dump 保存

    我正在使用 pickle 通过转储根来保存对象图 当我加载根时 它具有所有实例变量和连接的对象节点 但是 我将所有节点保存在字典类型的类变量中 类变量在保存之前已满 但在我解封数据后它是空的 这是我正在使用的类 class Page cra
  • 如何在 swift Xcode 中以编程方式绑定/配对蓝牙 LE 设备?

    我目前正在尝试开发一个应用程序 允许用户通过单击按钮绑定到外围设备 并且将自动输入密码 是否可以使用 swift 以编程方式绑定和删除绑定 每当您尝试写入或读取 BLE 设备上的特征时 都会启动配对 但是 如果设备未设置为需要身份验证和 或
  • jar 文件文件夹中的资源列表?

    通常我从 jar 文件中读取资源 如下所示 getClassLoader getResource pTextPath pLang xml 我需要从 jar 文件中的已知文件夹中读取具有特定名称的所有资源 例如 从以下位置读取 xml 插件
  • 使用哪种 Android 数据存储技术?

    Android 文档有以下选项 但没有解释每个选项最适合什么情况 每种方法的优点和缺点是什么 例如在什么情况下 SQL 会比共享首选项更好 共享偏好设置 内部存储器 外置储存 SQLite数据库 网络连接 Android 中的不同存储选项
  • 为什么可以使用字符串文字来初始化 unsigned char 数组,但不能初始化 unsigned char 指针?

    我尝试过编译gcc Wall pedantic errors std c89下面的代码 int main unsigned char a foo unsigned char b foo unsigned char c unsigned ch
  • 大写输入字段的指令

    我想使用指令将所有输入数据转换为大写 为了实现这一目标 我创建了这个自定义指令 Directive selector appToUpperCase export class ToUpperCaseDirective constructor
  • 如何将字符串和组件作为 prop 传递?

    我可以通过这样的罚款
  • 有没有办法同时运行 2 个 NSAnimation 对象?

    我创建了2个NSAnimation用另一个视图翻转视图的对象 我想同时运行 2 个这样的动画 我无法使用NSViewAnimation 因为现在是关于对任何视图属性进行动画处理 下面是动画创作 self animation Transiti
  • 同时进行相机预览和处理

    我正在设计一个具有 OpenGL 处理管道 着色器集合 的应用程序 同时要求最终用户看到未加工的相机预览 举个例子 假设您想要向用户显示相机预览 同时计算从相机接收到的场景中红色对象的数量 但是您用来计算对象的任何着色器 例如色调过滤 等等
  • 在 PHP 中获取多维数组的交集

    初始点 我有一个多维数组 如下例所示 array array role 1 gt array 0 gt value 2 1 gt value 3 role 2 gt array 0 gt value 1 1 gt value 2 role
  • 进行动态但方形布局的简单方法

    我正在使用一个GridView显示一堆视图 这些视图本质上是LinearLayouts 我想要LinearLayouts全部都是方形的 但我也希望它们的大小是动态的 也就是说 有两列 我想要LinearLayouts根据屏幕的大小进行拉伸
  • 在 OSX 上的 QT 中设置 OpenCV

    我正在尝试设置OpenCV跟 共事QT在 OSX 10 7 5 MacbookPro 2 5 Ghz Intel Core 2 Duo 上 我在这里看到了一些相关的问题 如何在QtCreator中链接opencv并使用Qt库 and 如何在
  • 如何区分模板与非类型参数的重载?

    这是两个模板函数 仅在模板参数上有所不同 其余参数完全相同 template
  • 获取两个列表的元素总和的最快方法

    我可以使用元素进行诸如求和之类的操作Zipped功能 让我有两个列表L1 and L2如下所示 val L1 List 1 2 3 4 val L2 List 5 6 7 8 我可以通过以下方式获取元素明智总和 L1 L2 zipped m
  • Shell脚本调用sudo;如何抑制密码提示

    我正在编写一个简单的 shell 脚本来更改网络硬件的 mac 地址 其中一行是 sudo ifconfig eth0 hw ether 00 99 99 00 00 00 我的问题是 sudo 脚本提示输入密码 有什么方法可以在不提示用户
  • 在 Windows 启动时启动 wpf 应用程序

    我开发了一个 WPF 应用程序 现在我必须在 Windows 启动时启动该应用程序 为此 我编写了以下代码 我从那里得到了解决方案这个答案 它正在注册表中添加密钥 但不启动应用程序 Microsoft Win32 RegistryKey k
  • 如何获取程序路径[重复]

    这个问题在这里已经有答案了 可能的重复 如何在C中找到可执行文件的位置 我正在使用 GTK 用 C 编写一个多平台应用程序 但遇到了问题 我必须获取程序路径 例如 当程序处于 home user program or C Users use