1

TFS 2010 で InvokeProcess アクティビティを使用して、ビルドされた exe で corflags アプリケーションを実行しようとしています。

C:\Builds\4\testing\Sources\BuildAssets\corflags.exe C:\Builds\4\testing\Binaries\Executable.exe /32bit+

ただし、次のメッセージが表示されます。

corflags : エラー CF001 : 書き込み用にファイルを開けませんでした

現在テスト段階にあるため、ローカル マシンで TFS ビルド エージェントを実行しています。コマンド ラインからまったく同じコマンドを実行すると、corflags アプリケーションはエラーなしで完了します。

どんなアイデアでも大歓迎です。

4

2 に答える 2

1

特定の状況には精通していませんが、いくつかの一般的なアイデアは次のとおりです。

ビルドは誰として実行されていますか? そのユーザーは出力パスへのアクセス許可を持っていますか?

もう 1 つの考慮事項は、コマンドを実行する前にビルドが完了しているかどうかです。

コマンドを本当に単純なものに変更してみてください。たとえば、「OutputFile」と入力してみてください。これでも同じ問題が発生しますか? もしそうなら、それは許可/タイミングの問題です。そうでない場合、それは特定のコマンドですが、少なくとも問題を絞り込むことができます。

于 2010-08-17T14:27:55.657 に答える
1

corflags もわかりませんが、ワークスペース内のファイル (バージョン管理からダウンロードしたファイル) を使用しています。デフォルトでは、このファイルには読み取り専用フラグがあります。

したがって、このファイルを書き込み可能にする必要がある場合:
1) バージョン管理でこのファイルが必要な場合はファイルをチェックアウトし、後で再度チェックインします (tf checkout / tf checkin)
2) ファイルが書き込み可能である場合は、バージョン管理からファイルを削除しますアプリによって作成された
3) attrib コマンドで readonly フラグを削除します。

于 2010-08-17T15:14:56.720 に答える