Mit Nachrichten wirst du nicht weit kommen. Mit Edits, Listboxen usw geht das noch. Aber auch nur, weil es unter Windows 3.1 ging. Da unter 32-Bit Windows die Speicherbereiche vollkommen getrennt sind unter den Prozessen würde es nicht mehr gehen auf solche Controls in anderen Prozessen zuzugreifen. Aus Kompatibilitätsgründen aber mapped Windows bestimmte nachrichten in einen Speicherbereich der für den Sender und den Empfänger der Nachricht gültig ist, so dass es auch unter 32-Bit Windows geht.
Der Listview gehört zu den neuen Controls die mit Windows 95 eingeführt wurden. Da musste Mircosoft keine Rücksicht nehmen und hat es auch nicht getan. da wird das ganze schon etwas schwieriger. Vom Prinzip sieht es so aus:
- Speicher für die ListviewItem-Struktur im eigenen Prozess reservieren
- Speicher für die ListviewItem-Struktur im fremden Prozess reservieren mit VirtualAllocEx
- LitviewItems im fremden Prozess auslesen und mit WriteProcessMemory in den zufor reservierten Speicher schreiben
- Mit ReadProcesmemory den Speicher auslesen und in den Speicher, den man im eigenen Prozess reserviert hat, kopieren
Wie das praktisch geht, kannst du dir bei meinen
LuckieDIPS angucken