2014-10-30 80 views
0

目前,我在Visual Studio 2008上爲C#使用GMap.NET(1.7版本)。 它工作正常,但是,我無法再運行我的winform應用程序。GMap.NET 1.7異常拋出

爲我的表單發射InitializeComponent()時出現此錯誤。 GMap.NET.WindowsForms.GMapControl的類型初始值設定項引發異常。

如果我恢復到1.6版本,它工作正常。

有沒有人知道這種問題?

回答

0

here下載.NET版本的預編譯二進制文件。 提取軟件包並將System.Data.SQLite.dll複製到exe文件附近(\ bin \ Debug或Release)。

您可以使用「複製到輸出目錄:始終複製」將其添加到項目中。 請勿參考DLL文件!

+0

謝謝。它似乎與SQLITE版本有關。如果我設置爲x86,則運行良好。 – 2015-01-02 04:57:49

0

我最近也遇到了同樣的問題。但我的項目必須是x64解決方案。以下爲我工作,也許它也會幫助你。

如果您下載GMap.Net-Sources,您可以構建庫的「AnyCode」版本。你通常(如果你只使用WindowsForms-Component)不需要重新編譯所有東西,對我來說重新編譯GMap.Net.Core和GMap.Net.WindowsForms就足夠了。

然後,您可以引用項目中新編譯的dll。當您決定爲x64構建時,Winforms-Designer將使用x86變體,即您的程序,將使用x64版本。

您必須手動將SQLite.Interop-dll複製到%SOLUTION%/ bin/Release | Debug/x64和x86 - x64和x86是Release/Debug文件夾的子文件夾。

如果您的解決方案中有安裝項目,則必須將這些dll手動放入「應用程序文件夾」中的相同文件夾中。 System.Data.SQLite和手動添加的GMap-Dll的依賴項將由Setup-Project自動設置(可能需要執行刷新依賴項),因爲它們是GMap-Components的依賴項。