4

最近、Windows XP から Windows 7 に移行しました。PDA 用の dbf ファイルを作成しようとする C# のアプリケーションの一部が、エラー メッセージ "The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on.ローカルマシン。」

hereのようにexeを32ビットとしてビルドするように指示している多くのフォーラムを見つけました。

私の質問番号 1) 64 ビット OS マシンで dbf にアクセスするための他のドライバーはありますか? (Excelにアクセスしてdbにアクセスするためのものがあることは知っています)。dbf について何かありますか?

質問番号 2。私のタイトルと同じです。32ビットに変換することで、64ビットの利点を十分に活用できていない気がします。では、この回避策によって何を失うのでしょうか?

前もって感謝します。

4

5 に答える 5

2

2 番目の質問への回答として、大量のデータをメモリに保存する必要がない限り、64 ビットはそれほど役に立ちません。ほとんどの開発者は依然として x86 (32 ビット) をターゲットにしています。そうは言っも、64 ビット システムの方がうまく動作する場合もありますが、前述したように、それは主に消費したいメモリの量に関係しています。

于 2011-02-23T15:17:00.280 に答える
2

最初の質問への回答として、MS エンジンを介して 32 ビット ソフトウェアを使用してデータベースにアクセスしようとする 64 ビット マシンには、Data Connectivity Components をインストールする必要があります。

http://www.microsoft.com/downloads/en/details.aspx?familyid=7554f536-8c28-4598-9b72-ef94e038c891&displaylang=en

于 2011-02-23T15:19:59.513 に答える
2

x86 を使用すると、メモリが節約され、エディット コンティニュが使いやすくなります。マイナス面では、アドレス空間を制限しています。1) VS 64 ビットを作成しないこと、および 2) VS 32 ビットで作成された新しいアプリのデフォルトを作成することのいくつかの根拠を参照してください。

1: http://blogs.msdn.com/b/ricom/archive/2009/06/10/visual-studio-why-is-there-no-64-bit-version.aspx

2: http://blogs.msdn.com/b/rmbyers/archive/2009/06/8/anycpu-exes-are-usually-more-trouble-then-they-re-worth.aspx

プラス: http://blogs.msdn.com/b/maoni/archive/2007/05/15/64-bit-vs-32-bit.aspx

于 2011-02-23T15:23:34.413 に答える
2

x64 プロセスは、より多くの命令とレジスタにアクセスできます。x86 対任意の CPU 用にコンパイルすると、JIT コンパイラがそれらの命令とレジスタ (およびより多くのメモリ) を使用することができなくなり、通常は (わずかな) パフォーマンスの低下が生じます。しかし実際には、100 回中 99 回のユーザーは気付かないでしょう。

彼らが気付くのは、dbf ファイル用の 64 ビット OLE ドライバがないため、Any CPU 用にコンパイルするとプログラムが機能しないということです。この形式はもはやあまり使用されていないため、Microsoft が 64 ビット バージョンを作成しておらず、ビルドする計画がないことを知っても驚かないでしょう。

于 2011-02-23T15:23:40.390 に答える
1

1番の質問にはお答えできませんが、2番については「場合による」と思います。重い数学演算 (暗号化など) は、適切に実装されていれば、64 ビット システムで大幅な速度向上を実現できます。また、より多くのメモリをアドレス指定できるようになります (ただし、大量のメモリを使用していない場合は、おそらく問題にはなりません)。

他のケースでは、32 ビット アプリケーションとして構築する場合と比較して、64 ビット アプリケーションではわずかな速度低下が実際に見られました (おそらく、より大きなアドレスに関連するオーバーヘッドが原因であると思われます)。

于 2011-02-23T15:23:46.737 に答える