I want to create an installer for windows service built in C++. I have followed this article to create the Service.
I have 3 win32 console application in my solution. one for installation , one for uninstallation and one that does the actual work.
I must humbly recommend WiX (Windows Installer XML Toolset) for all your installer needs.
Related
I'm developing a C++-Win32-app which should be deployed in the Microsoft Store. Unfortunately, since runFullTrustis added automatically as required capability, the program appears in Microsoft Store as follows: "This app can access all your files, peripheral devices, apps, programs and registry.", but I don't need all of those capabilities. Is there any possibility to get rid of the runFullTrust capability or to choose which capabilities are really needed?
If you want to publish the Win32 apps in Microsoft Store, and you must add restricted capability runFullTrust in the manifest.
Only UWP app can be published in the Microsoft Store,if you have an existing desktop application that was built using the .NET Framework (including WPF and Windows Forms) or C++ Win32 APIs, you can several options(Package your desktop application in an MSIX package, Use UWP APIs...) for moving to the UWP and Windows 10. The moved app called desktop bridge apps. You can see more details in document:
Move from a desktop application to UWP
The restricted capability runFullTrust is required for any desktop application that is delivered as an appx or msix package (as with the Desktop Bridge), and it will automatically appear in your manifest when packaging these apps using the Desktop App Converter (DAC) or Visual Studio. You can see this in document:
Restricted capabilities
I have build an installer for my application with the QtIFW2.0.1 on Windows. As we offer the installer for download, I have signed the installer executable with a valid certificate. So our verified name shows up while the installation process ask for the needed access rights.
Nevertheless there is an unpleasant messagebox if the user uninstalls, updates or changes our application via the maintenancetool.exe.
How is it possible to extract the maintenancetool.exe, sign it and put it back in the installer executable?
Maintenancetool signing in Windows (QTIFW-667) is possible since Qt Installer Framework version 3.1.0 which was released April 11th 2019.
I recenty developed an Eclipse RCP application based on an existing RCP application. It´s basically used as a url protocol handler which reuses authentication and some services. I´m trying to avoid a second installation and look for a way to integrate the new RCP application into the installation of the existing RCP - is there a way to achieve this?
I´m (still) using Eclipse 3.8 and build with tycho.
Assuming that you have multiple applications within your product, you can launch the desired one using the
-application id
runtime argument.
In our application, which integrates multiple Eclipse RCP applications, we have a custom target platform, which bundles all other application plugins, so everything is shipped together. Also, all artifacts, provided by other applications can be retrieved from the maven repository, so that necessary services may be added as a dependencies to, for instance, server side projects. Hope that helps.
Recently I have been experimenting with Firebreath and developed a plugin in order to showcase my c++ projects on my portfolio website. I would like to make it easy for users to look at the projects without downloading files if they are new on my website.
The only issue I have at this point is that when users visit my page, they will receive a message indicating the plugin is missing. I would like to have an option for the users to automatically install my plugin without having to manually download and run it.
The plugin is mainly targetted at Windows users, since the applications are as well. I intend to support Google Chrome, Firefox, Internet Explorer. Currently I am using a MSI installer to install the plugin.
I have found a question similar to this, but I still needed to save the MSI installer and run it.
My question is: What would be the best way to implement this?
There isn't any way to "automatically" do what you want to do. The closest that I have heard of would be to use a java applet that would download and install the plugin for them. This can be pretty reliable on Mac but far less reliable on windows (for a number of reasons, among which the fact that many windows users don't have java installed and that Chrome blocks java applets by default without intervention by the user).
Other options include:
Creating a CAB file installer (only works on IE)
Creating a XPI firefox extension that packages the plugin (requires restarting the browser, only works on firefox)
Creating a CRX chrome extension that packages the plugin (only works on Chrome)
Microsoft ClickOnce used to work pretty well for one click installs of MSI files from a web page, but recently I think it doesn't work on many (if any) browsers; haven't seen it used in awhile, anyway.
There is no "automatic" way to install plugins; that would be considered a severe security issue. This is probably the #1 reason that plugins are as uncommon as they are.
do what adobe does,
create a tiny activeX application downloader, sign the activeX from with cheap SSL
when a user, enters your site, he will automatically be downloading this tiny ActiveX, after installation complete, inside the tiny ActiveX, have some type of batch script to download the EXE from remote server and silently install it.
adobe does this, on every reboot in boot.ini or startups
very easy
In order to get your application certified for Windows 8, Microsoft says that you need to "only use APIs for Metro Style Apps" (reference)
Is there a tool that can be used to check against existing C++ code to find out if your existing application is in compliance?
Use the Windows App Certification Kit (WACK), which is installed as part of the Windows 8 Developer Preview. You can find instructions for using it on MSDN:
"How to test your app with the Windows App Certification Kit"
If you want to test existing libraries, you can create a Metro-style app that references those libraries and run WACK on that app. (Note, if you want to test a static library, you need to exercise enough of its functionality from the app so that all of its functions get linked in.)