Windows用に32ビットバージョンのみを展開するか、32ビットバージョンと64ビットバージョンの両方を展開する必要がありますか?


13

コンパイルされた言語で書かれたクロスプラットフォームアプリケーションがあります。

  • Linuxでは、amd64ビルドとi386ビルドの両方をユーザーが使用できるようにするのが一般的であるため、ユーザーは現在の環境に適したバージョンを選択できます。
  • Macでは、Universal Binaryを作成するのが一般的であるため、Appleコンピューターの複数のバージョンをサポートできます。または、現在のすべてのAppleコンピューターは64ビットアーキテクチャとOSを使用しているため、64ビットバージョンを提供します。

「あなたはどんなアーキテクチャですか?」と尋ねてユーザーを混乱させたくはありませんが、32ビットのみをデプロイするのは悪い考えです。

私のアイデア:

  • アプリケーションの32ビットバージョンと64ビットバージョンの両方をインストールし、実行時に選択します。(ラッパーが必要なので、クリックして起動するアプリケーション(uTorrentなど)を作成するのは困難です)。
  • User-agentWebサイトでアーキテクチャを検出し、ユーザーが適切なバージョンを自動的にダウンロードできるようにします(および「代替バージョン」へのリンクを作成します)。(Google Chromeスタイルです)
  • ユーザーに32ビットアプリケーションの使用を強制し、64ビットバージョンを「エキスパート専用」にしますか?(VLCなど)

Windowsで何をすべきですか?


あなたのアプリケーションは64ビットプロセスであることから利益を得ますか?
-CodesInChaos

はい、64ビットで高速に実行される暗号化ライブラリを使用します。
アレクサンダーシシェンコ

どれくらい速い?
ロバートハーベイ

2
また、Visual StudioにAnyCPUビルドオプションはありませんか? blogs.microsoft.co.il/sasha/2012/04/04/...
ロバート・ハーヴェイ

1
コンパイルされたものは、.NETではなく、ネイティブコード(C ++ / CLI拡張なしでC ++で記述されている)であることを言及しておく必要があります。
アレクサンダーシシェンコ

回答:


16

エンドユーザーがダウンロード時に32ビットまたは64ビットのオプションを選択する必要があることは、それほど複雑ではないと思います。ただし、ユーザーエージェント文字列を使用して提案をさらに改善できる場合。

別のオプションは、インストーラーにユーザーのプラットフォームの正しいバイナリーを検出してインストールさせることです。それはより大きなダウンロードになりますが、ユーザーはそれについて考える必要はありません。このアプローチを採用する場合、何らかの理由で特定のビルドが必要な場合に備えて、ユーザーが検出をオーバーライドする方法を提供する必要があります。


7
ユーザーが技術に詳しくない場合、あなたは彼らに大きな言葉を投げかけています(しゃれは意図していません)。
user253751

3
@GrandmasterB技術に詳しくないユーザーは、32ビットバージョンと64ビットバージョンの違いを知りませんし、どちらが必要なのかもわかりません。
フィリップ

3
@Philippこれは、多くのダウンロードサイトが行うように、「ほとんどの場合問題なく動作する」と「一部のマシンでは高速になる」などの2つの簡単なフレーズを追加することで簡単に解決できます。
5gon12eder

1
@Philipp:いいえ、まったく逆です(2番目のオプションの場合)。インストーラは自動的に適切なバージョンを選択するため、技術的な情報を表示する必要はありません。「拡張インストールオプション」ボタンがある可能性があります(ただし、ユーザーがそれを押さない限り、32ビット版または64ビット版のようなものは表示されません。
DocBrown

1
@ 5gon12eder実際、64ビットバージョンは「ほとんどの場合に正常に動作します」。Steam Surveyの統計を見てみましょう。83%以上のWindowsマシンが64ビットOSを実行していることがわかります。
アレクサンダーシシェンコ

7

まず、64ビットバージョンを使用することが有益かどうかを最初に調べます。

  • 処理されるデータセットは、動作するために64ビットアドレス空間を必要とするほど大きくなる可能性がありますか?
  • 64ビットバージョンはこれまでよりも効率的または高速ですか?
  • プログラムのビットネスに敏感な相互運用性シナリオはありますか?インターフェースを変更してビットネスに鈍感にすることはオプションではなく、ビットネスはあなたが指示するものではありませんか?

答えがすべていいえの場合、64ビットバージョンをまったく持たないことを検討してください。

64ビットを使用することで具体的な利点が得られる場合:
知っている人に不当にペナルティを課すことなく、ユーザーが快適に使用できるようにします。

  • オーバーヘッドがあまり大きくない場合は、単一のダウンロードを提供します。これにより、既定で最適なバージョンがインストールされます(64ビットで32ビットビルドを希望する専門家には、コマンドラインオプションなどで上書きできます)。
  • それ以外の場合は、両方の個別のダウンロードを提供します(64ビットを使用する潜在的な利点が十分に小さい場合は、その1つを少し隠します)。
  • 必要な部分のみを選択してダウンロードするためのダウンローダーを提供することもできますが、巨大なオプションパーツがある場合はダウンロードサイズを大幅に削減できる可能性がありますが、それをオンラインインストーラーとしてマークし、オフラインインストーラーにもリンクします。
    (ダウンロードしたものの再利用を許可することができます(おそらくそうすべきです)。少なくとも完全なオフラインインストーラーを提供しない場合は、すべてをダウンロードするオプションを含めます。)

4

今日、人々やサイトはこれを自分で処理し、ユーザーが望むどうかをユーザーに選択させる傾向があります。そのため、User-agent文字列を使用することをお勧めします。IMOは、アプリケーションとサイトをよりプロフェッショナルに見せます(関連する調整を自分で行うことができる場合は、人々はもっと好きになります)。

いくつかの専門家や別のバージョンを取得したい人は、それを入手できるので、バージョンの選択リンク/選択を配置することは良いことです。

してください。また、付箋を配置することができ、バージョンを選択(に似た1ページ、このいずれかをユーザーが確認することができますどのように説明する)OSシステムの種類を(別名右クリックComputerし、プロパティを何とか何とか...]を選択します)ので、好奇心旺盛な人はチェックして確認することができますあなたが提供するものが正しいバージョンであること。

OSシステムタイプ


3

実行可能ファイルを含まない32ビットインストーラーがあります。実行対象のプラットフォームを検出してから、サーバーから正しいバイナリをダウンロードします。


3
これを行う場合は、専門家が直接ダウンロードできる実際の最終バージョンも利用できるようにしてください。多くのプロのIT担当者は、オフラインインストールをセットアップできることを好みます(たとえば、インストールを後で正確に再現できるようにするため)。
ジュール

2
@Julesの別のユースケースは、切断されたマシンです。2015年であっても、すべてのマシンがパブリックインターネットに直接アクセスできるわけではありません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.