我想讓我的其他C++程序從另一個文件運行,所以我使用的是shell執行。穆代碼:在shellexecute中傳遞文件路徑作爲參數
#pragma comment(lib,"shell32.lib")
#include "windows.h"
#include<Shellapi.h>
#include<stdio.h>
#include<iostream>
using namespace std;
class spwan{
public:
//char szPath[] = "";
void run(char path[]);
};
void spwan::run(char szPath[]){
HINSTANCE ShellExecute(HWND, "open", szPath,"","",SW_SHOW);
cout<<"program executed";
}
int main()
{
spwan s;
s.run("path to the file");
}
,但我有一樣的問題有望類型說明符與「開放」,我不能夠確定使用szPath的路徑。 Anyhelp。如果你有任何問題,請聯繫我們,我們會盡快爲你解答。作爲語法錯誤:'string'
當我給這樣的路徑: - C:\ Users \ saira \ Documents \ Visual Studio 2010 \ Projects \ phase_1_solver \ Debug \ phase_1_solver.exe它給出錯誤,如:警告C4129: 「S」:無法識別的字符轉義序列警告C4129:「d」:無法識別的字符轉義序列
請告訴我們什麼是錯的。編譯器錯誤?運行時失敗?並提供確切的信息。此外,它拼寫'spawn'。無需在此處傳遞窗口句柄。通過'0'。也不需要傳遞動詞,通過'NULL'。其他兩個參數也通過'NULL'而不是''「'。 – 2013-03-11 15:38:55
這真的歸結爲如何正確調用一個函數,如果你不能這樣做,我強烈建議不要進入Windows API。 – chris 2013-03-11 15:39:11
我想知道的主要事情是如何使用路徑作爲參數。 – networks 2013-03-11 15:42:07