2012-03-06 10 views
-1

私はプログラムの問題に直面しています。私は64ビットのWin 7 OSでVB 2008を使用しています。プログラムは、特定のWindowsプロセスのハッシュを計算し、Accessデータベース(2003年の.mdbタイプ)に格納します。

今発生した問題は、それが
プロジェクト(右クリック)として、私は変更を加えてデータベースにアクセスすることである - >プロパティ - >コンパイル - >高度なコンパイルオプション - のx86

へ>ターゲットCPUでも私はこの設定を使用して、Windows/system32フォルダにアクセスしようとすると例外が見つからないファイルをスローします。

だから私のように設定を使用しているWindows/system32フォルダにアクセスするには: プロジェクト(右クリック) - >プロパティ - >コンパイル - >高度なコンパイルオプション - >ターゲットCPUのx64

のが、上のこの設定を使用して私はデータベースにアクセスすることはできません。 プラットフォームVisual Basicプログラムの関連する問題..ヘルプが必要

+0

データベースはWindows/System32ディレクトリにありますか?何故ですか? –

+0

http://stackoverflow.com/questions/2147737/changing-a-visual-studio-c-sharp-project-from-x86-to-any-cpuも参照してくださいhttp://stackoverflow.com/questions/3640820/system32-folder-in-windows-7 これがあなたに役立つことを願っています。 –

+0

私のデータベースはWin/system32ディレクトリにありません。ハッシュ関数はsystem32ディレクトリの特定のプロセスのハッシュを計算します。 – arya

答えて

2

データベースファイルをc:\ windows \ syswow64に移動する必要があります。

もちろん、これらのディレクトリはWindowsによって所有されています。 64ビットオペレーティングシステム上のファイルシステムリダイレクションは、起こるのを待っている事故のようなものです。次に、セキュリティ権限の問題が発生します。代わりに、AppDataフォルダーを使用して、Environment.GetFolderPath()を見つけてください。

+0

私はこの問題を実際に解決しました。私のプログラムでsystem32フォルダを指す代わりに、sysnativeフォルダを使用しなければなりませんでした。現在、両方のモジュールがx86プラットフォームでうまく動作します。 thnx people – arya

+1

うーん、それほどではないが、XPは "sysnative"が何を意味しているのかわからない。 –

+0

私はWindows 7で作業していますが、この問題はWindows XPでは発生しません。 – arya

関連する問題