6

.net 3.5アプリケーションを使用していますが、移植可能にしたいと考えています。シンプルで完璧に動作します。.EXE+.DLLを友人に送信しました。同じフォルダーで、.DLLと.ICO(使用したもの)を使用してexeを実行すると、意図したとおりに動作します。

私が欲しいのは簡単です。セットアップせずに、インストールを必要とせずに、dll、イメージ、およびそれと一緒に必要なものをすべて処理する単一のEXEファイルを作成します。(別名ポータブル)

必要に応じて.net2.0に移行することを検討するかもしれませんが、3.5のみの機能は使用していません。実際、3.5を使用している理由はよくわかりません(とにかくプログラミングは初めてです)。

友達に.rarを送信して、すべての「奇妙なファイル」から.exeを抽出して実行するように指示するのは本当に面倒なので、ヒント、リンク、またはその方法の説明が必要です。誰もがフォルダに拡張子を表示しているわけではないので、悪夢です)

(StackOverflowで検索しましたが、質問に答える質問は見つかりませんでした。Windowsマシンでのフレームワークの可用性、言語の選択、適切な回答がないという議論に終わったのは、このような質問だけでした。 。)

4

3 に答える 3

10

ILMergeを使用して、すべてのアセンブリを実行可能ファイルにマージできます。あなたのアイコンはすでに埋め込まれたリソースであると思います-または少なくともそのように作成できるはずです。

.NET 2.0をターゲットにすると、アプリケーションは.NET 2.0のみがインストールされているマシンでのみ動作するという点で、より広く移植可能になりますが、2.0と3.5の展開の比率がどのようになるかはわかりません。さらに重要なことに、それらはうまくいく可能性があります。ターゲットオーディエンスからの展開の比率と同じではありません。

于 2009-12-09T11:20:52.970 に答える
3

アプリケーションに必要な任意のデータ(アセンブリ、アイコンなど)をリソースまたは埋め込みファイルとして追加できます。

リソースエディターを使用するか、手を汚したい場合は、ソリューションエクスプローラーでプロジェクトを右クリックして[既存のアイテムを追加]を実行し、ファイルのプロパティを取得してBuildAcitonを設定するだけでファイルを追加できます。 「埋め込みリソース」へ。

アイコンなどのリソースは、DrawIcon(Properties.Resources.MyIcon)のように直接使用できます。

データファイルは、Application.GetManifestResource(および関連するメソッド)を使用してロードし、ロード元のストリームを取得できます。たとえば、アセンブリの場合、リソースのマニフェストリソースストリームから直接Assembly.Load()を使用できます。

于 2009-12-13T16:53:26.000 に答える
2

Xenocodeを使用してアプリケーションを仮想化することもできます。具体的には、Xenocode Postbuildfor.NETです

于 2009-12-10T20:08:04.390 に答える