Click here to Skip to main content
15,881,588 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I have a c# tool that requires a few symbolic links on the root drive of the target machine.

What's the best way to include these symlinks with my tool installation?

I am currently installing these symlinks during the first run of the tool (run once and forget); however, this requires the user to have admin rights during that first run and I want to avoid this.

Any ideas?
Posted
Comments
Sergey Alexandrovich Kryukov 14-May-14 10:50am    
What is the type of your install project or an install toolset?
—SA
SrSwEngr 14-May-14 11:10am    
Setup and Deployment (VS installer).
I've tried adding a small side project (to create the symlinks) in the Custom Actions but the executable doesn't run (or perhaps is ignored because admin rights haven't been elevated?)
Sergey Alexandrovich Kryukov 14-May-14 13:50pm    
Yes, it is bundled with Visual Studio, but not in later versions, so it should better be abandoned; I switched to WiX Tools set, which is open source, fully compliant with MSBuild project standards (and "Setup" is not, so it cannot be considered as fully legitimate), nicely integrated with Visual Studio of different version, and is generally much better. And of course it has a standard option to request elevation where it is needed (which you cannot avoid, as I explained in my answer).
—SA

1 solution

Please see my question in my comment to the question. In brief: there is no a way to circumvent the permission system. (Just think about it: it it was possible to create some software which ignores permission limitations, it would be equivalent to not having the permission system at all; who would need the permission system then?) All you can do is the request the privilege elevation from the very beginning, at the start of installation. As this is the most used option (usually, such elevation is needed for installation, and, where it is not, maybe the installation itself is not needed), all non-nonsense toolsets include it.

—SA
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900