this has been bugging me forever, finally got it worked out: the trick is that .sln files are associated with the ‘Visual Studio Version Selector’, not with Visual Studio itself. so you have to set the version selector, not visual studio, to run in administrator mode by default. first you have to find it:
C:\Program Files\Common Files\microsoft shared\MSEnv\VSLauncher.exe
then you just go to the .exe’s Properties window -> Compatibility tab -> Privilege Level frame and check 'Run this program as an administrator'.