プロジェクト
このプロジェクトは、テスト自動化に使用される大規模なC#プロジェクトです。この目的のために、すべての結果をテスト環境にロードできるファイルに保存するツールであるjava-toolを使用する必要があります。
インターフェース
C ++でビルドされたtest-environmentのベンダーからDLLを入手しました。このdllは、Java環境をロードし、jarファイルをロードします。
現在の状況
Java環境は正常にロードされ、次のメソッドを使用してC#で設定された環境変数で構成されます。
String java = GetJavaInstallationPath();
Environment.SetEnvironmentVariable("PATH", String.Format("{0};{1}", Environment.GetEnvironmentVariable("PATH"), Path.Combine(java, @"bin\client")), EnvironmentVariableTarget.Process);
この後、次のコードを使用してJavaクラスへのパスを設定します。
Environment.SetEnvironmentVariable("ITEPCLASSPATH",
String.Format("{0};{1}",
Path.Combine(iTepPath, "itep.jar"),
Path.Combine(iTepPath, "libs\\itorx.jar")), EnvironmentVariableTarget.Process);
これは実際に機能するはずですが、使用すると正しい値が表示されますEnvironment.GetEnvironmentVariable("ITEPCLASSPATH")
が、C++-DLLは機能していないことを示しています。
外部のbatファイルを使用してクラスパスを設定すると、機能します。さらにいくつかの事実:
- アプリケーションはbatファイルによって開始されます
- パスは、生成されたdllのパスからコピーされます
- 私は何もコメントしないので、パスはまだC#によって設定されています
javaはC#で設定した環境変数にアクセスしていないようですが、batファイルで設定したことを認識しています。
本当にC#で変数を設定する必要がありますが、これをアーカイブするにはどうすればよいですか?