bilgisayar reğisterine değer yazmak ve okumak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

bilgisayar reğisterine değer yazmak ve okumak

Mesaj gönderen forumsad »

arkadaşlar bana şöyle bir şey lazım;

programım çalıştığı anda bilgisayarın geçici reğisterine bir değer şifre yazsın

sonra başka bir programımla o registeri okuyup almak istiyorum program kapandığında veya pc kapandığında registerde sıfırlansın

bunu delphi ile nasıl yaparız , hangi konuları araştırmalıyım?

saygılarımla?
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Re: bilgisayar reğisterine değer yazmak ve okumak

Mesaj gönderen mrmarman »

Merhaba.

(1) Sanırım bir program sizin geçiş anahtarınız olarak kullanılacak ama kapalı iken bu anahtarın devre dışı olması gerekecek...
(2) Programın harici bir etkiyle (killprocess) sonlandırılması (görev yöneticisinden mesela) bu registerde mahsur kalacak veri için nasıl bir çözüm üretilebilir...

- Sorunun cevabı sayılacak basit yöntem, Windows Registry'de LOCAL_USER bloğunda sadece senin bildiğin uygun bir yere başlık açabilir, oradan haberleştirebilirsiniz. Böylece (2) nolu durum için oraya zaman aşımını ifade edebilecek bir tarih/zaman bilgisi de koyarsın ki, ana program eğer örneğin son 30 saniye gibi bir periyodla tazelenmemiş ise ikinci program bu anahtarı dikkate almaz şeklinde bir yapı oluşturulabilir :idea: .
Resim
Resim ....Resim
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: bilgisayar reğisterine değer yazmak ve okumak

Mesaj gönderen forumsad »

teşekkürler hocam bir programda rastladım

Kod: Tümünü seç

//***********************************************************************
procedure OrtakAlaninit;
var
  h: hwnd;
begin
try
  h := CreateFileMapping($FFFFFFFF, // use paging file
    0, // no security attributes
    PAGE_READWRITE, // read/write access
    0, // size: high 32-bits
    1001 * 15, // size: low 32-bits
    'ENDA_OPC_SHMEM'); // name of map object
//                         'Local\\ENDA_SIM_SHMEM');  // name of map object
  if h = 0 then
    exit;
  lpvMem := MapViewOfFile(h, // object to map view of
    FILE_MAP_WRITE, // read/write access
    0, // high offset:  map from
    0, // low offset:   beginning
    0); // default: map entire file
  if lpvMem = nil then
    exit;
burda program bilgileri bir dosyaya yazıyor başka bir programlada o dosyayı okuyor sanırım
ben windows reğisterlerine yazıyor diye düşünmüştüm ama bir dosyaya yazıyor gibi görünüyor..

ben sorunumu register bmlümünde halledeceğim sanırım

saygılarımla
ilğinize teşekkürler
Cevapla