Include product version in the target directory - visual-studio-2010

I'm trying to create a setup project for a product that should be able to install itself alongside its own older version. I have tried to add [Version] to the default location of the application folder, but this doesn't seem to work. Namely, when I set this:
DefaultLocation: [ProgramFilesFolder][Manufacturer]\[ProductName]-x-[Version]-y
Setup totally ignores the Version variable, and suggests
C:\Program Files\<company>\<product>-x--y
as the default location. [Version] is set to <number>.<number>.<number> in the setup project properties.
What's wrong with me or with VS? How can I add versioning to my default location?

Answering my own question.
Apparently the correct variable to use in this case is [ProductVersion] and not [Version]. I have no idea how it is supposed to be known. I have figured it out by looking at the install logs, searching for the word "version", and trying what I've found.

Related

Xcode 7.1 header not found

During archive Xcode 7.1 does says Restkit/Restkit.h not found but in debug it successfully found the header. It's an old project which do not uses cocoa pods so RestKit is added manually in it. Tried many solutions but not successful. Help required.
Together with your suggestion and this SO post I managed to solve it by adding "$(BUILD_ROOT)/../IntermediateBuildFilesPath/Headers" (recursive) in the project build settings, Header Search Path for Release.
Also set Skip Install = YES (build settings/deployment in the RestKit-project) and changed :
#import <RestKit/RestKit.h> to "RestKit/RestKit.h"
Note. Check in your xcode preferences/locations tab where the derived data is stored. Default is Unique build location. Then look in Finder for the folder IntermediateBuildFilesPath and search for the headers you are missing. Add this folder to the search path.
I had the same issue. I added the following to the Header Search Paths build settings with non-recursive selected, and it solved my issue:
"$(BUILD_DIR)/../IntermediateBuildFilesPath/Headers"
I didn't have to change the import syntax or change any other build settings.
Changing Header Search Paths to:
"$(BUILD_DIR)/../IntermediateBuildFilesPath/Headers" (non-recursive)
was correct way for me, too. For other subprojects, you should change Public headers folder path (Build Settings > Packaging) to
"../../Headers/$(TARGET_NAME)"
in subproject target's settings.
All of the above answers were part of the solution; however, in my case I ran into a detail that had me confused for a little while.
As per the answers above, I also updated the Header Search Paths (under Build Settings) by adding:
"$(BUILD_DIR)/../IntermediateBuildFilesPath/Headers" (non-recursive)
but that didn't work until I realized...
I was only updating the Project, and the Target was keeping the old paths.
So remember to update the Project paths AS WELL AS the Target paths.
ps, I didn't have to change any of the RestKit import statements.

The SDK directory does not exist - non-latin path

I recently updated my Android Studio to 0.3.6. My old projects weren't using Gradle, but I tried to start a new one, and I'm getting the following error:
The SDK directory 'C:\Users*gibberish*\AppData\Local\Android\android-studio\sdk' does not exist.
My user name is not in latin characters, and it seems it reads the path wrong, although I checked the local.properties file, and it is typed correctly, and in UTF-8 encoding. I tested with older versions (such as 0.3.2, which is current stable) and the problem does not exist.
I read about problems with the new gradle plugin etc, and since the project's files are created, maybe this is another gradle issue?
Should I just revert to the stable version?
If you're on Windows and your pathname has non-ISO-8859 characters in it, there's a known bug that will prevent Android Studio from dealing with it properly; see https://code.google.com/p/android/issues/detail?id=56102. This is actually a longstanding Java bug that will be pretty difficult for us to work around.
I'd recommend putting your projects in a path that doesn't include non-ISO-8859 characters.
In my Eclipse ADT setup, under the project root I added a file with name: local.properties
In that file, I have one line:
sdk.dir=/Users/my_username/tools/android-sdk-macosx
It solved the issue. I found the solution at Gradle Plugin User Guide
They have this note below. I did have ANDROID_HOME set, but was still getting the error until I added the properties file (.. not sure why?!)
Note: You will also need a local.properties file to set the location
of the SDK in the same way that the existing SDK requires, using the
sdk.dir property. Alternatively, you can set an environment variable
called ANDROID_HOME. There is no differences between the two methods,
you can use the one you prefer.
If you are on Windows you should first make sure your enviornment variables are set correctly.
create ANDROID_HOME if you don't have it, make sure it is set to C:\Users\USERNAME\AppData\Local\Android\Sdk.
No need for the local.properties file for me after that.

Where does TeamCity place the build files?

I am setting up TeamCity with a VS 2010 web solution and VSS.
I have it working and building automatically when someone checks in.
I am unable to find where the built bin folder is placed though.
Any ideas?
Thanks
Like Ales has given you the information in that link, your bin folder will be 'somewhere' under the build agents home directory, something like c:\BuildAgent\work\????? - the reason I use the question marks is from memory the directory name is not a constant and this may make it a bit harder to find if you want the files used for the build.
You can however override this behavior and tell TeamCity the checkout\build folder:
Edit the 'Version Control Settings' (step 2) of your build Configuration and change the checkout directory from auto to custom.
Before proceeding you should read the docs regarding Custom path as there are some caveats

Can you Define $home as 'C:/user/%username%/' property for an installer

I've been looking through Property References and I cannot find anything that relates directly to 'C:/user/%username%/' or $home so I can install files to a folder generally in the "downloads" folder. Simplar to [AppDataFolder] but not to the roaming folder.
You will not find a predefined property for that folder, you need to create the path at install time. The following article explains how you can do it with Advanced Installer, I don't know what tool you are using but maybe you can get the same done with it too.
http://www.advancedinstaller.com/user-guide/qa-custom-folder.html
Also, this should be possible to achieve with the free edition of Advanced Installer too, i.e. "Simple" project type.

Change targetName in VisualStudio 2010 setup project

I am trying to make setup project for my application.
I have added it to my solution with my primary application project. Everything looks fine. I can see detected dependency files:
But i must change targetName of some files.
I can't do that and I don't know the reason why?
You can see the "TargetName" is gray and unchangeable. I should be able to rename all files I want if I'm installing them on other machine.
How can I change TargetNames in my Setup Project?
Don't think it's going to let you do that without renaming the .dll. The deployment doesn't seem to allow one to change .dll names ... which makes sense, really: you've compiled with the expectation that you're going to have Jacob.Vst.Interop.dll as a reference, so if you remove it, and you're not installing it into the GAC, you're going to have some trouble.

Resources