Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a custom built 32-bit app that I'm trying to install. When I ran the installer (ol' setup.exe) it installed to Program Files(x86) as all good 32 bit apps seem to. Unfortunately it looks like this app is hardcoded about a million different ways to load configuration files in c:\program files. Literally "C:\Program Files\AppName\FileName".

What are my options here? Can I attempt to reinstall to C:\Program Files? What should I look out for?

share|improve this question
1  
Won't a 32-bit program see the 32-bit program directory as simply "Program Files"? –  grawity Feb 11 '11 at 16:14
    
@grawity - I thought so too, but the errors I'm seeing make it seem otherwise. The app itself is an exe, but I think it's a java program underneath. Perhaps the jvm(also 32 bit) is accessing the file system differently? –  Steve Jackson Feb 11 '11 at 16:37
    
@grawity: No. AFAIK only C:\Windows\System32 is transparently remapped in such a way. There's nothing special about C:\Program Files or C:\Program Files (x86) as far as the OS is concerned. Simply installing to the preferred path should be enough. –  afrazier Feb 11 '11 at 17:41
1  
@afrazier: Thanks. (I think it would be possible to add per-program redirections using Microsoft's Application Compatibility tool... whose exact name and exact abilities I have forgotten, but it did have all sorts of features.) –  grawity Feb 11 '11 at 18:26

3 Answers 3

up vote 4 down vote accepted

Symlink:

mklink /d "C:\Program Files\AppName" "C:\Program Files (x86)\AppName" 

(Requires Administrator.)

share|improve this answer
    
This is definitely the most elegant solution posted thus far. –  Breakthrough Feb 11 '11 at 17:24
    
Perfect. Thank you. I changed the order of the arguments to match my problem. –  Steve Jackson Feb 12 '11 at 0:14

Installing in c:\Program Files should make the app run, without causing any problems

Source: My deployment of an in-house app which had the same behaviour >_>

share|improve this answer
    
I am going to have to do this as well. Problem with us is that we have a program that has thousands of lets call them 'project' files. Thing is, we have a template in the program files folder for the application for each machine and these paths are saved in each project file. I might force all the x64 machines to install the program in Program Files versus (x86). –  qroberts Mar 2 '12 at 14:38

While not the cleanest method, you could just copy the directory structure over to Program Files, but leave all of the shortcuts and such pointing to the actual installed directory. It's messy, but probably the simplest thing to do in this case.

share|improve this answer
    
Good idea. This seems to work. I'll accept your answer if there isn't a cleaner way to do it. –  Steve Jackson Feb 11 '11 at 16:39

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.