
いつもお世話になっております。
以下のC#のプログラムを
windows 7 home premium(x64)
visual studio 2008 express edtion (x86)
でビルドして実行すると
一番最後の行(da.Fill(dt);)のところで
ERROR [IM002] [Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバーが見つかりません。
という例外がでます。
//CSVファイルのあるフォルダ
string csvDir = @"D:\";
//CSVファイルの名前
string csvFileName = "test.csv";
//接続文字列
string conString = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq="
+ csvDir + ";Extensions=asc,csv,tab,txt;";
System.Data.Odbc.OdbcConnection con =
new System.Data.Odbc.OdbcConnection(conString);
string commText = "SELECT * FROM [" + csvFileName + "]";
System.Data.Odbc.OdbcDataAdapter da =
new System.Data.Odbc.OdbcDataAdapter(commText, con);
//DataTableに格納する
DataTable dt = new DataTable();
da.Fill(dt);
たしかにスタート->コントロールパネル->管理ツール->データソース(ODBC)の
ドライバーの欄を見るとMicrosoft Text Driverが入っていません。
しかし、
C:\Windows\SysWOW64\odbcad32.exe
を実行してドライバーを見ると
Microsoft Text Driver (*.txt; *.csv)
が入っているので、32ビットのほうには入っていると思っています。
下記サイトに以下のような記載があるのですが、
http://technet.microsoft.com/ja-jp/windows/gg182 …
-----------------------------------------------------------------------
データベースに接続する構成ができずにデータベースに接続できないといったことが起こります。しかし、32 ビットと 64 ビットの特性を正しく理解できれば、「%windir%\SysWOW64\odbcad32.exe」へアクセスすることで今まで通り ODBC ドライバを扱うことができます。
-----------------------------------------------------------------------
%windir%\SysWOW64\odbcad32.exeにアクセスするようにするには、
どのようなプログラムを書けばよいのでしょうか。
どなたかご教授よろしくお願いいたいます。
No.1ベストアンサー
- 回答日時:
デフォルトの設定は AnyCPU という設定になっていて、
実行環境が 64bit なら 64bit アプリケーションとして
実行環境が 32bit なら 32bit アプリケーションとして
動作するようになっているようです。
なので、
コントロールパネル->管理ツール->データソース(ODBC)
のデータソースの方を参照しているのでしょう。
Standard 以上の Edition であればプロジェクトのプロパティで
AnyCPU/x86(32bi)/x64(64bit)
などから選択できるようになっていますが、Express Edition では選択できない(該当する項目がない)ようです。
http://msdn.microsoft.com/ja-jp/library/5b4eyb0k …
ですが、Express Edition であっても .csproj ファイルの
<PropertyGroup ~ >
・・・
</PropertyGroup>
の中の
<PlatformTarget>AnyCPU</PlatformTarget>
を
<PlatformTarget>x86</PlatformTarget>
に書き換えれば(なければ追加)32bit 固定になり、64bit 環境でも 32bit アプリケーションとして動作するようになるらしいです。
tsukasa-12rさん ご返答ありがとうございます。
csprojをテキストエディタで開いて編集しようとしたところ
<PropertyGroup>...
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
というような箇所が3箇所あったのですべて
AnyCPU->x86と直してプロジェクトを開いたのですが、ビルドされなくなってしまいました。
Expressエディションはできないのかもしれません。
Standard 以上の Edition であればプロジェクトのプロパティで
AnyCPU/x86(32bi)/x64(64bit)
でできるということですので、試しては無いのですが、解決といたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- ビデオカード・サウンドカード DellのPC(xp)に、サウンドカードドライバ(内蔵)をインストールしたい。 1 2023/07/31 11:32
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access クエリ実行が急に非常に...
-
JAVAでつくったプログラムはコ...
-
VBAでEXEファイルを動かす方法...
-
gdbデバッガって?
-
Winでコマンドプロンプトを出さ...
-
スタートメニューの「ファイル...
-
コンポーネント`MSCOMM32.cox'...
-
コマンドプロンプトで外のexeや...
-
c/c++ ビルドしたにもかかわら...
-
エッセンシャルJavaを購入しま...
-
JavaScriptでコマンドプ...
-
javascriptでのファイル操作に...
-
batからexeを起動した際の戻り...
-
javaのプログラムを動作させる
-
WScript.Echo と msgbox
-
matlabのmファイルを自動で実行...
-
アプリで作成したexeファイルを...
-
LINK : fatal error LNK1104に...
-
exeファイルで実行できない
-
以下のように複数のファイルを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access クエリ実行が急に非常に...
-
JavaScriptでコマンドプ...
-
OLE又はDDEを使うVISUAL BESIC...
-
c/c++ ビルドしたにもかかわら...
-
VBAでEXEファイルを動かす方法...
-
コマンドプロンプトで外のexeや...
-
VC++から引数付きexeファイルの...
-
コンポーネント`MSCOMM32.cox'...
-
VBAで他のプログラムが起動して...
-
JARファイルをEclipseを使って...
-
ローカルのHTMLからexeファイル...
-
JAVA .jarファイルに再圧縮する...
-
以下のように複数のファイルを...
-
実行ファイルと実行モジュール...
-
64bit環境で32bitのodbc参照
-
LINK : fatal error LNK1104に...
-
VB6.0で作ったプロジェクトが起...
-
jarの開き方を教えてください。
-
ネットワーク越しのEXEファ...
-
eclipseで作ったプログラムを他...
おすすめ情報