AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Anhand von Listview.handle Itemscaptions auslesen

Anhand von Listview.handle Itemscaptions auslesen

Ein Thema von SirThornberry · begonnen am 11. Mai 2004 · letzter Beitrag vom 12. Mai 2004
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#1

Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 16:11
Hallo,

ich hab ein Programm wir mir informationen in einer Tabelle (Listview) dargestellt werden. Allerdings gibt es in diesem keine Funktion die Einträge irgendwie zu exportieren. Ich brauch allerdings die daten die in dem Listview stehen für eine Statistik.

Ist es irgendwie möglich anhand des Listviewhandles die Captions des Listviews zu erzahlten? Wenn es noch ne Möglichkeit gäbe die Subitems irgendwie abzufragen wäre das noch besser aber mir würde es auch erstmal reichen irgendwie die Captions auszulesen. Es gibt doch bestimmt sowas wie es auch wm_gettext gibt um den Text von Edits zu erhalten...

Gruß Thornberry
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#2

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 16:19
Ich denke man muss dann direkt über die API auf die Listview zu greifen. Vielleicht helfen dir da Luckie's WinAPI-Tutorials ?

Edit: Schau mal hier: http://msdn.microsoft.com/library/de...vm_getitem.asp
Alexander
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 19:09
Moin Sir Thornberry,

Zitat von SirThornberry:
Es gibt doch bestimmt sowas wie es auch wm_gettext gibt um den Text von Edits zu erhalten...
Nein, gibt es leider nicht.
Das gilt für alle Controls, die es erst seit 32-Bit Windows gibt.
Die "alten" Controls (eben auch EDIT), die es schon unter 16 Bit Windows gab, bieten diese Möglichkeit aus Gründen der Abwärtskompatibilität noch.

Alexanders Vorschlag funktioniert nur innerhalb des eigenen Adressraumes, so dass sich das Problem mit dem Auslesen eines fremden ListViews nur über eine Inject DLL lösen lassen dürfte.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#4

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 19:18
[quote="Christian Seehase"]Moin Sir Thornberry,

Zitat von SirThornberry:
Alexanders Vorschlag funktioniert nur innerhalb des eigenen Adressraumes, so dass sich das Problem mit dem Auslesen eines fremden ListViews nur über eine Inject DLL lösen lassen dürfte.
Oh
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 19:18
@Christian Seehase: Es geht doch, ich hab inzwischen etwas gefunden. Und zwar gibt es da die LVM-Messages in der unit "CommCtrl". Allerdings klappt da irgendwas auch nicht mehr. Aber das ist jetzt egal. Es war leider doch keine Komponente die vom Listview abgeleitet wurde und somit brauch ich das ganze auch nicht mehr..
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#6

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 19:25
Trotzdem wäre es vielleicht interessant, wenn du den Code hierein oder in die Codelib packst (wenn er denn halbwegs funktioniert...)
Alexander
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 19:25
Moin Sir Thornberry,

Zitat von SirThornberry:
Es geht doch, ich hab inzwischen etwas gefunden. Und zwar gibt es da die LVM-Messages in der unit "CommCtrl".
nein, es geht nicht.
Wie oben schon beschrieben funktionieren die LVM Messages nicht über Prozessgrenzen hinweg.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 23:02
Prinzip: Reservier dir Speicher im fremden Prozess mit MSDN-Library durchsuchenVirtualAllocEx. Schreib deine Infos da rein mit MSDN-Library durchsuchenWriteProcessMemory, dann kiopierts du die Struktur im Speicher des fremden Prozesses mit MSDN-Library durchsuchenReadProcessMemory in eine identische Struktur in einen Speicherbereich deines Prozesses. Und wie das alles praktisch fuktioniert, kannst du dir an meinen LuckieDips ankucken. Zu finden auf meinmer Freeware-Seite mit Source.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 23:04
@Luckie: schlegt das Counten der Items auch fehl wenn die ListView nicht zum eigenen Prozess gehört?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#10

Re: Anhand von Listview.handle Itemscaptions auslesen

  Alt 11. Mai 2004, 23:30
LVM_GETITEMCOUNT kannst du auch an fremde Prozesse schicken, da es keinen Pointer benutzt.
Das Problem bei solchen Messages ist eigentlich nur, wenn ein Puffer benötigt wird, der in Form eines Pointers angegeben ist. Bei 9x soll man da MMFs benutzen um einen SharedMemory-Block einzublenden, bei NT klappt das leider nicht mehr, da geht dann nur Luckies Variante mit VirtualAllocEx (die wiederum mit 9x nicht mehr geht, alles ziemlich inkonsequent ).
LVM_GETITEMCOUNT benutzt aber keinen Pointer, um den Wert zurückzugeben (z.B. eine Struktur oder sowas), sondern als Ergebnis der Message (somit als Ergebnis der SendMessage-Prozedur), und das klappt auch über Prozessgrenzen hinweg.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz