0

AppDomain.ExecuteAssembly()を使用してアセンブリ(.NET 3.5、Windowsフォームアプリケーション)を実行しようとしています。AppDomain.ExecuteAssemblyにコマンドライン引数を渡すにはどうすればよいですか?

私がこれを行う必要があるのは、アプリケーションのベースディレクトリとプロービングパスを変更できるようにすることです(プロービング/依存パスはアプリケーションの親ディレクトリフォルダなのでapp.configは機能しません)。私の知る限り)

しかし、私はコマンドライン引数を渡すことはできません。

私はこのようなメソッドを実行しようとしている:

myAppDomain.ExecuteAssembly("c:\folder\application\application.exe", Nothing, 
    New String() { "argument 1", "argument 2", "argument 3" }) 

しかし、私のアプリケーションは、引数を受け取りません。

私は間違っていますか?

+0

あなたはapplication.exeから該当するコードを表示することができます? – CodeNaked

+0

もちろん、私は文字通り、For Each s StringをMy.Application.CommandLineArgs、Console.WriteLine(...)の文字列として使っています。(あなたはアイデアを得ます) – SofaKng

+0

あなたは同じアプリケーションを起動していますか? "シングルインスタンス"アプリケーション? – CodeNaked

答えて

0

小文字のa .NET 3.5 solutionは、正常に実行しようとしているものを正確に実行する2つの実行可能ファイルがあり、動作します。私はあなたと何が違うのか分かりません。あなたが代わりにEnvironment.GetCommandLineArgsを(使用しての静的な無効メイン(文字列[] args)関数に渡されるコマンドライン引数を解析する必要があります

関連する問題