Papierkorbicon finden



  • Hallo Leute!

    Vielleicht könnt ihr mir weiterhelfen? Ich suche nach einer Möglichkeit, auf Icons auf dem Desktop zuzugreifen. Ich möchte deren Position erfragen, um sie daraufhin am Bildschirm zu überzeichnen. In meinem Fall gehts um den Papierkorb, allerdings würde mich auch eine allgemeinere Lösung nicht stören 😉

    Also, ich freue mich auf eure Antworten!

    apiler



  • Dazu musst du Code in Explorer.exe injizieren - es ist also nicth ganze ohne 🙄
    Im Buch "Microsoft Programmierung für Experten" von Jeffrey Richter gibt es dazu auch eine kleine Beispielanwendung.



  • der CLSID für den papierkorb lautet:
    {645FF040-5081-101B-9F08-00AA002F954E}
    also nur in der registry suchen, und die icons ändern...



  • So wie ich das verstanden habe, ist er aber doch weniger am Icon interessiert, sondern an dessen Position!
    Das ListView-Handle ermittelt er so:

    HWND hWndListView = GetFirstChild(GetFirstChild(FindWindow(TEXT("ProgMan"),NULL)));
    

    Das Problem ist jedoch, dass die meisten Steuerelement-Nachrichten, wie z.B. LVM_GETITEM und LVM_GETITEMPOSITION, nicht über Prozessgrenzen hinweg arbeiten.



  • egal, so hat er beide antworten...


Anmelden zum Antworten