In meiner Vista-Box habe ich eine Quicklaunch-Verknüpfung, die den cygwin rxvt als Administrator aktiviert. Wenn Sie nur eine DOS-Box verwenden, können Sie die Eigenschaftsseite der Kompatibilität nicht einfach verwenden, da cmd.exe von Vista erkannt wird. Wenn Sie jedoch nur cmd.exe in Ihren Home-Ordner ("notcmd.exe") kopieren, können Sie dies tun um es "als Administrator" auszuführen.
Ich habe sogar meine% Eingabeaufforderung auf # by gesetzt isadmin && PS1='# '
.
isadmin.c
:
#include <stdio.h> #define _WIN32_WINNT 0x0500 #include <windows.h> BOOL APIENTRY CheckTokenMembership( IN HANDLE TokenHandle OPTIONAL, IN PSID SidToCheck, OUT PBOOL IsMember ); int main (int argc, char **argv) { SID_IDENTIFIER_AUTHORITY NtAuthority = ; PSID AdministratorsGroup; BOOL isAdmin; if (AllocateAndInitializeSid (&NtAuthority, 2, SECURITY_BUILTIN_DOMAIN_RID, DOMAIN_ALIAS_RID_ADMINS, 0, 0, 0, 0, 0, 0, &AdministratorsGroup) == 0 || CheckTokenMembership (NULL, AdministratorsGroup, &isAdmin) == 0) { printf ("failed with win32 error %lu\n", GetLastError ()); exit (2); } FreeSid (AdministratorsGroup); exit (!isAdmin); }