5

700台以上のコンピューターに配布する必要のある小さなアプリを作成しました。問題は、すべてのOC3からのインターネット接続がインストールされた任意のバージョンの.Net Frameworkを使用して、任意のバージョンのWindows(おそらくXP以上)をコンピューターで実行できることです。ダイヤルアップします。

.Netをアプ​​リケーションにバンドルすることを検討しましたが、.netインストーラーは少なくとも39 MBであり、ダイヤルアップを使用している人にとっては文字通り数時間かかります。

では、アプリケーションが必要とする特定のDLLをバンドルする方法、またはすべてをネイティブコードに変換する方法はありますか?

ありがとう-マイク

4

5 に答える 5

11

インストーラーを使用します。

Microsoftは、依存関係をチェックして(不足している場合はインストールして)、アプリケーションを展開しているコンピューターがアプリの最小フレームワーク(および依存関係)要件を満たしていることを確認できる基本的なソリューションを提供します。

より複雑なものが必要な場合は、Nullsoft Scriptable Install SystemInstallAwareInstallShieldなどを使用できます。

ただし、.NETアプリケーションを作成する場合は、ユーザーがランタイムを何らかの方法でインストールする必要があることに注意してください。インストーラーは、.NETインストーラーをアプリにバンドルする必要がないため、便利です。これにより、ユーザーはインストール時に.NETランタイムをダウンロードできます。

.NET Frameworkへの依存関係を削除する場合は、ネイティブコードにコンパイルされるものでアプリケーションを書き直す必要があります(NGENでさえ、Frameworkがインストールされていないと機能しません)。

于 2010-06-21T15:32:38.493 に答える
1

実行することは可能ですが、簡単で安価な方法ではありません。

たとえば、 http://www.remotesoft.com/を参照してください。

于 2010-06-21T15:41:13.870 に答える
0

ウィキペディアから(絶対的な権威ではありませんが、通常、この種のことについては信頼できます):

Windows Vistaには、バージョン3.0の.NETFrameworkが含まれています。

したがって、Windows7にもこれが含まれます。

したがって、心配する必要があるのは、実際にはXPクライアントだけです。

最近、Windows XPを再インストールする必要があり、SP3と、それに続くすべてのパッチをインストールするまでに、.NET3.5もインストールしました。Visual Studioもインストールしていたので、必要なバージョンの.NETがすべてのユーザーにインストールされることを100%保証することはできませんが、かなりの割合になるため、過度に心配する必要があります。

于 2010-06-21T15:40:12.157 に答える
0

必要なランタイム環境がない場合は、.Netソリューションではほとんど運が悪いことになります。インストーラーを使用すると、適切なランタイム環境がない場合でもインストールできます。

実際、フレームワークの一部をダウンロードする人が絶対に心配している場合は、それを使用しないことをお勧めします。ネイティブコードでアプリを書き直す前に、私は実際にあなたの聴衆を見て、彼らがそれを持っていない可能性がどれほどあるか、そして彼らの接続速度はどれくらいかを確認します。

ネイティブコードで記述したくない場合は、フレームワークの下位バージョンを使用することをお勧めします。市場浸透率は、4.0よりも1.1の方がはるかに大きくなります。

于 2010-06-21T15:33:24.330 に答える
0

.NETは使用しないでください。環境を制御できず、幅広い配布が必要で、30 MBのダウンロードを必要としない場合は、ネイティブコードの使用にかなり悩まされています。あなたの最善の策はC++でしょう。

あるいは、他の人が示唆しているように、Remotesoftのようなものを使ってみることができます。

于 2010-07-01T04:12:06.827 に答える