C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 51 を表示中)
■28071 / )  Re[3]: システム情報 ツールの情報をエクスポートするには?
□投稿者/ ぽぴ王子 (410回)-(2008/11/19(Wed) 14:46:17)
ぽぴ王子 さんの Web サイト
No28063 (まぐねしうむ さん) に返信

>>これ、このままじゃコンパイルすら通らないような気がしますが、ミニマムコードとして
>>成立していますか?
> VS2005 Sp1を使っていますがコンパイル自体は通ります。

ふむふむ。VS2008(SPなし) ではコンパイル以前に注意されてしまいました。
> 無効なトークン '=' が クラス、構造体またはインターフェイスのメンバ宣言で使用されています。
だそうです。

//コマンドラインを指定
psi.Arguments = "\"" + @"%CommonProgramFiles%\Microsoft Shared\MSInfo.\msinfo32.exe" + "\"" + " /report " + strPath + @" /categories +all";

じゃないかな?と思ったのです。

> また、ご指摘の箇所を書き換えてpsi.Argumentsの中を確認したところ
> "\"%CommonProgramFiles%\\Microsoft Shared\\MSInfo.\\msinfo32.exe\" /c /report \"C:\\msinfo.log\" /categories +all"
> となっております。

そうなったのはいいのですが、それでどうなったのでしょうか。
できたと書かれていないということは、それでもダメだった、ということですか?


No28064 (.SHO さん) に返信
> ■No28060 (ぽぴ王子 さん) に返信
>
>>あと、 strPath もダブルクォートで囲む必要があるし…
>
> strPath は、別のところでパスの宣言を忘れてるだけでしょう。
> ダブルクォートで囲ったら変です。

ちゃんと書かなかったので意味が伝わらなかったかもしれませんが、 "strPath" と書け、という意味ではないですよ。
strPath にパス名が入ると思うので、Program Files のようにスペースが入ったパスになった場合を考えて、最終的に
ダブルクォートで囲んだ方がいいよね、という話です。

No28066 (まぐねしうむ さん) に返信

> ご指摘の通り、参考というか丸パクリさせていただいています。
> あくまでも、コマンドプロンプトを通して
> 情報が出力できるか確認したかったもので・・・

参考でも丸パクリでもいいですが、それならそうと書いてください。
スレ主さんの書いたコードが悪いのか、それとも参考元が悪いのかの判断がつきませんし、参考元がマズい場合はフィードバック
する必要もあるでしょう。どぼん!さんのコードを丸パクリして「俺が<del>育てた</del>書いた」と言いはるのはいかがなものか
とは思いますが。

>>これ、そもそも msinfo32 は、処理結果を /report で指定された
>>ファイルに出力するのであって、標準出力に吐き出すわけではないので
>>取れるわけないです。
>
> 最初の説明にも記載させて頂きましたがシステム情報をファイルに
> 出力するのが目的です。
> 標準出力側は、いい言葉が見つからないのですが、コマンドの実行結果?を
> 表示しようと考えています。

えーと、どぼん!さんのコードが何をしているのか理解されていますか?
標準出力に出力された内容を取り出して表示していますよね。
で、.SHO さんの指摘は「そもそも標準出力に出てないんだから、それを取り出しても意味ないんじゃね?」という話です。
# と思ったら書かれていた
返信 編集キー/


管理者用

- Child Tree -