【发布时间】:2023-03-11 02:00:01
【问题描述】:
我有几个命令行应用程序,它们最终都会调用 com 对象。与其给这些 com 对象增加新的接口,不如让它们访问从命令行传递的参数?
编辑:我如何调用 GetModuleFileName 来获取文件名。我想知道是否有等效的方法来获取参数。
【问题讨论】:
标签: c++ windows arguments unmanaged
我有几个命令行应用程序,它们最终都会调用 com 对象。与其给这些 com 对象增加新的接口,不如让它们访问从命令行传递的参数?
编辑:我如何调用 GetModuleFileName 来获取文件名。我想知道是否有等效的方法来获取参数。
【问题讨论】:
标签: c++ windows arguments unmanaged
您正在寻找的 Win32 API 是:GetCommandLine。
您的 COM 对象可能需要在您的进程中运行。
要将命令行转换为 argv 样式的字符串数组,请调用 CommandLineToArgvW 函数。
【讨论】:
【讨论】:
在 Windows 中,您可以通过 WIN32 函数 (GetCommandLine) 调用获取命令行,但不会将其解析为 argc/argv 之类的数组。如果 COM 对象使用 MFC,您可以从 CWinApp 对象获取命令行参数。否则,没有简单的方法来做到这一点。
【讨论】: