Autor Beitrag
Cyrus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 56



BeitragVerfasst: Di 20.01.04 11:39 
Moin moin

Ist es möglich den power knopf anderst weitig zu verwenden als nur zum aus schalten des computers ?

Ich möchte dass wenn man auf den power knopf drückt dass es dann gewisse funktionnen ausführt (z.B. ein lied weiterschalten bei winamp) der pc soll nicht beendet werden wenn man auf den power knopf drückt sondern es soll eine andere funktion aufgerufen werden geht das irgend wie oder wie mache ich das am besten ?

Greetz Cyrus

Moderiert von user profile iconUGrohne: Topic verschoben

_________________
Wer glaub er ist, hört auf zu werden!
Delphi Rulez!!!
Cyrus Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 56



BeitragVerfasst: Mi 21.01.04 10:34 
Problem gelöst und zwar so :

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
unit Unitapm; 

interface 

uses 
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 
  APM, ExtCtrls; 

const 
  PBT_APMQUERYSUSPEND       = 0{Request for permission to suspend.} 
  PBT_APMQUERYSUSPENDFAILED = 2{Suspension request denied.} 
  PBT_APMSUSPEND            = 4{System is suspending operation.} 
  PBT_APMRESUMECRITICAL     = 6{Operation resuming after critical suspension.} 
  PBT_APMRESUMESUSPEND      = 7{Operation resuming after suspension.} 
  PBT_APMBATTERYLOW         = 9{Battery power is low.} 
  PBT_APMPOWERSTATUSCHANGE  = 10{Power status has changed.} 
  PBT_APMOEMEVENT           = 11{OEM-defined event occurred.} 

type 
  TForm1 = class(TForm) 
    procedure WMPOWER( var Message: TMessage); message WM_POWER; 
  private 

    { Private-Deklarationen } 
  public 
    { Public-Deklarationen } 
  end

var 
  Form1: TForm1; 

implementation 

{$R *.DFM} 

procedure doWinampCommand( const i1: integer); 
var 
  h: integer; 
begin 
  h := FindWindow('Winamp v1.x'nil); 
  sendMessage(h, WM_COMMAND, i1, 0); 
end

procedure SysFoucs(hWnd:integer); 
begin 
  setfocus(hWnd); 
  SetwindowPos(hwnd,HWND_BOTTOM,0,0,0,0,0); 
end

procedure TForm1.WMPOWER( var Message: TMessage); 
var hWnd:integer; 
begin 
  case Message.WParam of 
    PWR_SUSPENDREQUEST: Message.Result := PWR_FAIL; 
    else defaultHandler( Message); 
  end
  doWinampCommand(40048); 
  hWnd:=FindWindow(pchar('#32770'),nil); 
  SysFoucs(hWnd); 
  keybd_event(Ord(13), 000); 
end
end.


Greetz Cyrus[/code]

_________________
Wer glaub er ist, hört auf zu werden!
Delphi Rulez!!!