I get the following error when I tried to uninstall a software. I tried with multiple uninstallers, but nothing worked.
1001 Errors are always the result of an InstallUtil custom action. Either you added a component and set the .NET Installer Class attribute to true or you consumed a merge module that has a custom action.
These custom actions are truely horrible and you should refactor your installer to not need the custom action or use a WiX DTF custom action instead.
Related
I'm using the Catel demo and trying to single step through the Catel code in it. According to this, I should be able to do so, but it doesn't work for me. As instructed, I've selected the option to Enable source server support.
If I try to single step code such as the following, it steps through the constructor for PersonViewModel, which is in the demo, but not through the Catel code.
var personViewModel = typeFactory.CreateInstanceWithParametersAndAutoCompletion<PersonViewModel>(person);
I updated the Catel.Core and Catel.MVVM to v5.12.4 to the latest version and likewise associated packages. I'm using .NET Framework 4.8.
What am I missing?
It looks like you have enabled Source Link support, which is correct. Other things that might cause this not to work are:
Make sure just my code is disabled (it's enabled in your settings, Catel code isn't your code for a debugger instance)
Make sure that, under the symbols tab, you have selected a directory
I have InstallShield 2013 Basic MSI project
Is there an automatic way using a tool or script to automatically update all component code in the project ?
First question: why do you want to do that? A component GUID is set in stone for all absolute paths it references. See a description of this here: Change my component GUID in wix?
If you are familiar with COM automation, you should be able to automate the generation of new GUIDs in your project using the Installshield automation interface.
There are only a few cases where such an operation is logical and valid. If you are looking to install the same product many times, you can check out instance transforms. I have no real experience with this - I dislike the concept, but here are some pointers:
Installing Multiple Instances with Instance Transforms
Authoring Multiple Instances with Instance Transforms
Configuring and Building a Release that Includes Multiple-Instance Support
Multiple Instances Tab for a Product Configuration
I need to customize TStringGrid for my application. What is the recommended way to do it?
The only thing I have seen is to put the TMyStringGrid to a package, install it to IDE and than use it in my application. The problem is that I am working on that component at the same time as on the application and I do not want to reinstall the component every time I do any change in it just to test it.
When I tried to put it to my project it said: "Sharing code between packages and application source is not good idea."
While testing, don't use it designtime, but instantiate it runtime.
In want to suppress warning message generated while installing application through Installshield Environment.
Is there some kind of CONDITION that can be put in the Installshield Application builder while creating Installation file ?
There are two possibilities and I'm not sure which your scenario is. But just make sure you have turned off COM Extract at Build for the component (if you see the warning at build), and marked it not Self-Registering (if you see the warning during installation).
I think at least the latter is a right-click file property in Express editions instead of an option on the component grid (as there is no component grid in Express editions).
Can I use CustomActionAttribute in classes that inherit from System.Configuration.Install.Installer? I want my class library to support both WiX and Visual Studio setup project.
I don't see any immediate reason why you couldn't do this. One obstacle is that Wix managed CA functions must be declared public static, so you would probably need to refactor most of your logic into functions that could be called by both your Install/Uninstall functions as well as your Wix CAs functions.
If you were to do this I would recommend creating the project from the Votive Managed Custom Action template in Visual Studio and then manually adding a Installer Class to the project. You can then define static functions in the installer class that can be exposed as CAs using the CustomAction attribute.
The reasons for not doing it are:
you can't have methods with same names in your custom actions assembly custom action method calls in WiX
And the DTF methods and VS setup project methods are different in signature.
Also, as I've understood, VS setup project CAs don't use Session object, unlike DTF CAs.