1

C# プログラムに埋め込みリソースとして持っているファイルがあります。このリソースを読み取り、System.Diagnostics.Process.Start() コマンドを介して外部の exe に渡す必要があります。外部 exe は、OS 内のその場所へのリソース パスを必要とします。それをストリームなどとして渡す方法はありますか?または、それを一時ファイルに書き込んでから、ファイル パスを外部の exe に送信する必要がありますか?

埋め込みリソースは、証明書ファイルの外部 exe であり、signtool です。機密性の高い性質のため、リソースをシステムに書き込まないようにしたいと思います。

これは可能ですか?

4

3 に答える 3

1

いいえ、すぐにはできません。呼び出す EXE は別の方法で作成する必要があり、とにかく、このようにあるプロセスから別のプロセスにハンドルを渡す簡単な方法はありません。

于 2012-02-06T17:51:40.197 に答える
0

暗号化された個人情報交換(PFX)形式で証明書をファイルに書き込んでから、ファイルパスとパスワードをコマンドラインでsigntoolに渡すことができます。

于 2012-02-06T18:37:31.880 に答える
0

|ツールによっては、CMD の「パイプ」( ) オプションと同様に、ファイルを入力 (テキストのみ) として渡すことができる場合があります。このアプローチは、データのソースとして標準入力を使用するツール (つまり、findstrWindows に組み込まれているツールを含むほとんどの検索および置換ツール) でのみ可能です。

そうでなければ - いいえ。

アプリケーション (埋め込みリソース) の一部として証明書がある場合、それは既にディスク上に存在することに注意してください。他のツールで使用できるように、一時的に個別に保存することに大きな違いはありません。それらを本当に保護する必要がある場合は、署名を処理する安全な場所に別のマシンを用意してください。

于 2012-02-06T18:25:11.207 に答える