![]() |
Neuzeichnen des Desktops verhindern?
Hallo,
ich merke, dass bei Delphi Programmen beim Start (kurz bevor die Form angezeigt wird) meine Desktop-Symbole kurz 1x flackern. Da habe ich gleich mal MS Edge, Windows Live Mail usw. ausprobiert. Da ist dieses Verhalten nicht zu sehen. Kann ich das irgendwie unterbinden? Ein kurzer Test mit "LockWindowUpdate(GetDesktopWindow)" vor "Application.Initialize" hat kein Erfolg gebracht. Hat vielleicht jemand eine Idee? Gruß Mic |
AW: Neuzeichnen des Desktops verhindern?
Was macht dein Programm?
|
AW: Neuzeichnen des Desktops verhindern?
Ich habe mir mal für meinen Thread (TThread) etwas herausgesucht.
In diesem Thread gebe ich "OleInitialize(Nil)" an. Warum weiß ich eigentlich nicht *lach*. Es war halt im Beispiel dabei. Hat lange gedauert aber jetzt habe ich herausgefunden, dass dieser Befehl das einmalige flackern der Desktop-Symbole verursacht. Im Thread nutze ich auch "Wow64EnableWow64FsRedirection" (das kenne ich). Hat OleInitialize(Nil) damit was zu tun? Also ich gebe es so an.
Delphi-Quellcode:
Wie gesagt, es war so in einem Beispiel angegeben. Auch stand dabei, dass "OleInitialize" hier im Thread zusätzlich angegeben werden muss, auch wenn man es außerhalb des Threads nutzt. Oder ging es um "Wow64EnableWow64FsRedirection"? Ist schon lange her. Jedenfalls wenn ich "OleInitialize(Nil)" raus nehme, flackern dann die Desktop-Symbole nicht.
{$IFDEF WIN32}
If IsWindows64 Then Wow64EnableWow64FsRedirection(False); {$ENDIF} OleInitialize(Nil); // Hier dann Funktionen zum abarbeiten von Verzeichnissen OleUninitialize; {$IFDEF WIN32} If IsWindows64 Then Wow64EnableWow64FsRedirection(True); {$ENDIF} Gruß Mic |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:22 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-2025 by Thomas Breitkreuz