Bilgisayar Güç Düğmesi Seçenekleri.
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 330
- Kayıt: 09 Mar 2004 11:18
- Konum: Konya
- İletişim:
Bilgisayar Güç Düğmesi Seçenekleri.
Masaüstü Sağ Tıkladığınızda gelen pencereden "Ekran Koruyucu" Sekmesinde bulunan "GÜÇ" düğmesini tıkladığınızda karşınıza "GÜÇ SEÇENEKLERİ ÖZELLİKLERİ" penceresi geliyor.
Bu pencerede "GELİŞMİŞ" sekmesini altında
"Bilgisayarımın Güç Düğmesine Bastığımda : " Etiketi altında
- Hiçbirşey Yapma,
- Ne yapacağımı Sor,
- Askıya Al,
- Bilgisayarı Kapat
seçenekleri geliyor....
Bu seçeneklere Porgram içerisinden nasıl müdahale edebiliriz?
Bu pencerede "GELİŞMİŞ" sekmesini altında
"Bilgisayarımın Güç Düğmesine Bastığımda : " Etiketi altında
- Hiçbirşey Yapma,
- Ne yapacağımı Sor,
- Askıya Al,
- Bilgisayarı Kapat
seçenekleri geliyor....
Bu seçeneklere Porgram içerisinden nasıl müdahale edebiliriz?
Re: Bilgisayar Güç Düğmesi Seçenekleri.
Kod: Tümünü seç
function PowerGetActiveScheme(UserRootPowerKey: HKEY; var ActivePolicyGuid:PGUID): DWORD; stdcall; external 'PowrProf.dll';
function PowerWriteACValueIndex(RootPowerKey: HKEY; const SchemeGuid,
SubGroupOfPowerSettingsGuid, PowerSettingGuid: PGUID; AcValueIndex: DWORD): DWORD; stdcall; external 'PowrProf.dll';
function PowerWriteDCValueIndex(RootPowerKey: HKEY; const SchemeGuid,
SubGroupOfPowerSettingsGuid, PowerSettingGuid: PGUID; DcValueIndex: DWORD): DWORD; stdcall; external 'PowrProf.dll';
function PowerSetActiveScheme(UserRootPowerKey: HKEY; const SchemeGuid: PGUID): DWORD; stdcall; external 'PowrProf.dll';
function ChangePWRButtonPolicy(ValueIndex: DWORD): Boolean;
const
PBUTTONACTION: TGuid = '{7648EFA3-DD9C-4E3E-B566-50F929386280}';
GUID_SYSTEM_BUTTON_SUBGROUP: TGuid = '{4f971e89-eebd-4455-a8de-9e59040e7347}';
var
ptrActiveGuid: PGUID;
begin
Result := False;
ptrActiveGuid := nil;
if PowerGetActiveScheme(0, ptrActiveGuid) = 0 then
try
if PowerWriteACValueIndex(0, ptrActiveGuid, @GUID_SYSTEM_BUTTON_SUBGROUP, @PBUTTONACTION, ValueIndex) = 0 then
if PowerWriteDCValueIndex(0, ptrActiveGuid, @GUID_SYSTEM_BUTTON_SUBGROUP, @PBUTTONACTION, ValueIndex) = 0 then
Result := (PowerSetActiveScheme(0, ptrActiveGuid) = 0);
finally
LocalFree(HLOCAL(ptrActiveGuid));
end;
end;
0 - Hiçbirşey Yapma
1 - Ne yapacağımı Sor
2 - Askıya Al
3 - Bilgisayarı Kapat
There's no place like 127.0.0.1
-
- Üye
- Mesajlar: 330
- Kayıt: 09 Mar 2004 11:18
- Konum: Konya
- İletişim:
Re: Bilgisayar Güç Düğmesi Seçenekleri.
@SimaWB teşekkürler
Gün içerisinde deneyeceğim...
Gün içerisinde deneyeceğim...
-
- Üye
- Mesajlar: 330
- Kayıt: 09 Mar 2004 11:18
- Konum: Konya
- İletişim:
Re: Bilgisayar Güç Düğmesi Seçenekleri.
Kodu projeye ekledim,
Uses satırına "Registry" ekledim, proje derleniyor...
cmd'dewn "regsvr32 PowrProf.dll" komutu ile dll kaydettim...
ancak programı çalıştırdığımda "Giriş Noktası Bulunamadı" hatası alıyorum...
hata ile ilgili önerilerinizi alabilir miyim!
Uses satırına "Registry" ekledim, proje derleniyor...
cmd'dewn "regsvr32 PowrProf.dll" komutu ile dll kaydettim...
ancak programı çalıştırdığımda "Giriş Noktası Bulunamadı" hatası alıyorum...
hata ile ilgili önerilerinizi alabilir miyim!
Re: Bilgisayar Güç Düğmesi Seçenekleri.
PowrProf.dll'i register etmenize gerek yok. System klasöründe bulunan (Sanırım Win 98'den beri) bir dll dosyası bu. Direk olarak barındırdığı fonksiyonları kullanabilirsiniz. Yazdığım örnek kodları direk projenizde deneyebilirsiniz.
There's no place like 127.0.0.1
-
- Üye
- Mesajlar: 330
- Kayıt: 09 Mar 2004 11:18
- Konum: Konya
- İletişim:
Re: Bilgisayar Güç Düğmesi Seçenekleri.
Projeye ekledim,
ancak projeyi çalıştırmak istediğimde doğrudan "Giriş Noktası Bulunamadı" hatası ile karşılaştım....
Sonradan yukarıda belirttiğim adımları denedim, ancak gene sonuç değişmedi...
Farklı bir makinada tekrar deneyeceğim...
ancak projeyi çalıştırmak istediğimde doğrudan "Giriş Noktası Bulunamadı" hatası ile karşılaştım....
Sonradan yukarıda belirttiğim adımları denedim, ancak gene sonuç değişmedi...
Farklı bir makinada tekrar deneyeceğim...
Re: Bilgisayar Güç Düğmesi Seçenekleri.
Dll bulunmadığında o hatayı alırsınız.
PowrProf.dll, benim PC'de (Win 7 x86) C:\Windows\System32 içerisinde mevcut. Siz de var mı onu kontrol edin. Ekte bu dll'i bulabilirsiniz. Belki işinize yarar.
PowrProf.dll, benim PC'de (Win 7 x86) C:\Windows\System32 içerisinde mevcut. Siz de var mı onu kontrol edin. Ekte bu dll'i bulabilirsiniz. Belki işinize yarar.
- Dosya ekleri
-
- powrprof.zip
- PowrProf.dll
- (60.95 KiB) 66 kere indirildi
There's no place like 127.0.0.1
-
- Üye
- Mesajlar: 330
- Kayıt: 09 Mar 2004 11:18
- Konum: Konya
- İletişim:
Re: Bilgisayar Güç Düğmesi Seçenekleri.
Dosya için teşekkür ederim...
bendeki dll 6.0.2900.5512
gönderdiğin dll sürümü 6.1.7600.16385
işletim sisteminden kaynaklı bir sorun ( xp SP3 )
dll değiştirdiğimde de farklı procedureler arıyor... XP ve öncesi ise pasif bıraktığımda sorun kalmayacak...
bendeki dll 6.0.2900.5512
gönderdiğin dll sürümü 6.1.7600.16385
işletim sisteminden kaynaklı bir sorun ( xp SP3 )
dll değiştirdiğimde de farklı procedureler arıyor... XP ve öncesi ise pasif bıraktığımda sorun kalmayacak...
Re: Bilgisayar Güç Düğmesi Seçenekleri.
Haklısın.
PowerGetActiveScheme fonksiyonuna baktığımda gördüm:
Minimum supported client = Windows Vista yazıyor.
PowerGetActiveScheme fonksiyonuna baktığımda gördüm:
Minimum supported client = Windows Vista yazıyor.
There's no place like 127.0.0.1