|
µ¨¸¶´ç °ø½Ä ÀºÇà°èÁ |
ÇϳªÀºÇà 227-910235-83607 |
¿¹±ÝÁÖ ÀÌ»ó±¹(¿î¿µÁø) |
|
|
|
|
|
|
|
|
|
|
°ÁÂ, ÆÁ, Á¤º¸ |
°ÁÂ, ÆÁ, Á¤º¸ ÀÔ´Ï´Ù. |
|
|
|
[FMX] ¸Æ¿¡¼ ¾îÇà ½ÇÇàÇÏ´Â µ¿¾È ȸ麸ȣ±â Enable/Disable |
¹«´ë»Ç
(±è±ÔÇÑ)
2016-04-01 ¿ÀÈÄ 6:21:44
Ä«Å×°í¸®:
ÆÁ
2337ȸ Á¶È¸
µî·ÏµÈ ÆÄÀÏÀÌ ¾ø½À´Ï´Ù.
|
|
|
µû·Î »©¼ unitÀ¸·Î ÇÒ±î ÇÏ´Ù°¡ ±ÍÂú¾Æ¼ ±×³É Ãß°¡ÇÏ¿´½À´Ï´Ù. (¹°·Ð ±×³É Ãß°¡Çϸé dcu¶§¹®¿¡ ºôµå°¡ ¾ÈµË´Ï´Ù. ±×·¡¼ º¹»çÇؼ ÇÊ¿äÇÑ ÇÁ·ÎÁ§Æ®¿¡ »ç¿ëÇÏ¿´½À´Ï´Ù) ȯ°æÀº Delphi 10 Seattle ÀÔ´Ï´Ù.
----------------------------------------- unit Macapi.IOKit
...
const kIOMasterPortDefault: mach_port_t = 0; kIOPlatformUUIDKey = 'IOPlatformUUID';
// add kIOPMAssertionLevelOff = 0; kIOPMAssertionLevelOn = 255; kIOPMAssertionTypeNoDisplaySleep = 'NoDisplaySleepAssertion';
... type ... function ... ... function IOObjectRelease(anObject: io_object_t): kern_return_t; cdecl; external libIOKit name _PU + 'IOObjectRelease';
// add // AssertionID´Â Uint32ÀÇ Æ÷ÀÎÅÍÇü function IOPMAssertionCreateWithName(AssertionType : CFStringRef; AssertLevel : uint32_t; AssertionName : CFStringRef; AssertionID : Pointer) : uint32_t; cdecl; external libIOKit name _PU + 'IOPMAssertionCreateWithName'; function IOPMAssertionRelease(AssertionID : uint32_t) : uint32_t; cdecl; external libIOKit name _PU + 'IOPMAssertionRelease';
--------------------------- example.
TForm1 = class(TForm) procedure BtnDisableClick(Sender: TObject); procedure BtnEnableClick(Sender: TObject); private FSleepAssert : UInt32; public end;
implementation
uses Macapi.IOKit, Macapi.CoreFoundation;
............ procedure TForm1.BtnDisableClick(Sender: TObject); begin FSleepAssert := 0; IOPMAssertionCreateWithName(CFSTR(kIOPMAssertionTypeNoDisplaySleep), kIOPMAssertionLevelOn, CFSTR('MyProject is Good'), @FSleepAssert); if FSleepAssert = 0 then ShowMessage('Disable Failed!!'); end;
procedure TForm1.BtnEnableClick(Sender: TObject); begin if FSleepAssert > 0 then IOPMAssertionRelease(FSleepAssert); end;
|
|
|
|
|
|
|
|
|