yy0931 / sqlite3-editor

https://marketplace.visualstudio.com/items?itemName=yy0931.vscode-sqlite3-editor
GNU General Public License v3.0
838 stars 6 forks source link

STATUS_ENTRYPOINT_NOT_FOUND #50

Closed SevaShpun closed 6 months ago

SevaShpun commented 7 months ago

Hello. I tried to open the database and it gave me the following error.

I installed https://aka.ms/vs/17/release/vc_redist.x64.exe, but it didn’t help.

What could be the problem ?

STATUS_ENTRYPOINT_NOT_FOUND: Failed to load VCRuntime. Please try to reinstall it by downloading and running https://aka.ms/vs/17/release/vc_redist.x64.exe (other versions can be found at https://learn.microsoft.com/en-us/cpp/ windows/latest-supported-vc-redist). If this doesn't work, please report an issue on GitHub. (Google translation)

Screenshot: screen

VSCODE version: 2024-03-10_183309

OS: Windows 7(x64)

yy0931 commented 7 months ago

Thanks for reporting it.

It appears that the issue is not on your environment, but the extension's executable file is incompatible with Windows 7. I have not tested the extension on Windows 7 because VSCode dropped support for it.

You may be able to resolve the error by building the binary on your environment (follow https://marketplace.visualstudio.com/items?itemName=yy0931.vscode-sqlite3-editor#using-user-compiled-sqlite without LIBSQLITE3_FLAGS='-DSQLITE_OMIT_DEPRECATED'). However, since fixing it may be difficult and the number of Windows 7 users is likely low, I am considering dropping support for Windows 7. There are many alternative applications you can use, such as DBeaver or DBGate. (edit: see the next comment)

yy0931 commented 7 months ago

I've found a likely cause; the panic=abort setting that I added in commit https://github.com/yy0931/sqlite3-editor/commit/61913649a4c27e8390d2fd2c672e1ee6ec6250d8#diff-2e9d962a08321605940b5a657135052fbcef87b5e360662bb527c96d9a615542R40 is not supported on Windows 7 according to https://users.rust-lang.org/t/windows-unwind-safety-with-abort-on-panic/85587. I'll revert that change.

yy0931 commented 7 months ago

Resolved in version 1.0.182.

SevaShpun commented 6 months ago

Updated to version 1.0.182. Restarted VSCODE. When opening the database, an error appears in the lower right corner of the screen.

I clicked "Send error report", the window is closed and nothing happens. The same goes for the "Close" button. The window closes and nothing happens :(

screen1

yy0931 commented 6 months ago

It seems the newer versions of the Rust compiler has added a dependency on Windows API that does not exist on Windows 7 (namely ProcessPrng). I think that is this commit made 2 weeks ago. https://github.com/rust-lang/rust/commit/08caefbb103d1809113172d16eaf8f66c2edc2f1 I could run the old build of version 173 on Windows 7, but rebuilding the same commit now produces a binary that raises an error saying "ProcessPrng could not be located in bcryptprimitives.dll," even though Cargo.lock is committed to the repository.

SevaShpun commented 6 months ago

Version 173 works!

Does this mean that I can no longer update to a newer version in the future? Will I only use version 173?

yy0931 commented 6 months ago

I believe we can fix the issue by setting a compilation option to make target_vendor = "win7" true. I'll try it later.

SevaShpun commented 6 months ago

I believe we can fix the issue by setting a compilation option to make target_vendor = "win7" true. I'll try it later.

Thank you. I'll be waiting for this update. :+1:

yy0931 commented 6 months ago

I've modified the compilation flags in https://github.com/yy0931/sqlite3-editor/commit/8054166a02ff3df557eb106618740dcd05895a8c and released version 1.0.183.

SevaShpun commented 6 months ago

I've modified the compilation flags in 8054166 and released version 1.0.183.

Now everything works! Thank you very much! :+1: :+1: :+1: