Answered by:
Why am I having a problem using sqlite on my tablet?

Question
-
I'm using the windows 8.1 build for sqlite. My application works fine on the desktop, but when I run it on the tablet (installed using Remote debugger) it crashes, with this exception:
System.DllNotFoundException was unhandled by user code
HResult=-2146233052
Message=Unable to load DLL 'sqlite3': The specified module could not be found. (Exception from HRESULT: 0x8007007E)In the event viewer on my tablet I get this message:
Error status code 0xC0000135 returned when C:\Users\Stefan\AppxLayouts\PocketBibleBibleStudyAppVS.Release_x86.stefan\WinRtPocketBible.exe attempted to load dependency MSVCR120.dll.The 12.0 Visual C++ runtime packages is referenced in the same project as references sqlite.
I have confirmed that the sqlite3.dll that is installed on the referenced folder is in fact the correct x86 version, not x64.
Why would I get this? What can I do about?
Stefan
Tuesday, July 2, 2013 2:55 AM
Answers
-
We have identified the issue with the pre-release package for SQLite. In assistance with the SQLite team we re-build the pre-release SDK and put it on the download site: http://www.sqlite.org/download.html
Because this is the same version as the other, you will need to uninstall the previous SQLite for Windows Runtime 8.1 SDK and then re-install this. No other changes to your app would be required.
Apologies for this and thank you for bringing this to our and SQLite attention. We've modified the build process to be correct for the final release.
Tim Heuer | Program Manager, XAML | http://timheuer.com/blog | @timheuer
(if my post has answered your question, please consider using the 'mark as answer' feature in the forums to help others)- Proposed as answer by Tim HeuerMicrosoft employee Friday, July 12, 2013 9:19 PM
- Marked as answer by StefanOlson Saturday, July 13, 2013 8:28 PM
Friday, July 12, 2013 9:19 PM
All replies
-
Hi Stefan,
I believe you need to get an update of the SQLite SDK that works with WinRT 8.1. Looking at the SQLite website, it appears they have released an interim update that may get you back up and running.
Sincerely,
Ed Dore
- Proposed as answer by Ed DoreMicrosoft employee, Moderator Tuesday, July 2, 2013 5:41 AM
- Unproposed as answer by StefanOlson Tuesday, July 2, 2013 5:44 AM
Tuesday, July 2, 2013 5:41 AMModerator -
I am using that release. It works perfectly fine running under windows 8.1 on my desktop.
Also, it is using the visual studio 2013 crt because it is looking for MSVCR120.dll, thus it is definitely the correct DLL.
Thanks,
Stefan
Tuesday, July 2, 2013 5:43 AM -
@StefanOlson - is this a remote deploy/debug scenario? This sounds like the right version of the CRT is not on the target device. If you are using DEBUG build I would suspect this. Can you switch to retail and confirm this works?
Tim Heuer | Program Manager, XAML | http://timheuer.com/blog | @timheuer
(if my post has answered your question, please consider using the 'mark as answer' feature in the forums to help others)Tuesday, July 2, 2013 3:21 PM -
Tim,
Yes, this is remote debugging/deploying. That is exactly what it sounds like, however, firstly it works fine with windows 8, the problem is specific to 8.1 so I've been able to remote debug on this tablet without installing anything before. Secondly, that is the release build. Here is the event viewer message I get with the debug build:
Error status code 0xC0000135 returned when C:\Users\Stefan\AppxLayouts\PocketBibleBibleStudyAppVS.Debug_x86.stefan\WinRtPocketBible.exe attempted to load dependency MSVCR120D.dll.Stefan
Tuesday, July 2, 2013 4:28 PM -
@Stefan - yep the "D" in that DLL points to this being the problem. What you need to do is get the DEBUG VCLibs framework package on the remote machine. Here is one thing I would try, create a quick C++ project (any one of the templates) and create a package for it (DEBUG). Then copy those bits to your remote device and run the powershell installer. This *should* install the VCLibs debug version and then I'd be curious if the remote debug for your other app is fine now.
Tim Heuer | Program Manager, XAML | http://timheuer.com/blog | @timheuer
(if my post has answered your question, please consider using the 'mark as answer' feature in the forums to help others)Tuesday, July 2, 2013 4:33 PM -
Tim,
Ok, will try that. However the original message that I wrote I was using the release version the same problem applies with the release version at the moment.
Tuesday, July 2, 2013 4:35 PM -
Have just tried installing my application package, and that fails in the same way, despite saying that it has installed the correct dependencies. I will now try and create a C++ one.
PS C:\installers\pb> .\Add-AppDevPackage.ps1
Found package: C:\installers\pb\WinRtPocketBible_2.2.3.268_x86.appxInstalling app...
Found dependency package(s):
C:\installers\pb\Dependencies\x86\Microsoft.VCLibs.x86.12.00.appxSuccess: Your app was successfully installed.
Tuesday, July 2, 2013 7:20 PM -
Have now created a C++ app (release build) and installed it, it works fine. Running the release build of PocketBible still has the same problem. Have also tested with debug builds of both and the problem still occurs, PocketBible crashes as soon as it tries to load sqlite3.dll. :-(Tuesday, July 2, 2013 7:30 PM
-
@Stefan - you are saying when you build a RELEASE version of your app it crashes still?! That shouldn't be the case. What is the target device? Surface RT?
Tim Heuer | Program Manager, XAML | http://timheuer.com/blog | @timheuer
(if my post has answered your question, please consider using the 'mark as answer' feature in the forums to help others)Tuesday, July 2, 2013 8:16 PM -
It crashes even in release mode with this message in the event viewer, even when installing using the appx package (folder name is different in that case though):
Error status code 0xC0000135 returned when C:\Users\Stefan\AppxLayouts\PocketBibleBibleStudyAppVS.Release_x86.stefan\WinRtPocketBible.exe attempted to load dependency MSVCR120.dll.The device is an Acer Iconia W510 (Atom). The windows 8 remote debugger continues to work fine from visual studio 2012.
The program works fine and does not have this problem on my desktop PC.
Tuesday, July 2, 2013 8:19 PM -
I have now built a package and sent it to some customers. The first customer to report back is using Windows 8.1 on x86 and has the same problem, so it is not an issue is specific to my device. This customer has installed previous versions running on windows 8 perfectly fine.
Would be good to get this sorted so I can do some testing to make sure that everything works using touch.
Thanks,
StefanThursday, July 4, 2013 12:34 PM -
I have now confirmed from other customers that this problem also occurs on windows RT. I have created an application that duplicates the problem:
https://skydrive.live.com/redir?resid=E862238D79090552!446&authkey=!AAzi44lEA5PiHiMMonday, July 8, 2013 5:31 AM -
@Stefan - we've identified the issue and are working with SQLite on getting an updated beta package out there.
Tim Heuer | Program Manager, XAML | http://timheuer.com/blog | @timheuer
(if my post has answered your question, please consider using the 'mark as answer' feature in the forums to help others)Tuesday, July 9, 2013 10:17 PM -
We have identified the issue with the pre-release package for SQLite. In assistance with the SQLite team we re-build the pre-release SDK and put it on the download site: http://www.sqlite.org/download.html
Because this is the same version as the other, you will need to uninstall the previous SQLite for Windows Runtime 8.1 SDK and then re-install this. No other changes to your app would be required.
Apologies for this and thank you for bringing this to our and SQLite attention. We've modified the build process to be correct for the final release.
Tim Heuer | Program Manager, XAML | http://timheuer.com/blog | @timheuer
(if my post has answered your question, please consider using the 'mark as answer' feature in the forums to help others)- Proposed as answer by Tim HeuerMicrosoft employee Friday, July 12, 2013 9:19 PM
- Marked as answer by StefanOlson Saturday, July 13, 2013 8:28 PM
Friday, July 12, 2013 9:19 PM