Windows support for Electron application created via Capacitor - ionic-framework

I have just started looking at Capacitor as a possible solution to package my hybrid apps in an electron shell. This is the first time I have used Electron, so really know very little about it's details.
I ran through the following steps..
1. Create new Ionic app
2. install capacitor as per doco
3. run npx add electron
4. cd electron
5. npm i electron-packager -g
6. electron-packager . --platform=win32
I ended up with a subfolder electron\capacitor-app-win32-x64that contained an executable, which ran fine on both my dev machine (Windows 10 x64), and another Windows (Windows Server 2008 R2 Standard x64).
My ultimate target device is a specialised small ruggedised tablet, that runs Windows 7 Embedded 32 bit.
It does not run on this, I get The version of this file is not compatible with the version of Windows you're running. I am not even sure if the build app is managed or unmanaged (assuming unmanaged?)
So, I would like to know what is not compatible about the Windows machine. Initial questions are
How do I Know what "bitness" the Electron app is (ie 32 bit, 64 bit, or is it .net to is like "any cpu"). I can't see where to find out this information (dotpeek won't open the exe, and opening the exe in Visual Studio, I don't see much information)
Could it be it is not build for the correct CPU?
Is there some other dependency that perhaps the embedded Windows 7 has not got
Any help is how to figure this out would be great!
[UPDATE1]
Following some advice as given here, it appears it is a 64 bit application, which is strange as the command electron-packager . --platform=win32 appear to indicate we want a 32 bit. So that may be my problem.
Does anyone know how to make it build to 32bit?

Found the problem. Just need to add a --arch=ia32 to get 32 bit.
So my complete build command was
electron-packager . --platform=win32 --arch=ia32
and it is now 32 bit and runs on the 32 bit machine.

Related

How to deploy Android emulator built on Linux to Windows?

I've build aosp_x86_64-eng target on Linux and now I can start it using emulator command. However, I'm looking for a way to "deploy" the .img files and whatever is necessary to Windows, so I could run the same emulator on Windows.
My main problem is that in out directory (out/target/product/generic_x86_64) there are a lot of things and I'm not sure which to choose and how to glue them with .ini and .prop files. I also didn't find any working tutorial or example on that topic. On the other hand I'm sure it's possible, since Google provides working emulators for Windows and they had to be build on Linux or Mac OS.

MAMP download asking for .Net core 3.1 Runtime. Unsure which one to select

I was following a tutorial to download MAMP earlier, and I ran into this problem which wasn't explain in the tutorial. After I successfully downloaded MAMP, and I tried to open the application, it indicates that my computer do not have .Net Core 3.1 and I need to download it (directs me to this https://dotnet.microsoft.com/en-us/download/dotnet/3.1/runtime?cid=getdotnetcore)
There are three options between: Run Console Apps with download x64 or download x86 / Run Desktop Apps with download x64 or download x86 / Run Server Apps with downloading hosting bundle. Which one is suitable?
You have to download the Run Desktop Apps x86 version, even if your system is x64.
You need to check the system type on your computer.
Here is a tutorial video that might help you to solve the error for installing .NET Core.
https://www.youtube.com/watch?v=BqYnexZwBPU&ab_channel=TroubleChute
Installing the x86 version setup even though my system is x64 worked for me.

Error "This app can't run on your pc" when i run .exe from win10 Home

I am new to Unity and from my PC (MAC) i have created 3 builds of my project (1-MAC, 2-Windows x86_64, 3-WebGL)
I state that my version of Unity Hub is 2.4.2 and my Unity version is 2019.4.18f1
When i start my game on mac everything works fine (obviously starting the build for mac), later I put the x86_64 windows build in a compressed folder and then transferred it into a USB, to try the game from another pc (win 10 PRO). In this PC the same version of unity was already present.
So far, so good.
The problem starts when I take the same USB with the same files, which, as previously said on win10 pro work, I put them on a win10 home (32 bit) and when I try to start the .exe it gives me this error "This app can't run on your PC. To find a version for your PC, check with the software publisher "
Looking on the internet I tried to get around the problem they change the local settings policy, but the result is the same :(
These are the files inside my compressed folder
And these are my build settings
I thank whoever will be able to help me and I apologize for my bad English
You say your other PC is 32 bit!
That's your issue!
You are building for the Architecture
x86_64 => 64-bit CPU
It does not mean 32 or 64 bit.
To run it on a 32 bit system you have to build for x86 instead.
See Unity Manual - PC, Mac & Linux Standalone build settings

Whats the best way to start building an application that should work on windows 8 tablet

Background:
I have to build a Windows 8 application using HTML5 and Javascript. The application should work on windows 8 tablets and should do authentication using the windows provided native javascript Apis.
Issue:
I have a windows 7 laptop. I am coming from Java background and don't know about the windows side much.
Question:
I have done research , but got really confused
If I have to build my Windows 8 tablet specific application then what is the best option.
Should I install Visual studio into my laptop and then start
building the windows 8 application? ..
If I am going to use visual studio then which version should I use
as my laptop is running windows 7 ?
Or should I get my java eclipse IDE and install some additional
plugins to start building my windows 8 specific application ?...If
yes then which plugin should i use ?
first of all, there isn't any way to create windows 8 app in windows 7 PC (except you run windows 8 on a separate virtual machine). Check this for more info.
Yes, you have to install visual studio for Windows 8 app development anyway.
Visual Studio 2013 is a better choice to start with which includes most of all that you're gonna need.
For other tools check this.
There isn't any way to install any plugin into Eclipse and start developing apps for windows. You can only write scripts and html in Eclipse but App specific configuration, you have to do it in Visual Studio.
But my question to you is that why would you like to make Windows 8 App when you can make a Universal (Windows 10) app by spending same amount of time and efforts..! see the future. Windows 8 is not gonna last longer than a year (approx announcement in Build2015). Though No doubt, apps made for windows 8 will work on Windows 10 also with some exceptions.
Hope this helps..!
All the best...

How to build native app bundles for Windows, Linux & Mac in a single build?

I am running my build on Windows 8 O.S. , 64 bit machine. I have JavaFx2.0 and Java 1.7.0_09 installed on my system. I am able to build a 64 bit window executable that launches my JavaFx application as a self-contained Javafx application.
Now I want to deliver native app bundles on Windows, Linux and Mac without build my project on all three platforms i.e I would like to achieve these set of bundles in a single build that I suppose to run on by Windows 8 O.S. 64 bit machine.
I am also okay if I can do it by distributing a single Application JAR file as .zip for MAC and Linux. But what I want is that JAR should work on there respective platform.
When I used to run a single application Jar on MAC using command
java -jar application.jar
It always shows a dialog "The application require a newer version of Java Run-time" with download link. Even I have downloaded and successfully installed it on my MAC machine but it still shows me the same window.
I don't want the users to experience such difficulties while running my JavaFX application on MAC and Linux.
What I need to ship more with the Application JAR so the users can run my JavaFx application on MAC and Linux without any hassle?
I guess you are making the JavaFX Solution in a 64bit machine and on the other hand you must be having all the SDK and runtime for 64bit version. The problem is that the application made using 64bit version of SKD would required 64 bit OS to render itself. So the bottom line is, is yout mac and linux PC have 64bit version of OS and JavaFX Runtime as well as Java7.X all 64 bit? If not then you must update your runtime to 64bit version or make your application in a 32bit version of SDK. One quick suggestion. If your mac or linux is 64bit(I dont have much idea about mac) then just install a browser i.e. 64bit version and runtimes and try out. I was having the same problem and that got fixed. Let me know if my answer caused any confusion.