2010-12-30 22 views
1

C#アプリケーションに埋め込んでC#アプリケーションの実行時に実行するのが理想的な既存のEXEとDLLファイル(両方ともアンマネージド)があります。コマンドラインまたはエクスプローラで通常実行されるEXEは、DLLがEXEと同じディレクトリに存在する必要があります。どのようにすることができます:.NETアプリケーションにEXEと必要なDLLを埋め込み、実行時に実行する

1)私のアプリにEXEとDLLを埋め込み、C#コードで実行しますか?
2)EXEが依存DLLファイルにアクセスできることを確認しますか?

ありがとうございます!

+2

これはSetup.exeの機能です。ユーザーやマルウェアスキャナを脅かすことのない適切な場所に確実に置かれるように、さらに多くの作業を行うことができます。 –

+0

Hansは大きなポイントを持っています。私が設計した.Netアプリケーションでは、埋め込みリソースを一時ファイルにストリーミングしてファイルからロードすることで、カラーカーソルを読み込むためのハックを使用しました。いくつかのシステムでは、エンドポイントの保護は、アプリケーションがロードされたときにうまく行きました。各顧客は、アプリケーションのエンドポイント保護に例外ルールを追加する必要がありました(サポートナイトメアを作成しました)。このデザインを検討しているときは、このことを覚えておいてください。 – pstrjds

+0

あなたの究極の目標は何ですか?あなたのアプリでEXEとDLLを運ぶだけですか? –

答えて

3

Project embedded resourcesに入れます。
プログラムが実行されてリソースから抽出されたら、既知の場所にコピーしてProcess.Start経由で実行します。

3

ファイルを埋め込みリソースとして追加します。コード内の任意の場所にエクスポートできます。実行するにはSystem.Diagnostics.Processクラスを使用します。

編集: また、あなたがファイルを削除することができるように場所名をキャッシュすることもできますときにC#アプリケーションが終了

1

が.NETZあります(あなた自身つまり後素晴らしく、クリーンアップできるようにする場合)私は一度正常に使用しました。ツールもある程度はsupports native unmanaged DLLsと思われます。

多分あなたの実際の希望する解決策のためのアイデアを与えるポインタとして役立ちます。

関連する問題