WINAMP.COM | Forums > Developer Center > NSIS Discussion > Shortcuts on Vista |
| Pages (3): [1] 2 3 » |
Last Thread
Next Thread
|
| Author |
|
|
Takhir Major Dude
Registered: Feb 2004 |
I could reproduce this with "Standart User" account |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
I think this is a serious problem which should be handled by NSIS. Of course we could build wrapped installers where some are running as user and some as admin. But this will be some very basic problem with Vista in general. __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
No NSIS could not detect this, vista elevates before the actual process is started __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
I'm developing a plugin that hopefully will help to deal with these Vista problems, its still "in Beta" so don't blame me if it doesnt work or blows up in your face (or all over your HD) __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
I agree: short cut is no real problem, I think I will just disable the possibility to install them for "current user". I know of current user installs but this is not an option for most of my installers here. __________________ |
||
|
|
|
kichik M.I.A. [NSIS Dev, Mod]
Registered: Oct 2001 |
The SAFER plug-in should solve the Exec problem. But if the user is switched and not elevated, you won't get the original user. __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
There are no docs at this time, the exported functions have a little bit of text if you look in uac.cpp __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Thanks a lot, Anders. __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
Run process explorer, you can see two instances(processes) of your setup, one running as the user that started the setup and one running at high integrity level (and possibly as another user if the original user was not a member of the admin group) When you use UAC::Exec/ExecWait/ShellExec/ShellExecWait the 2nd elevated process will send a message to the original process telling it to start a process (uses WM_COPYDATA) __________________ Last edited by Anders on 03-02-2007 at 05:48 PM |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Thanks Anders, I will try your plugin. __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
New version: http://stashbox.org/13698/UAC%20v0.0.5c.zip __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
New version: http://stashbox.org/15549/UAC%20v0.0.5d.zip __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
@Anders: You call UAC::Unload in .oninstfailed/.oninstsuccess. __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Additional question: Does UAC::Unload harm if UAC plugin wasn't used/loaded before? __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
It will not crash if you dont call unload, but it will probably leave uac.dll in $pluginsdir so you will leave stuff behind in the users $temp dir. The only thing UAC::Unload does is to call FreeLibrary on itself so you should probably call it if possible. If you call Quit before you call any UAC function you dont need to unload (IsAdmin,SupportsUAC and GetElevationType is safe to use without unload, RunElevated and ExecCodeSegment is not) __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
I could not try it myself (yet), what about error level return values? I use "set error level" within my script and the outer process should return those error level value, too (if set). __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Ah, found it: __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
The plugin seems to work. Thanks, Anders! __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
UAC::GetElevationType and UAC::SupportsUAC return 0 on XP and below because those are Vista specific. __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
GetRunAsType could return "1" if this is the inner process. I currently check myself for "/UAC:" in CMDLINE. I have to do this because the MessageBox I show will appear twice if I show it always before RunElevated. __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
You dont really need to know if you are the inner process or not, if IsAdmin returns 1 you are either already admin or the elevation has been performed __________________ |
||
|
|
|
onad Senior Member
Registered: Dec 2004 |
NT4 users should install and use the SU command from the NT Resource Kit. __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
@Anders: I need to know. It is helpful anyway to know this, but if I don't detect this (inner process yes/no), I will show the warning message twice if the user logs in as non-admin in RunAs dialog (try for yourself; it took me some minutes to detect what was going on there). __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
ah ok, just look for "/UAC" then utill I can get a new version out __________________ |
||
|
|
|
FrozenFire Junior Member
Registered: May 2007 |
Downloaded your pluggin today to try to fix some exec problems i've been having in vista. I ended up making an function to install files in restricted areas and calling it to run in ellivated mode, but it didn't work, instead producing an error when the installer tried to write to the secured area. |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Post code here for help. __________________ |
||
|
|
|
MarcOfChaos Junior Member
Registered: May 2007 |
Hello, |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
Could you post some example script with this problem? __________________ |
||
|
|
|
MarcOfChaos Junior Member
Registered: May 2007 |
Hello Anders, |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
I have no idea whats going on, and I don't have a domain setup to test with (I don't even have a Vista install to test on ATM) __________________ |
||
|
|
|
MarcOfChaos Junior Member
Registered: May 2007 |
FYI: |
||
|
|
|
helix400 Member
Registered: Oct 2003 |
Last edited by helix400 on 05-07-2007 at 07:13 PM |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
Please describe your exact setup (Vista SKU, UAC on or off, type of user, exact directory it fails in) __________________ |
||
|
|
|
helix400 Member
Registered: Oct 2003 |
Anders,
|
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
Hm, when UAC is on, you are not supposed to get my runas dialog, but the normal vista elevation dialog. My detection for this must be messed up. Would be great if you could drop by the nsis irc channel so I could create some test builds for you __________________ Last edited by Anders on 05-07-2007 at 10:35 PM |
||
|
|
|
helix400 Member
Registered: Oct 2003 |
Anders, |
||
|
|
|
MarcOfChaos Junior Member
Registered: May 2007 |
Hello,
|
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Hi Anders, I have three improvement suggestions: __________________ |
||
|
|
|
stb Senior Member
Registered: Mar 2004 |
Just an idea: I don't know whether the system RunAs-dialog in Windows 2000/XP supports other authentication methods than password. Think of a fingerprint reader... __________________ |
||
|
|
|
| Pages (3): [1] 2 3 » |
Last Thread Next Thread
|
WINAMP.COM | Forums > Developer Center > NSIS Discussion > Shortcuts on Vista |
Forum Rules:
|