Einzelnen Beitrag anzeigen

Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#8

Re: Vista Aero Effekt deaktiveren

  Alt 12. Jul 2009, 17:02
@NamenLozer, Das Beispiel oben im Link gefällt dir wohl nicht ?

@freak4fun, fasst nur eine Copy&Paste Action


Eine AllinOne-Procedure:

Delphi-Quellcode:
procedure AeroSetEnable (enable: boolean);
const
  DWM_EC_DISABLECOMPOSITION = 0;
  DWM_EC_ENABLECOMPOSITION = 1;
var
  DwmEnableComposition: function(uCompositionAction: UINT): HRESULT; stdcall;
  DWMlibrary: THandle;
begin
  DWMlibrary := LoadLibrary ('DWMAPI.dll');

  if DWMlibrary <> 0 then
  begin
    DwmEnableComposition := GetProcAddress(DWMLibrary, 'DwmEnableComposition');

    if @DwmEnableComposition <> nil then
    begin
      if enable
        then DwmEnableComposition(DWM_EC_ENABLECOMPOSITION)
        else DwmEnableComposition(DWM_EC_DISABLECOMPOSITION);
    end;
  end;

  FreeLibrary(DWMlibrary);
end;


// Aufruf zum ausschalten des Aeroef.
procedure TForm1.FormCreate(Sender: TObject);
begin
  AeroSetEnable(false);
end;

// Edit:
Bin etwas zersteut heute, die Funktion im Link oben ist etwas desulat..
Ich habe mal hier eine einfache Variante bereitgestellt.

Wird die Procedure wie im Beispiel aufgerufen bleibt der Aeroeffect so lange aus bist das
Programm beendet wird.
In Normalfall würde ich LoadLibrary & FreeLibrary aus der Procedure lösen und die DLL
Im Create & Destroy laden bzw. entladen.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat