AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Listview vsList Multiselect bei RDP

Ein Thema von Thomasl · begonnen am 16. Apr 2021 · letzter Beitrag vom 16. Apr 2021
Antwort Antwort
Thomasl

Registriert seit: 19. Jun 2006
Ort: Vreden
43 Beiträge
 
Delphi XE4 Enterprise
 
#1

Listview vsList Multiselect bei RDP

  Alt 16. Apr 2021, 12:17
Delphi XE4

Folgendes Problem
Listview:
ViewStyle = vsList
MultiSelect = true
Ein paar Items Hinzufügen

Programm im RemoteDesktop (RDP) verwenden
mehrere Items auswählen
RemoteDesktop schießen und neu Verbinden
Die Ausgewählten Items sind jetzt andere, z.B nur noch das Erste von den vorher gewählten
Es wird kein OnChange Event ausgelöst.

Hat jemand das gleiche verhalten schon beobachtet?
  Mit Zitat antworten Zitat
rwalper

Registriert seit: 6. Sep 2006
38 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Listview vsList Multiselect bei RDP

  Alt 16. Apr 2021, 13:13
Ähnliche Probleme mit RDP sind schon länger bekannt, beim Reconnect der Verbindung wird für alle Fenster deiner Anwendung RecreateWnd aufgerufen. Damit werden z.B. die Fensterhandles neu erzeugt usw.

Ein Versuch wäre es Wert, die CreateWnd-Prozedur deiner TForm zu überschreiben:
Delphi-Quellcode:
procedure TDeinForm.CreateWnd;
begin
  inherited;
  if csRecreating in ControlState then
  begin
    // z.B. die Selektion wiederherzustellen
  end;
end;
Alternativ könnte dir vielleicht der folgende Link weiterhelfen:
https://blogs.embarcadero.com/de/how-to-speed-up-remote-desktop-applications/
  Mit Zitat antworten Zitat
Thomasl

Registriert seit: 19. Jun 2006
Ort: Vreden
43 Beiträge
 
Delphi XE4 Enterprise
 
#3

AW: Listview vsList Multiselect bei RDP

  Alt 16. Apr 2021, 15:01
Danke für die schnelle Antwort

Das csRecreating ist bei mir nicht gekommen (im MainForm)
Die Auswahl im Listview stelle ich jetzt bei "WTS_SESSION_UNLOCK" wieder her


Delphi-Quellcode:
procedure TFormMain.WTS_SessionWndProc(var Message: TMessage);
begin
  if Message.Msg = WM_WTSSESSION_CHANGE then
  begin
    case Message.wParam of
      WTS_SESSION_LOCK,
      WTS_REMOTE_DISCONNECT: DoHandleRDPLock;
      WTS_REMOTE_CONNECT,
      WTS_SESSION_UNLOCK: DoHandleRDPUnLock;
    end;
  end;
  Message.Result := DefWindowProc(FMethodWnd, Message.Msg, Message.WParam, Message.LParam);
end;
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.149 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Listview vsList Multiselect bei RDP

  Alt 16. Apr 2021, 15:06
man könnte auch ein dynamisches record array erstellen mit inhalt der listview und checkedstates, bei bedarf wieder hochpumpen.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Thomasl

Registriert seit: 19. Jun 2006
Ort: Vreden
43 Beiträge
 
Delphi XE4 Enterprise
 
#5

AW: Listview vsList Multiselect bei RDP

  Alt 16. Apr 2021, 15:37
Mir fehlte nur das Event, wann ich wiederherstellen muss.

Die Procedure um die Selected wiederherstellen hatte ich schon.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
1.782 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Listview vsList Multiselect bei RDP

  Alt 16. Apr 2021, 16:35
Ich glaube, dass in 10.4.2 in bezug auf RDP ein paar Verbesserungen drin sind...
...evtl. mag ja Herr Eissing Werbung dafür machen
  Mit Zitat antworten Zitat
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 22:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf