Preventing a registry update based on a condition - advanced-installer

I have Advanced Installer software version 6.3. In my installer project there is a registry key update in the Registry section of the project.
How do I prevent the registry key update based on a parameter or property? I have attached a pic for reference. Thanks for the help.

Every value under the registry key has a corresponding component in the Organization page.
The solution would be to condition all value components from the Organization page using the installer public property.
See the How to conditionally install a file or a registry? article for more details.

Related

Replace appsettings value from Jenkins build

I need help in updating appsetting values from Jenkins build variables.
I dont want to use the web config transformation option. I need to hide the passwords in source control.
So i need to read those passwords from Jenkins and during build deployment want to get the associated key value and update in web.config
I reviewed the Managed files plugin, envInject plugin, but couldn't implement them, the explanations are not clear or i am missing something. The jenkins version i am using is 2.32.1.
Can you please help me out in this, can you provide me screenshots if possible helps me a lot.

installshield light ActiveX dll not registered

I'm using Visual Studio 2010 with the free version of Installshield. The application includes an ActiveX component which is called from Excel. The "Register for COM Interop" option is checked on the project Build properties page. When I run the install on an XP machine, the dll does not get registered. If I manually run the regasm /tlb: command, the application works.
Questions:
1. How to verify through the installshield log file that the registration was run?
2. What kind of error message would the log show if the registration failed?
2. Does installshield require that the dll be strong named? (It is not)
3. Are there other troubleshooting suggestions?
Thanks in advance,
Currie
Here's how I handle this situation:
1) Establish a clean OS.
2) Install your software.
3) use a registry compare utility such as InstallWatch Pro to snapshot the registry.
4) call Regasm.
5) capture the registry again and create a delta. Filter out unrelated changes.
6) Author those changes back into the InstallShield project. Rebuild and repeat the process to verify success.
So why is this broken? I usually find it as a result of a known behavior in Regasm.
When you set COM Interop = true you are telling InstallShield to call regasm /regfile and then scrape that data and author it into the installer during the build. But here's the catch:
(Emphasis added)
You can use the /regfile option to generate a .reg file that contains
the registry entries instead of making the changes directly to the
registry. You can update the registry on a computer by importing the
.reg file with the Registry Editor tool (Regedit.exe). Note that the
.reg file does not contain any registry updates that can be made by
user-defined register functions. Note that the /regfile option only
emits registry entries for managed classes. This option does not emit
entries for TypeLibIDs or InterfaceIDs.

getting TFS build definition metadata programmatically

I would like to get and then edit, programmatically, all of the process paramater metadata from a TFS build definition. Does anyone know how to do that? Thank you.
It depends on what you are after, many of the standard build properties can be set using the TFS Team Project Manager application, available on CodePlex.
Updated based on comments below.
You need to use the TFS API. There's a good intro here. If you need to set custom attributes, you can modify the ProcessParameters (and MSDN)
The ProcessParameters only has entries when the parameter is different to the Default. Try editing an existing build definition and changing a setting to a non-default value. The BuildSettings has the path to the Solution to be built and the configuration to use. This is probably where you want to edit the path to match your branch. Also you need to change the Workspace.Mappings property on the new build definition.

How can I manage two versions of the same service?

We're looking for a service registry and repository for our company. We're evaluating WSO2 registry right now.
How can we manage two versions of the same service? By version I mean the same logical service (same name) but with diferent WSDLs in each version
I believe there is out of the box support for this. If you add a service, then increment the version and change any property (including WSDL) a new version would get created and linked. I could not find a document for the exact process, but hope you can play around and see if you can get it to work.
For docs on adding services look at this.

Registering a form in Object Repository (automated, by code or any other means)

I was doing some customization to my forms, since I want them with some published properties appear on Object Inspector. I've done the simple way: create the form, put it on object repository, created a package to register it with RegisterCustomModule.
I would like to know if anyone have a way to put it on Object Repository in a automated way (I want to simplify the installation of this on other machines).
I googled, but either nobody wrote something about it or I didn't find the correct keywords...
You have to do two things first:
Add the file you want in the repository folder (for Delphi 2007, it's $PROGRAMFILES$\CodeGear\RAD Studio\BDS\5.0\ObjRepos).
Update the BorlandStudioRepository.xml file in the same folder. You can look at it's current contents to see what needs to be added.
Then create the registry entry under HKCU\Software\CodeGear\BDE\5.0\Known IDE Packages\Delphi to register your .BPL with the IDE.
Since nobody else is giving answers, let me tell you would I would try.
I would go to the registry and export a copy of the Delphi branch before registering the form in the repository, then register and save another copy, and compare them in a difference viewer. If you're lucky, the information is stored there and you can deduce what registry entries you need to add to register... you may be able to just ship a .reg file.
BTW, that is how we configure our Delphi installations at the company I work at. Keeps everything the same...
If it doesn't work, the config is probably stored somewhere in the file system. You could employ similar forensic methods to attempt to reverse engineer how the registration is encoded there...
If it's on a local network you could have each developer use the same Shared Repository (Environment Options) and install the design package in their IDE.

Resources