CreateProcessでURLを開きたいんだけど
STARTUPINFO si;
PROCESS_INFORMATION pi;
CreateProcess(NULL, http://www.yahoo.co.jp/, NULL, NULL, FALSE,
NORMAL_PRIORITY_CLASS, NULL, curdir, &si, &pi);
ではだめでした。
サイトを開けるようにしたソースを教えてください。
>CreateProcess(NULL, http://www.yahoo.co.jp/, NULL, NULL, FALSE,
少なくともこのままではURLの http://以降がコメントになる。
おいおい初心者は無理しないように。そこ直しただけじゃできないってば。
少なくともどころかCreateProcessでURLを開くことの回答できなくて
悔しくて失敗につけこむようなことしかできない初心者はだまってなさい。
少なくともあなたには回答できる知識がないことがわかったので
あなたはここにレスをつけないでね。
CreateProcess じゃなくて、ShellExecute じゃぁダメなんでしょうか?
そのほうが、簡単に実現できると思いますが。
どうしても、ってことなら
1.HTMLファイル開くアプリをさがす
2.そのHTMLファイルを1でさがしたアプリで開く
って手順になるのかなぁと思いますが。
以下、思いつきサンプルです。ヒントにでもなればよいですが。
(HTMLっていじった事ないですが http://www.yahoo.co.jp/ は
http://www.yahoo.co.jp/index.html を示すであってましたっけ?)
// ここから
// 対応アプリケーションの検索 /////////////////////////////////////////
char exec_apl[1024];
FindExecutable(
http://www.yahoo.co.jp/index.html,
NULL,
exec_apl);
// 対応アプリケーションの起動 /////////////////////////////////////////
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof( STARTUPINFO ));
si.cb = sizeof( STARTUPINFO );
si.wShowWindow = SW_SHOWNORMAL;
si.dwFlags = STARTF_USESHOWWINDOW;
char lpCommandLine[128];
sprintf( lpCommandLine , %s %s,
exec_apl, http://www.yahoo.co.jp/index.html );
if(CreateProcess( NULL,lpCommandLine, NULL, NULL, FALSE, 0, NULL, NULL,
&si, &pi))
{
// 起動成功
}
// ここまで
> あなたはここにレスをつけないでね。
あなたはここにレスをつけないでね。
あ、なんか言われてる。
STARTUPINFO si;
PROCESS_INFORMATION pi;
memset(&si, 0x00, sizeof(si));
si.cb = sizeof(si);
CreateProcess(szExeFilePath, /open http://www.yahoo.co.jp/,
NULL, NULL, TRUE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi);
szExeFilePathは関連付けられたブラウザのパス。
ShellExecute使ったほうが楽だけど。
「ん」さんと似てしまいましたようです。
>FindExecutable(
> http://www.yahoo.co.jp/index.html,
> NULL,
> exec_apl);
え~っと、ローカルで実在しないと無理だと思います。
というわけで、空ファイルを作ってからそのファイルを足掛かりにするのはどうでしょう。
> え~っと、ローカルで実在しないと無理だと思います。
という事なので FindExecutable について何通りか試してみました。
1. http://www.yahoo.co.jp/index.htmlを指定→失敗
2.C:\temp\a.html(ローカルにも実在しないファイル名)を指定→失敗
3.C:\temp\home.html(ローカルに存在するファイル名)を指定→成功
という結果になりました。なるほど。
個人的には末尾の拡張子情報から対応するアプリケーションを検索して
くれるものとばかり思っていましたが、ファイルとして存在しないと
だめなんですね。