如何在vc++中将路径作为参数传递到第二个应用程序中

How to pass a path as a parameter into a second application in vc++?

本文关键字:参数传递 应用程序 第二个 路径 vc++      更新时间:2023-10-16

有人能回答我的问题吗?

我有一个应用程序,它正在Visual C++中开发。此应用程序调用第二个可执行文件。它传递一个文件路径作为参数。如何正确操作?我指的是双引号、空格和其他特殊字符或它们的组合。例如,文件"我的Doc.Doc"应该是"我的Doc.Doc"(带双引号(。PathQuoteSpaces对我来说不是一个解决方案。我需要长路径(比MAX_PATH长(和始终格式良好的参数。我称之为MS的应用程序,它们的标准很重要。

第页。S我知道,类似的问题有答案,但它们不能解决我的问题。

非常感谢

继续:

谢谢你的回答。

我已经发布了代码。它看起来有点像伪代码,因为对象和函数。我需要一个格式良好的参数(Script(。Windows上的拖放操作会产生这样的文字。

ShellExecute(
0,
L"open",
(GetPathQuoted(Monad::File::GetFolder(FOLDERID_System) + L"\WindowsPowerShell\v1.0\PowerShell.exe")).c_str(),
(L"-ExecutionPolicy Bypass -File " + GetPathQuoted(Script)).c_str(),
nullptr,
0);

很抱歉发布了重复的问题。我不知道,那"不能在Windows文件路径。

我非常感谢

的有用答案

如果使用UNICODE版本的PathQuoteSpaces,MAX_PATH的值为32767,这应该足够了。