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

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

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

Re[1]: プログラムに引数が渡せない。


(過去ログ 120 を表示中)

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■72012 / inTopicNo.1)  プログラムに引数が渡せない。
  
□投稿者/ 定期便 (1回)-(2014/05/10(Sat) 08:40:32)

分類:[C#] 

C#2010Express

以下のソースで引数を渡しているのですが、
引数がわたっていない状態(0)です。

以下のソースに何か不備があるのでしょうか。

//起動側
Process.Start("WindowsFormsApplication2", "1,2,3 2,3,4");

//受け側
string[] args = Environment.GetCommandLineArgs();
MessageBox.Show(args.Length.ToString());

引用返信 編集キー/
■72013 / inTopicNo.2)  Re[1]: プログラムに引数が渡せない。
□投稿者/ とっちゃん (218回)-(2014/05/10(Sat) 10:19:14)
とっちゃん さんの Web サイト
No72012 (定期便 さん) に返信
> C#2010Express
>
> 以下のソースで引数を渡しているのですが、
> 引数がわたっていない状態(0)です。
>
> 以下のソースに何か不備があるのでしょうか。
>
> //起動側
> Process.Start("WindowsFormsApplication2", "1,2,3 2,3,4");
>
これで、受け側のアプリケーションは起動していますか?

通常一つ目の文字列は、起動したいプログラムのフルパス(C:\hogehoge\WindowsFormsApplication2.exe など)を書きます。
プログラムの格納場所(ディレクトリ、フォルダ)を指定していない場合、現在のディレクトリ(カレントディレクトリ)に
そのファイルがあるものとして動作します。
この場合、そのプログラムの実行状況等々でいまどこ?が変わってしまいます。
それこそ、VSから起動した場合とエクスプローラや、コマンドプロンプトを開いて起動した場合で動作が違う!ということになります。

テストプログラムだとあまり気にしなくても大丈夫かもしれませんが、本番ではこの辺りをちゃんとしておかないと、状況次第で
動作が変わるなどよくわからない状況に陥る場合があるのでご注意を。



> //受け側
> string[] args = Environment.GetCommandLineArgs();
> MessageBox.Show(args.Length.ToString());
>
ちなみに。。。ですが、ここは何が表示ています?
0
が表示されるだけ?


引用返信 編集キー/
■72022 / inTopicNo.3)  Re[2]: プログラムに引数が渡せない。
□投稿者/ 定期便 (2回)-(2014/05/10(Sat) 14:36:30)

>これで、受け側のアプリケーションは起動していますか?
はい、起動しております。

>ちなみに。。。ですが、ここは何が表示ています?
>0
>が表示されるだけ?
すみません、1の間違いでした。

コマンドラインで
> WindowsFormsApplication2.exe 1,2,3 2,3,4
と入力すれば起動時に引数が認識されます。
引用返信 編集キー/
■72026 / inTopicNo.4)  Re[3]: プログラムに引数が渡せない。
□投稿者/ とっちゃん (219回)-(2014/05/10(Sat) 18:14:37)
とっちゃん さんの Web サイト
No72022 (定期便 さん) に返信

> コマンドラインで
>>WindowsFormsApplication2.exe 1,2,3 2,3,4
> と入力すれば起動時に引数が認識されます。

コマンドラインで、起動側プロセスを実行した場合はどうなりますか?
やはりうまくいきませんか?

また、起動プロセスで、ファイル名部分で拡張子をちゃんとつけた場合や、フルパス指定した場合にはどうなるでしょうか?
引用返信 編集キー/
■72107 / inTopicNo.5)  Re[1]: プログラムに引数が渡せない。
□投稿者/ tocs (39回)-(2014/05/17(Sat) 01:39:05)
tocs さんの Web サイト
No72012 (定期便 さん) に返信
> 以下のソースに何か不備があるのでしょうか。

ソースに不備はありません。
私の環境ではちゃんと '3' が表示されました。(Win7, .NET4 VS2013pro)
実行環境の問題だと思われます。

引用返信 編集キー/
■72108 / inTopicNo.6)  Re[3]: プログラムに引数が渡せない。
□投稿者/ 渋木宏明 (7回)-(2014/05/17(Sat) 02:16:39)
渋木宏明 さんの Web サイト
> すみません、1の間違いでした。

空白文字が全角になってたりしませんか???
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -