2008年11月1日

VB 2008 Express target x86 Platform

MSDN Visual Basic Language VB Express target x86 Platform-

You can add a <PlatformTarget>x86</PlatformTarget> property in your .vbproj file.

See http://msdn2.microsoft.com/en-gb/vstudio/aa718685.aspx for more info.

Microsoft.Jet.OLEDB.4.0' 提供者並未登錄於本機電腦上

  • 作業系統版本-Vista 64位元
  • 開發工具版本-Visual Studio 2008

  • 開發環境-Windows Form
  • 有資料庫存-Access 2003

    目前是先測試是否可以將資料顯示於dataGridView上

    連線字串為"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Database1.mdb"

    SELECT指令確定無誤,因利用Query Builder內的Execute Query確實可查詢到資料

    但如果程式執行時

    就會回報Microsoft.Jet.OLEDB.4.0' 提供者並未登錄於本機電腦上

  • 在VB 2008 Express 我找不到可以設定的地方,是用第一個說法,在專案.vbproj中加入<PlatformTarget>x86</PlatformTarget>,搞定。

    SQL Server Compact 3.5 + x64

    SQL Server Compact + x64 開發,遇到下列問題。

    System.DllNotFoundException 未處理
      Message="無法載入 DLL 'sqlceme35.dll': 找不到指定的模組。 (發生例外狀況於 HRESULT: 0x8007007E)"
      Source="System.Data.SqlServerCe"
      TypeName=""
      StackTrace:
           於 System.Data.SqlServerCe.NativeMethods.SafeRelease(IntPtr& ppUnknown)
           於 System.Data.SqlServerCe.SqlCeCommand.ReleaseNativeInterfaces()
           於 System.Data.SqlServerCe.SqlCeCommand.Finalize()
      InnerException:

    Google說這是因為SQL Server Compact 3.5不支援x64,請安裝SQL Server Compact 3.5 SP1

    Microsoft SQL Server Compact 3.5 Service Pack 1 和適用於 Windows 桌上型電腦的 Synchronization Services for ADO.NET 1.0 版 Service Pack 1

    果真,見血封喉,非常有效! XD