我正在創建一個Windows 8商店應用程序。這個應用程序的前端(主項目)是HTML5/Javascript。我正在關注this guide by Tim Heuer以創建一個包裝SQLite調用的C#WinRT組件,其行爲如同控制器。前端通過Javascript調用該組件,更新數據並獲取演示內容。Win8 Javascript Metro應用程序,用C#WinRT組件和SQLite
所以在我的解決方案中有2個項目,javascript中的'main'和C#中的'db'。我設法根據指南獲取SQLite的工作。我有這種結構的原因是我試圖將應用程序從iOS移植到Win8。 '控制器'部分是一個獨立的組件,它已經移植到C#中。
但是,有一個警告。由於this known problem,我必須從'db'項目中刪除對C++ Runtime v11的引用以使其可編譯。雖然它在開發機器上運行良好。
然後我得到了這個測試機器(準確地說是samsung xe700t1a,英特爾i5),我發現當在這臺測試機器上調試遠程時,Visual Studio不會部署SQLite3。結果,我的SQLite調用失敗,錯誤:"Unable to load DLL 'sqlite3': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"
。
根據我之前提到的指南,通過WinRT擴展使得SQLite成爲可用,是爲了使部署自動化。
我想知道爲什麼會發生這種情況,以及如何使其正確?我也想知道在這個結構中是否有Windows應用商店的認證問題?
我也遇到了this post和this post暗示目前在WinRT組件中不能使用SQLite。但現在改變已經太遲了,如果沒有混合結構,這個項目將不可能實現。
另一方面,因爲訪問'C:\ Program Files \ WindowsApps'文件夾時存在限制,所以在遠程調試時甚至不知道我的應用程序部署了什麼。 –
您可以以管理員身份打開命令提示符並手動導航到WindowsApps文件夾。如果您執行Dir或使用文件資源管理器,您將不會看到它列出。 –
@JimWooley,謝謝。但它看起來並不像RemoteDebugger在那裏部署我的應用程序。我無法找到相應的文件夾。 –