簡體   English   中英

應用程序通過ODBC訪問Sage Line 50數據時出錯

[英]Error with app accessing Sage Line 50 data via ODBC

我開發了一個簡單的基於C#控制台的應用程序,用於從Sage Line 50中的表中提取一些數據,並將數據上傳到Web服務器。 它在Windows 7 x64上使用ODBC連接,並且工作正常。 Sage帳戶數據位於映射的網絡驅動器上。

我開發/測試了這個軟件的PC,完全安裝了Sage Line 50 2011,帶有v17 ODBC驅動程序,並且已經應用​​了所有更新。

最終,應用程序將在我們的文件服務器上作為預定作業運行,但是當我嘗試在我們的Windows 2008 R2文件服務器(承載Sage帳戶數據的同一文件服務器)上運行代碼時,ODBC驅動程序會拋出異常, 如下:

ERROR [28000] User ID or Password invalid
ERROR [01000] The driver returned invalid (or failed to return) SQL_DRIVER_ODBC_VER: 2.00
ERROR [IM006] [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed
ERROR [01000] [Microsoft][ODBC Driver Manager] The driver doesn't support the version of ODBC behavior that the application requested (see SQLSetEnvAttr).

密碼錯誤是用詞不當,因為我知道密碼是正確的。 ODBC配置也已確認。

我只安裝了安裝光盤上的Sage ODBC驅動程序,因為我不希望在我們的服務器上安裝完整的Sage應用程序,並注意到S17DBC32.dll文件與我工作站上安裝的文件版本不同(可能)因為Sage帳戶安裝的自動更新)。 我已經嘗試將這個較新的文件復制到我們文件服務器上原始文件的頂部,並重新創建了ODBC配置,但這沒有用。

我沒有重新啟動服務器,因為將DLL文件復制到舊文件(它是生產服務器)。 服務器是否需要重新啟動才能使新DLL生效,或者是否有其他方法可以觸發此操作?

也許我正在咆哮錯誤的樹,Sage ODBC驅動程序DLL版本無關緊要? 任何幫助非常感謝。


編輯

有機會重啟服務器,新的DLL沒有任何區別。 我仍然看到同樣的錯誤。

在干凈的Windows 8安裝上有同樣的問題。 修復是安裝.net 3.5運行時。

在我的.net應用程序失敗並出現相同錯誤之后,Windows實際上建議了它(MS-Access引發的同一錯誤沒有提示安裝)。

您需要安裝32位驅動程序,如果您通過進入64位版本的控制面板訪問ODBC,您需要C:\\ Windows \\ SysWOW64 \\ odbcad32.exe

我最終試圖在服務器上安裝完全安裝Sage帳戶(yuk!),應用自動更新,現在我的應用程序正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM