ShellExecute Win7 UAC Problem

  • Moin zusammen,

    Wieder mal Win7 udn UAC was mir Probleme bereitet. Und zwar möchte ich COD4 MW per Button starten. Das Problem dabei ist Win7 und sein UAC, denn bei aktivierter UAC speichert COD4 den Profile Ordner nach C:\Users\Rata\AppData\Local\VirtualStore\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players. Um COD zu starten damit es funktioniert muss der ShellExecute Befehl ja so aussehen, denke ich :

    [autoit]


    ShellExecute("C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\iw3sp.exe","","C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\")

    [/autoit]


    Startet auch, nur findet er dann das Profil nicht mehr. WorkingDir muss aber zwingend "C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\" sein sonst startet er nicht. Kopier ich manuell den Profil Ordner nach C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players läuft es einwandfrei, nur ist das keine Lösung. Ich kann ja nicht wissen wer UAC an hat und wer nicht.

    Also bräuchte ich eine Möglichkeit um herausfinden zu können, ob UAC an ist oder nicht und wie ich das Programm bei aktivierter UAC richtig starten kann. Wenn UAC deaktiviert ist, ist das alles kein Problem.

    Hat einer eine Idee, wie das zu lösen ist ?????

    Gruß und THX

  • Hmm habe auch CoD4 und Win7 x64 mit UAC. Kann nur dein Problem irgendwie nicht nachvollziehen.

    Aber du könntest mal folgendes versuchen:

    [autoit]

    #RequireAdmin
    ShellExecute('C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\iw3mp.exe','','C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\')

    [/autoit]

    Ansonsten: Den Status der UAC kann man mit Sicherheit irgendwo in den Tiefen der WMI auslesen ^^

    http://msdn.microsoft.com/en-us/library/aa394572(VS.85).aspx

    EDIT: Habe grad mal ein wenig "gegoogelt" http://forum.sysinternals.com/topic18490_page3.html

    Das sollte mit

    [autoit]

    RegRead

    [/autoit]

    ziemlich einfach zu lösen sein :)

    21 is only half the truth.

    Einmal editiert, zuletzt von Mahagon (7. April 2010 um 23:49)

  • Mahagon

    Wärst du so nett mir zu sagen, wo dein Profilordner ist. C:\users\Rata\AppData\Local\VirtualStore\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players\profiles oder C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players\profiles.

    Aber nachvollziehen kann ich´s auch nicht wirklich, aber Fakt ist, wenn ich COD4 mit
    Vergesst es ! Nachdem ich den Players Ordner einmal nach C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\ kopiert hatte, will er jetzt immer diesen Ordner benutzen und hat C:\users\Rata\AppData\Local\VirtualStore\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players komplett vergessen. Also sei´s drum. Ich kann´s jetzt nicht mehr testen und zu einer Neuinstallation hab ich keine Lust!! Mal sehen, ob demnächst einer meckert, ansonsten werd ich´s auch vergessen.

    Würde trotzdem gerne wissen, wo dein Ordner ist Mahago

    Gruß und Thx

  • Hm habe, als ich mein System mal neu aufgesetzt habe, das ganze unter 'C:\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players\profiles' kopiert, aber '%USERPROFILE%\AppData\Local\VirtualStore\Program Files (x86)\Activision\Call of Duty 4 - Modern Warfare\players' scheint der aktuelle Pfad zu sein.

    21 is only half the truth.