MarkHopper24 / barcodrod.io

A free, modern barcode and QR code toolkit for Windows.
https://barcodrod.io
Apache License 2.0
139 stars 6 forks source link

Won't start on an offline PC #25

Open llvs opened 1 month ago

llvs commented 1 month ago

barcodrod.io installed properly on an offline Win11 machine from the github-downloaded install file but after clicking to start the app (no matter if immediately after installation or via Start menu) nothing happens. Only when the machine is connected to the internet (having provided the credentials in some other way), barcodrod.io opens up. Does it need to fetch dependencies first?

The use case is to connect an offline laptop via webcam with a wifi network where the credentials come from a printed QR code. The built-in Win11 camera app can decode the QR code but needs a store app to handle it further and doesn't allow to copy the string (and therefore is totally useless).

I think this use case is important for barcodrod.io to shine as Win11 (with its camera app) doesn't help and your app could be the savior here.

MarkHopper24 commented 1 month ago

Hi @llvs, thanks for the request. The GitHub hosted installer .msix is actually scraped from the MSFT Store. The main reason I went this route is because the Store package has the benefit of using the MSFT Store's code signing certificate, which I believe should be trusted on just about all Windows 10/11 machines. From a security perspective, I'm hesitant to publish an offline installer because it would be unsigned. Windows doesn't allow MSIX installations unless they're code-signed (without disabling security controls, using PowerShell, and enabling Developer Mode).

Since I don't plan on purchasing one for this project since it's FOSS, it would be difficult to offer a .MSI or .EXE setup installer available securely since it would be unsigned.

To your issue- I suspect that since this is the Store version of the app, it's failing to launch for one of two reasons: Either it may need to contact Microsoft Store to acquire a license, or it's failing to install the Windows App Runtime which may need to be pulled from the Store. If you're able to either install the WinAppRuntime manually and/or launch the store while connected online once, I think it should work offline after that. FWIW, app usage can work completely offline. It's the install process that's a bit tricky.

I will investigate ways to package the .MSIX differently so it contains all relevant dependency packages for offline installer scenarios. In the meantime, the code is available so feel free to try those workarounds or build/modify locally for offline scenarios if you'd like.