sergreen / appacker Goto Github PK
View Code? Open in Web Editor NEWTool for making single .exe application packages
Tool for making single .exe application packages
Possible Cause: Missing/Incorrect Microsoft Visual C++ Redistributable Runtime Version
Affected: Appacker v1.3.8 (28 Dec 2020)
OS: Win 10 x64
When Appacker's Pack
button is clicked, it shows a popup error notifying about incorrect side-by-side configuration.
If Continue
is clicked, packing seems to be in progress (with the Packing ... Please wait
button greyed out), but nothing is happening & Appacker uses 0% CPU. If Quit
is clicked, Appacker exits immediately.
The same error occurs regardless of the source folder (of files) selected to be packed. Screenshot & details of the error message are at the bottom.
Windows Event Viewer shows that Appacker always fails at verInfoLib.exe
(which Appacker self-extracts to the TEMP folder during every run) due to the missing dependency Microsoft.VC80.MFC v8.0.50608.0 x86.
The above appears to refer to the Microsoft Visual C++ Redistributable 2005 SP1 x86 MFC Security Update runtime library, specifically with the DLL version of v8.0.50608.0.
Microsoft only supplies the last-available MS Visual C++ 2005 SP1 MFC v8.0.50727.6195 (14 May 2011). Placing the extracted runtime DLLs (msvcr80.dll, msvcp80.dll, msvcm80.dll, vcomp.dll
) within Appacker's folder results in the same side-by-side configuration error when Pack
is clicked.
Is it possible to provide Appacker pre-compiled with the required dependency DLLs, so that the EXE binary is self-contained, & doesn't rely on the host PC having some old, unavailable runtime library ? (I don't have any IT training or programming knowledge, so I have no idea how to compile Appacker from the source code.)
Also, for user awareness, it would be good to state upfront in the program description/ README.md all the dependencies required by Appacker.
Thanks !
Unhandled exception has occurred in your application.
The application failed to start because its side-by-side configuration is incorrect.
************** Exception Text **************
System.ComponentModel.Win32Exception (0x80004005): The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at Appacker.MainForm.StartPacking(String sourceAppFolder, String mainExePath, String destinationPath, String customIconPath, String customFileDescription, String launchArguments, Boolean selfRepackable, Boolean openUnpackDir, UnpackDirectory unpackDirectory, Boolean noGUI)
at Appacker.MainForm.btnPack_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Activation context generation failed for "C:\Users\user\AppData\Local\Temp\1374be56-c8b3-42ed-bf1e-44dc9be0a7ba\verInfoLib.exe". Dependent Assembly Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0" could not be found. Please use sxstrace.exe for detailed diagnosis.
Program 'appacker.exe' failed to run: An error occurred trying to start process
Appacker doesn't work on linux, so iused window os
But I get this error,. How can I run appacker in github workflow?
What should I do to make it work?
Here: https://github.com/lazuee/neutralino-template/blob/master/.github/workflows/release.yml#L90-L93
Hello,
I have some questions regarding Appacker.
1: Will Appacker handle the arguments of my application? For example, Can I pass arguments to the packed EXE file? Will Appacker send those arguments to the main executable EXE file?
2: On which line I can change the temporary path location which Appacker will extract the packed contents to?
3: Does Appacker set the correct working path? For example, if I have a file called hi.txt in the same location of the packed EXE using Appacker... Will Appacker read it from the temporary path or from the path of the packed EXE file?
4: On the 3rd question, if Appacker doesn't set the correct working path, is it possible to fix this?
Thanks!
I have an ico file that contains the resolutions 16x16, 32x32, 48x48, and 256x256. When I set it as the icon of the executable, the resulting executable's icon does not have the 256x256 resolution. More specifically, it has a smaller resolution, maybe 48x48 or 32x32 - but definitely not 256x256.
I used the GUI.
Hello SerGreen,
I love the software, just wondering if there was a way to implement password protection?
I have this icon (.ico file) that is only in 256x256 resolution. When I set it as the icon of the output executable (via the GUI), the program crashes with the following exception:
System.Runtime.InteropServices.ExternalException (0x80004005): A generic error occurred in GDI+.
at System.Drawing.Image.RotateFlip(RotateFlipType rotateFlipType)
at System.Drawing.IconLib.IconImage.Set(Bitmap bitmap, Bitmap bitmapMask, Color transparentColor) in C:\Users\SerGreen\Source\Repos\Appacker\IconLib\System\Drawing\IconLib\IconImage.cs:line 252
at System.Drawing.IconLib.SingleIcon.Add(Bitmap bitmap, Bitmap bitmapMask, Color transparentColor) in C:\Users\SerGreen\Source\Repos\Appacker\IconLib\System\Drawing\IconLib\SingleIcon.cs:line 345
at System.Drawing.IconLib.SingleIcon.Add(Bitmap bitmap) in C:\Users\SerGreen\Source\Repos\Appacker\IconLib\System\Drawing\IconLib\SingleIcon.cs:line 152
at System.Drawing.IconLib.SingleIcon.CreateFrom(Bitmap bitmap, IconOutputFormat format) in C:\Users\SerGreen\Source\Repos\Appacker\IconLib\System\Drawing\IconLib\SingleIcon.cs:line 266
at Appacker.IconSwapper.ChangeIconFromBitmap(String pathToTargetExe, Bitmap bmpIcon)
at Appacker.MainForm.StartPacking(String sourceAppFolder, String mainExePath, String destinationPath, String customIconPath, Boolean selfRepackable, Boolean openUnpackDir, UnpackDirectory unpackDirectory, Boolean noGUI)
at Appacker.MainForm.btnPack_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
I get the following error when trying to do the same through the CLI:
A generic error occurred in GDI+.
Unhandled Exception: System.Runtime.InteropServices.ExternalException: A generic error occurred in GDI+.
at Appacker.Program.NoGuiMode(String[] args)
at Appacker.Program.Main()
If you try to open some file (ex. Photo.jpg) with packed app - it works and image opens with packed app
BUT if the file has name with space in path (ex. Photo december 2007.jpg) app will try to open ...\Photo (it doesen`t see any name after space)
Please tell me where can I add quotation marks to path in code? What .cs files contain pathes? Or how can I make Packed app open files with spaces in path?
Thank you in advanceю
Hi there! Thanks a lot for writing this little thingy!
Just wanted to ask you: would it be possible to implement a "disk-less" mode when all files and resources are written to a virtual filesystem in RAM? (and not to TMP dir).
I'm not a programmer myself (still learning) and I've googled around for libraries - there are some.
Will it be worth the effort?
Thanks!
Hi! When I try to open most of apps with launcher/splash screen when during launch splash screen closes an apps window opens, Appacker thinks that the app is closed and it
s time to repack. I had this issue earlier but fixed it with writing simple .exe daemon which opens app and closes itself when app is closed for more than 2 seconds. It solved. But its not good patch because entry point of app was daemon, not app itself, so you can
t associate file type with packed .exe. Video related:
This is a complexing issue: it is a bad idea to make timeout for packer when app is closed - it will take 1 second more to pack app back. But on the other hand there are no other ideas how to fix. I invented only timeout.
THERE IS an idea:
Create in "Advanced options" flag called "The app has splash screen/launcher, add timeout for packer" and maybe a field to control how much seconds should it wait
When ever i am opening the app created by appacker first a terminal flash then it start same happen when closing the app
The application does not exit properly. You must press Enter
in the command prompt after the application should have exited to actually get the application to exit. This is happens whether an error occurs, when packing is successful or even just displaying the help message.
This is causing in issue in my workflow as I am waiting for exit signals. Although this isn't the place, thanks for your work and commitment to this project.
hi any chance of adding compression when packed
In my application I want to know from where it was started. But seems no such info. I checked environment, no success.
requireAdministrator properties aren't carried over. Maybe add a setting to force files to require admin privelages?
I don't know why it's happening
hi where is the unpaker ,i'm sorry that I couldn'd found it.how to unpack exe files?
I want them to be saved to the same folder as the exe file instead of appdata
I was trying to pack a set of files which the main.exe relies on to function. These file types are very niche and likely unheard of by most. Would this have a reason to do with the errors presented?
File size is estimated to be about 8GB and the output of the application is under 6MB.
Please let me know what else I can provide to resoluve this issue. This application is amazing work.
EDIT: I tested it more and it seems to refuse to pack my 'grf' file type.
When executed from the command line, the packed output executable opens in a new session/window. This makes it impossible to read/write stdin or stdout pipes of the packed executable. I don't know how to fix, please instruct.
Quick question for ya.
Is it possible to hide the unpacking progress bar on application execution?
Regarding the new Visual C++ Runtime 2005 x86 not found!
reminder popup that appears upon every launch, is it possible to have a tick option Do not show again
for the popup, & remember this setting ? (User can still click on the red exclamation mark icon to manually show the popup on-demand.)
Appacker already writes a non-user-configured setting in the registry at:
HKCU\Software\SerGreen\Appacker
=> Language = en-US
How about moving all settings to an INI file within Appacker's folder, so that it doesn't write to the registry or elsewhere in the filesystem ?
Other settings good to have include:
Remembering window position & size
Currently, Appacker's main window position changes randomly upon every launch.
Options in the Advanced Options
section
Currently, Appacker does not seem to remember any non-default option here.
Tested: Appacker v1.3.9 (23 Oct 2021)
OS: Win 10 x64
Thanks !
Would it be possible to add a command line switches to the Apppacker main executable.
Switches could be:
-s --src
- Application directory to pack.
-d --dst
- Destination where packed app will be created.
-e --exe
- Main executable. This is the application that will launch whenever the packed app extracts itself.
-r --self-repack
- Sets the packed application to refresh itself after the main executable closes. Refreshing adds and replaces files in the packed executable with those created and modified during runtime.
-i --icon
- Packed application icon.
This would allow me to use this application in my workflow.
-Thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.