![]() |
Code wie anwenden...
Wie kann ich diesen Delphi Code in meinen Programm anwenden?
Delphi-Quellcode:
unit PowerButton;
/////////////////////////////////////////////////////////////////////////////////////// //Dies ist eine Komponente um den Powerknopf anzusteuern. //Eigenschaften: //PowerOffEnable:boolean // >false lässt den Pc nicht mehr herunterfahren //Ereignisse: // OnPowerbuttonpress // >Wird ausgeführt wenn der Powerbutton gedrückt wurde // //Programmed by CTV => [url]www.ctvnet.ch[/url] // //Komponente darf frei für alles verwendet werden copyright darf nicht entfernt werden /////////////////////////////////////////////////////////////////////////////////////// interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Menus, ShellApi, ExtCtrls, Dialogs; type TPowerButton = class(TComponent) private FHooked: Boolean; FOnPowerbuttonPress: TNotifyEvent; PPowerOffEnable: Boolean; function MessageHook(var Msg: TMessage): Boolean; protected procedure DoPowerbuttonPress; dynamic; public Version, Hersteller: string; IResultHi, IResultLo, ILParamHi, ILParamLo, IWParamHi, ILParam, IWParamLo, IWparam, Imsg, IResult: Integer; constructor Create(AOwner: TComponent); override; destructor Destroy; override; published {events} property OnPowerbuttonPress: TNotifyEvent read FOnPowerbuttonPress write FOnPowerbuttonPress; {properties} property PowerOffEnable: Boolean read PPowerOffEnable write PPowerOffEnable; end; procedure Register; implementation const PBT_APMQUERYSUSPEND = 536; {Request for permission to suspend.} procedure Register; begin RegisterComponents('Zusätzlich', [TPowerButton]); end; constructor TPowerButton.Create(AOwner: TComponent); begin inherited Create(AOwner); Version := '1.0.0.0'; Hersteller := 'CTVNet.ch'; FHooked := False; if not (csDesigning in ComponentState) then begin Application.HookMainWindow(MessageHook); FHooked := True; end; end; procedure TPowerButton.DoPowerbuttonPress; begin if Assigned(FOnPowerbuttonPress) then FOnPowerbuttonPress(Self); end; function TPowerButton.MessageHook(var Msg: TMessage): Boolean; begin IResultHi := Msg.ResultHi; IResultLo := Msg.ResultLo; ILParamHi := Msg.LParamHi; ILParamLo := Msg.LParamLo; IWParamHi := Msg.WParamHi; ILParam := Msg.lParam; IWParamLo := Msg.WParamLo; Imsg := Msg.Msg; IResult := Msg.Result; IWparam := Msg.wParam; if (Msg.Msg = PBT_APMQUERYSUSPEND) and (Msg.wParam = 0) then //win95/98 begin if PPowerOffEnable = False then begin Msg.Result := PWR_FAIL; end; end; if (Msg.Msg = PBT_APMQUERYSUSPEND) and (Msg.wParam = 0) then //winNT,2k,XP begin if PPowerOffEnable = False then begin Msg.Result := BROADCAST_QUERY_DENY; end; end; if (Msg.Msg = PBT_APMQUERYSUSPEND) and (Msg.wParam = 0) then //excute Event begin DoPowerbuttonPress; end; end; destructor TPowerButton.Destroy; begin if FHooked then Application.UnhookMainWindow(MessageHook); inherited Destroy; end; end. |
Re: Code wie anwenden...
so z.B.
Delphi-Quellcode:
var myPowerButton:TPowerButton;
begin myPowerButton:=TPowerButton.Create(self); myPowerButton.PowerOffEnable:=true; myPowerButton.Destroy; end; |
Re: Code wie anwenden...
Du solltest mal danach suchen, wie man Komponenten installiert,
dann kannst Du auch Deinen Powerbutton benutzen. Moin |
Re: Code wie anwenden...
Ich glaube das ist die Erkenntnis die mir fehlt...
Kannste mir helfen... |
Re: Code wie anwenden...
Grr. Jetzt hab ich mich 10 Minuten hingesetzt, und eine Beschreibung gemacht, und dann fällt mir auf, dass es eine Komponente ist :wall:
![]() Das ist ein Tutorial zum Installieren von Komponenten ;) |
Re: Code wie anwenden...
Danke und Sorry wegen deiner Arbeit...
Mal gleich in meine Favoriten aufnehmen... Danke :wink: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:47 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