2013-03-05 24 views
1

這是我的舊代碼。如何在C#應用程序中使用DSN文件?

conn = new System.Data.Odbc.OdbcConnection(); 
conn.ConnectionString = @"DSN=dBase Files"; 

它拋出一個錯誤:(我想我的老代碼仍然可能會在32臺機器上工作,但我在64現在)

"[Error] [IM002] [Microsoft] [ODBC Driver Manager] Data source name not found and no default driver specified" 

我所有的搜索告訴我使用SYSWOW64/odbcad32 .exe創建一個.DSN文件。現在我創建了DSN文件,我如何修改這一行,conn.ConnectionString = @"DSN=dBase Files";,指向我保存在磁盤上的.DSN文件?

+0

我知道在一個web應用程序中,你可以在'Web.Config'下的''下執行。你想在Windows窗體應用程序上? – Greg 2013-03-05 22:50:35

+0

@Greg我正在嘗試使用WPF應用程序來執行此操作 – 0x4f3759df 2013-03-05 22:52:24

+0

您是否可以使用ODBC驅動程序信息修改此註冊表項? 'HKLM \ Software \ ODBC \ ODBC.INI \ ODBC Data Sources'驅動程序應該包含這些鍵值。 – Greg 2013-03-05 22:53:38

回答

4

據我回憶,我不得不在ODBC管理工具下的ODBC數據源中設置DSN,但那是在本世紀之交。

這可能幫助:FILEDSN=c:\myDsnFile.dsn;Uid=myUsername;Pwd=;

因此,像:

conn = new System.Data.Odbc.OdbcConnection(); 
conn.ConnectionString = @"FILEDSN=C:\path\to\dsn\file\here.dsn;Uid=myUsername;Pwd=;"; 

here

+0

我其實並不需要這個用戶名,密碼的東西來讓它工作。 – 0x4f3759df 2013-03-07 16:23:43

+0

是因爲認證信息已經在文件DSN中或者因爲它不是必需的? – 2013-03-08 11:15:59

相關問題