問題タブ [32bit-64bit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - Objective C (Mac OS X) で CPU アーキテクチャ (32 ビット / 64 ビット) ランタイムを検出する
私は現在、32 ビットと 64 ビットに最適化された (コンソール) アプリケーションを実行する必要があるCocoaアプリケーションを作成しています。このため、アプリケーションが実行されている CPU アーキテクチャを検出して、正しいコンソール アプリケーションを起動できるようにしたいと考えています。
要するに、アプリケーションが 64 ビット OS で実行されているかどうかを検出するにはどうすればよいですか?
編集: Mach-Oファット バイナリについては知っていますが、それは私の質問ではありませんでした。バンドルされていない別の (コンソール) アプリケーションを起動できるように、これを知る必要があります。1 つはx86用に最適化され、もう 1 つはx64用に最適化されています。
python - 大きなリストをメモリに保持する代替手段 (python)
利用可能なメモリアドレス空間を超える可能性のあるリスト(または配列、辞書....)がPythonにある場合(32ビットPython)、オプションと相対速度は何ですか?(リストをそれほど大きくしないことを除いて)リストはメモリを超える可能性がありますが、事前に知る方法はありません。75% を超え始めたら、リスト (またはとにかく新しいアイテム) をメモリに保持したくないのですが、途中でファイルベースのアプローチに変換する方法はありますか?
最適な (速度の速い) ファイル ストレージ オプションは何ですか?
数字の単純なリストを保存するだけです。N 番目の要素へのアクセスをランダムにする必要はなく、append/pop タイプの操作だけです。
windows - アプリケーションの x64 ビルドを提供する必要がありますか?
おそらく、ここで x64 プラットフォームの重要なポイントを見逃しているのですが、x64 アプリケーションは、大容量のメモリ、大きなポインター、またはその他の要求が厳しい場合にのみ (x64 OS およびハードウェア上で) x86 バージョンよりも優れたパフォーマンスを発揮するという認識でした。要因が関与していた.
ただし、標準の x86 バージョンに加えて、x64 バージョンのインストーラーを提供するいくつかの小さなアプリケーションに気付き始めました。x86 は WoW を使用して Windows x64 で問題なく動作するため、自分のアプリケーションの x64 コンパイル バージョンをリリースするメリットはありますか? 私の考えでは:
長所:
- 潜在的に高いパフォーマンス (ただし、どのような条件で)
短所:
- 作成/サポートする追加ビルド
- x86 ターゲットには存在しない x64 ターゲットの潜在的なバグ
- ベンダー/OS DLL の x64 バージョンへの依存、異なるインストール チェックリストの必要性、追加のトラブルシューティングの複雑さの導入
x64 でコンパイルされたバージョンのアプリを追加することを再考せざるを得ない理由は何ですか?
c# - Microsoft.Jet.OLEDB.4.0' プロバイダーがローカル コンピューターに登録されていません
32 ビット Windows 2008 サーバーで .NET 3.5 で開発された Windows アプリケーションを作成しました。アプリケーションを 64 ビット サーバーに展開すると、"Microsoft.Jet.OLEDB.4.0' プロバイダーがローカル コンピューターに登録されていません" というエラーが表示されます。
この問題の解決策として、プロジェクトのビルド プロパティを X86 に変更して、32 ビット モードでビルドし、32 ビット マシンでプロジェクトを再ビルドするようにしました。ただし、同じプロジェクトは他の DB ドライバー (DB2、SQL など) を使用して他のデータベースに接続します。そのため、アプリを 64 ビット OS に再度デプロイすると、「32 ビット プラットフォームに 64 ビット アセンブリをロードしようとしました」という例外がスローされます。
Microsoft.Jet.OLEDB.4.0 ドライバーを使用して、Excel (.xls) の読み取りと書き込みを行っています。
c# - C#:他のプロセスのビット数を検出するにはどうすればよいですか...現在のプロセスではありません
実行中のプロセスのビット数を知るにはどうすればよいですか。(現在のものではありません。IntPtr.sizeが役立つ場合)iswow64process()...は、それがWoW64プロセスであるかどうかのみを示しますが、32/64ビットを出力しません。
.net - reg キーへの実際のパスを取得するにはどうすればよいですか?
64ビットマシン(私はWindows 7を使用しています)で32ビットアプリを実行していて、このコードを書く場合
実際にキーを取得します
そしてそうではない
プログラム的に RegistryKey を指定すると、レジストリ内の実際のパスを特定するにはどうすればよいですか?
c# - SSIS オブジェクト モデル - 64 ビット マシンでの Excel 接続マネージャー エラー
Excel ファイル (データ フロー ソース) を読み取り、OLEDB Destination Data Flow Item を使用してデータを SQL Server に転送する SSIS パッケージがあります。このパッケージは、SSIS オブジェクト モデルを使用して .Net アプリケーションによって実行されます。アプリケーション サブフォルダー内のファイル システムに格納されているパッケージ。
パッケージは私の開発/テスト マシンの両方で正常に動作します。これらのマシンは両方とも win2k3 32 ビットです。SSIS は BIDS 32 ビット環境でビルドされました。
このアプリケーションを win2k3 x64 標準版の本番マシンにデプロイすると、エラーが発生します
OLE DB エラーが発生しました。エラー コード: 0x80040154。OLE DB レコードが利用可能です。ソース:「Microsoft OLE DB サービス コンポーネント」Hresult: 0x80040154 説明:「クラスが登録されていません」。接続マネージャー "Excel 接続マネージャー" への AcquireConnection メソッドの呼び出しが、エラー コード 0xC0202009 で失敗しました。コンポーネント "Excel ソース" (630) は検証に失敗し、エラー コード 0xC020801C を返しました。
プロジェクトの Run64BitRuntime プロパティを設定すると (設計時に)、BIDS から実行するときに問題が解決するという他の投稿を読みました。
SSIS オブジェクト モデルを使用してこのプロパティを設定するにはどうすればよいですか。
これは、パッケージを実行するコードの一部です
ありがとう
マスード
c++ - 64 ビット マシンで 32 ビット コードをコンパイルするときに、「'void*' から 'int' へのキャストで精度が失われる」をどのように処理すればよいですか?
32 ビット マシンでコンパイルして正常に動作するパッケージがあります。現在、64ビットマシンでコンパイルして次のエラーを見つけようとしています-
これらのエラーを抑制するコンパイラ フラグはありますか? または、これらのキャストを避けるためにこれらのファイルを手動で編集する必要がありますか?
.net - System.Data.SQLite.SQLiteConnection の構築時に System.BadImageFormatException が発生する原因
コードを可能な限り最小のステートメントに分解しました。
また、WinForm アプリケーションからコードを呼び出すと、次のエラーが発生します。
System.BadImageFormatException: ファイルまたはアセンブリ 'System.Data.SQLite, Version=1.0.65.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139' またはその依存関係の 1 つを読み込めませんでした。不正な形式のプログラムをロードしようとしました。ファイル名: 'System.Data.SQLite、バージョン = 1.0.65.0、カルチャ = ニュートラル、PublicKeyToken = db937bc2d44ff139'
それでも、MS Unit Test から同じコードを呼び出してもエラーは発生せず、完全なコード セットは期待どおりに機能します。