C # Drag drop funktioniert nicht auf Windows 7
Habe ich ein Projekt für eine ganze Weile mit C# - winforms. Ich habe implementiert eine drag & drop-Funktion, bevor windows 7 veröffentlicht wurde. Arbeitete wie ein Charme. Jedoch, wenn Sie verwenden windows 7 funktioniert es nicht. Das event gar nicht ausgelöst.
AllowDrop
auf true gesetzt ist. Bei der Anmeldung zu DragEnter
es nicht genannt in windows 7 (nicht sicher über vista). Aber auf XP funktioniert es den ganzen Weg. Das Programm ist die Ausführung mit administritave Privilegien.
Ist, gibt es einen Unterschied in der drag & drop im windows 7 vs xp? Weiß nicht, ob es relevant ist, aber ich bin mit der x64
Kommentar zu dem Problem
Ich hatte ein etwas ähnliches problem mit einem neuen Silverlight-Projekt. Die drag-and-drop nicht funktionierte, weil der Sicherheits-features von meinem browser. Verwenden Sie ein Webbrowser-Steuerelement in Ihre winforms?
Ich habe bemerkt, dass beim ausführen von Anwendungen mit Erhöhten rechten in Windows 7 drag & drop wird deaktiviert.
InformationsquelleAutor der Frage Oskar Kjellin | 2010-05-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Quell-und Ziel-Prozesse müssen kompatibel Sicherheitsstufen\ - Rechte. Zum Beispiel, wenn Ihre Quelle ist Explorer und es läuft mit user-rechten ausgeführt, aber Ihr Ziel-Anwendung ausgeführt wird, mit administrator (erhöhten) Niveau Berechtigung, Sie werden nicht in der Lage, um drag&drop so sieht man dies als eine Frage der Sicherheit als Ziel ausgeführt wird, mit einer höheren Ebene von Privilegien.
InformationsquelleAutor der Antwort Tim Lloyd
Heißt es UIPI, User Interface Privilege Isolation. Entwickelt, um zu verhindern, dass input-injection-exploits von Programmen, die mit eingeschränkten rechten. Es kann deaktiviert werden, müssen Sie dies tun:
<requestedExecutionLevel>
element auf true.Eigentlich nie versucht, diese, ymmv.
InformationsquelleAutor der Antwort Hans Passant
Aus Ihrer Anwendung, rufen Sie ChangeWindowMessageFilter mit den folgenden Werten zu ermöglichen, Drag & Drop zu/von Ihrem erhöhten Anwendung und nicht-erhöhten-Anwendungen wie Explorer:
InformationsquelleAutor der Antwort dmex
Eine Kleine Ergänzung zu dmex ' s post.
Die folgenden definiert, die Variablen und Konstanten.
Vielleicht möchten Sie auch zu prüfen, mit
ChangeWindowMessageFilterEx
wenn Sie die Anwendung auf Windows 7. Ich glaube auch, dass OLE-drag-and-drop können nicht verwenden Sie Windows messaging. So würde es keinen Effekt.InformationsquelleAutor der Antwort BlndLeadingDef
Kann es nichts zu tun, aber ich hatte komische Drag-n-Drop-Probleme mit Windows 8. Es würde die Arbeit für eine Weile und dann aufhören zu arbeiten. Ich konnte nicht per drag-n-drop zwischen Explorer, in einem editor, etc. Es stellt sich heraus, dass, wenn ich interagiert mit einer Hyper-V VM unter windows 7, meine drag-n-drop-Fähigkeit wurde verändert (oder vielleicht war es die ctrl-alt-end-Tastendruck zu simulieren, Strg-alt-entf, um Hyper-V). In jedem Fall, das Problem, das aufgetreten ist, ist das folgende behoben:
Fand ich die Auflösung zu meinem problem hier:
Fix-Drag & Drop-Funktionalität Funktioniert Nicht In Windows 7 Vista XP
Im Grunde war die Lösung:
Links-Klick auf eine Datei im explorer, und halten Sie die Maustaste gedrückt, drücken Sie [Esc], dann [Strg], und dann die Maustaste loslassen. Ich muss davon ausgehen, dass dies zurücksetzen einige accessibility-Einstellung oder so etwas.
InformationsquelleAutor der Antwort Metro
Ich hatte dasselbe problem beim Debuggen eines desktop C# - Anwendung aus VS 2015 und Windows 7 x64 als S. O.
Es war aufgrund der administrator-Berechtigung Anwendung über das shortcut von meinem VS-IDE in den desktop (siehe screenshot). Durch das deaktivieren dieser option Drag & Drop-events richtig ausgelöst.
Dank TimLloyd für seine Hilfe.
InformationsquelleAutor der Antwort mggSoft