kein Drag & Drop in Windows7 mit aktivierter UAC

  • Hallo *.*

    Gestern hab ich was sonderbares entdeckt, ein Filedrop aus dem Explorer in eine Editbox funktioniert bei Win7 (wohl auch bei Vista) nicht, wenn die UAC eingeschaltet ist (auch im niedrigsten Level). Ich kann das auch nicht für eine Fehlermeldung abfangen, denn das $GUI_EVENT_DROPPED wird gar nicht erst "erreicht". Ahja, vom Totalcommander aus funktionierts ! Kann das jemand bestätigen ? Beispielcode zum probieren anbei.
    Ich selbst hab die UAC zwar abgeschaltet, stell aber anderen das Prog zur Verfügung und es sollte auch irgendwie klappen, wenn jemand
    a) UAC an hat
    b) den Explorer benutzt
    oder zumindest eine Schwachsinns Meldung kommen wie "Sind sie sicher, daß sie das File per drag & drop bewegen möchten ?" :D

    Spoiler anzeigen
    [autoit]


    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $Form1 = GUICreate("Form1", 361, 227, -1, -1, $WS_SYSMENU, BitOR($WS_EX_TOPMOST,$WS_EX_ACCEPTFILES))
    $Input1 = GUICtrlCreateInput("Hier ein File reinziehen", 32, 48, 289, 21)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $GUI_EVENT_DROPPED
    GUICtrlSetData($Input1,@GUI_DragFile)
    EndSwitch
    WEnd

    [/autoit]

    Einmal editiert, zuletzt von Jonny (17. November 2009 um 13:03)

  • Funktioniert bei mir (Win7, 64 Bit, UAC eingeschaltet) einwandfrei (sowohl vom Explorer als auch vom TotalCommander). Sogar ohne UAC-Nachfrage.

    ups, das ist Mist, ich hatte gehofft, daß funktioniert bei niemandem ?( Ich kann das nämlich 100%ig nachvollziehen. UAC an, Drop geht nicht, UAC aus, Drop geht. Das ganze Phänomen auch wenn man von einem Explorer in den Totalcommander zieht, da kommt dieses "Drop Verbotszeichen" (durchgestrichener Kreis). Somit scheidet die AutoIt Version (hab 3.3.0.0) aus

  • Oscar : Hast es in Scite probiert oder compiliert ? Ich glaub es liegt am Compiler, der müllt irgendwas rein und es is auch egal, was man dem für einen ex level mitgibt...von none bis admin, gleiche Auswirkung X(


    ahja daheim win7-32bit und hier in der Firma 64, is das gleiche.