wenn ich unter Win7 und höher
Code: Alles auswählen
RunShell("","Regedit.EXE",.T., .F.)
mit diesem Code
Code: Alles auswählen
lSuccess := DllCall( "SHELL32.DLL" , DLL_STDCALL, ;
"ShellExecuteA", AppDesktop():GetHWND(), "open",0, "c:\WINDOWS\regedit.exe",;
0, CurDir(), SW_NORMAL )
wenn ich nun ein Manifest mit dem Abschnitt
Code: Alles auswählen
<!-- Identify the application security requirements. -->
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="requireAdministrator"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
Ich kann aber als User in der CMD Box "Regedit.EXE" eingeben ohne das er Administrator Rechte verlangt ... was ist der Unterschied
---
leider funktioniert
Code: Alles auswählen
RUNDLL32 SHELL32.DLL,Control_RunDLL hotplug.dll
man bekommt zwar die Dialogbox und kann auch alles mögliche "auswerfen" aber kein USB-Drive / Stick
ich habe nun eine Xbase++ App welches mir ein USB Laufwerk "auswerfen" soll ... was es auch tut aber
XP/Win7: Ballontip, Logfile, TONE und kein XppFatal.LOG.
Win8.1/10 : ok (ohne MsgBox) wenn aus Explorer, TC oder CMD mit LBDRIVE.EXE gestartet.
wenn aus CMD/BAT oder dem Total Commander ( Icon Taskbar )
Logfile, TONE und stürzt dann ab mit XppFatal.LOG
Code: Alles auswählen
IF PCOUNT() > 1
GetLogFile()
ENDIF
TONE(1234)
QUIT // <- hier stürzt er ab mit XppFatal.LOG ???
RETURN