2014-12-06 84 views
0

嘗試了幾個小時的谷歌搜索,測試了幾個小時的不同解決方案,但仍然無法使其工作。C++ Shell執行一個URL

我需要一個const網址基地(例http://www.google.com) 然後,我需要來自用戶的字符串輸入(例如:激浪),然後將它們結合起來。 我試着讓這個URL成爲一個LPCWSTR,wstring,wchar_t,做一個函數來轉換它們併合並它們,但是我根本無法使它工作。

std::string baseUrl = "http://www.google.com/"; 
std::string userAdd; 
getline(std::cin, userAdd) 
ShellExecute(NULL, TEXT("open"), baseUrl + userAdd, NULL, NULL, SW_SHOWNORMAL); 
+0

你說的 '結合' 他們是什麼意思?輸出應該是「http://www.google.comMountain露水」? – 2014-12-06 17:20:08

+2

你可以先把你的代碼放在我們身上嗎? – bobtheboy 2014-12-06 17:21:35

+0

因此,基本上,你想打開一個瀏覽器頁面到google.com,然後在搜索字段填入「山露水」並顯示結果?我還沒有嘗試過,但是我理解Windows ShellExecute和一般web工作如何工作都說這比調用'ShellExecute'更復雜。 – 2014-12-06 17:36:15

回答

0

沒有從std :: string到const char *的自動轉換。

試試這個:(baseUrl + userAdd).c_str()

並嘗試使用ShellExecuteA

+0

這完美! ShellExecuteA(NULL,「open」,(baseUrl + userAdd).c_str(),NULL,NULL,SW_SHOWNORMAL); – Siver 2014-12-06 18:57:40