![]() |
ShellListView - ComponentToString - fehlt da nicht etwas?!
(Delphi XE)
Hallo zusammen :) Ich sitze zurzeit an 'nem echten Problem und bekomme es einfach nicht gelößt. Ich erarbeite zur Zeit einen Netzwerkclient, welcher mit anderen synchronisiert Ordner und Dateien über die TShellListView darstellt. Die Verbindung hab ich ziehmlich einfach über Stringversand (TCP) realisiert. Nun dachte ich mir, dass es ganz praktisch wäre, wenn ich die ShellListView, wenn sie ein Nutzer abändert, mit den anderen Clients immer als Instanz synchron halte, dann muss ich mich nicht um jede Eigenschaft einzeln kümmern. Also wollte ich die Komponente übers Netzwerk als String verschicken. Erst die Komponente ![]()
Code:
'Root' und alles stimmt auch, nur fehlen die Items.
object shList: TShellListView
Left = 256 Top = 8 Width = 498 Height = 401 AutoRefresh = True ObjectTypes = [otFolders, otNonFolders, otHidden] Root = 'C:\' Sorted = True ReadOnly = False HideSelection = False TabOrder = 0 ViewStyle = vsReport end TShellListView ist von TCustomShellListView, welche von TCustomListView, IShellCommandVerb abgeleitet ist, ich habe also Zugriff auf die 'Item's. Wie bekomme ich also den Inhalt mitgesendet? Oder gibt es noch eine andere Möglichkeit eine Komponente vollständig in einen String (ein Stream würde auch gehen) umzusetzen, so dass man eine 1:1 Kopie erhält? Lg :) |
AW: ShellListView - ComponentToString - fehlt da nicht etwas?!
Hilft Dir Read-/WriteComponent von TStream weiter?
|
AW: ShellListView - ComponentToString - fehlt da nicht etwas?!
Bei einer ShellListView würde es mich auch extrem wundern, wenn das möglich wäre. Die jeweiligen Unterordner werden logischerweise erst beim Aufklappen gefüllt, sonst würde es viel zu lange dauern. Die können also niemals als Daten da sein.
Und auch die sichtbaren Knoten mappen ja nur auf den entsprechenden Knoten im Dateisystem. Den gibt es auf einem anderen Rechner aber nicht. Deshalb sehe ich hier keinerlei Möglichkeiten das so sinnvoll umzusetzen wie du es dir vorstellst. Du wirst die entsprechenden Daten schon selbst ermitteln und schicken müssen. Nebenbei geht das dann auch gleich viel schneller... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz