windows kaç bit?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

windows kaç bit?

Mesaj gönderen zeynel6363 »

arkadaşlar forumda windowsun kaç bit olduğunu bulan kodu buldum ama kod bende çalışmıyor.
bilgisayarım Windows 7 32 bit ve delphi 7 kullanıyorum.aşağıdaki kodu botona yazıp çalıştırdım hata verdi.kodu
bulduğum sayfaya 2 gündür hata veriyor cevabı yazdım cevabım forumda görüntülenmiyor.
bana yardımcı olursanız sevinirim...yoksa uses kısmına eklemem gereken bir şey mi var anlamadım gitti :(

procedure TFRM_ANA.Button3Click(Sender: TObject);
begin
begin
if Pos( '64-bit', TOSVersion.ToString ) > 0 then /// BURDA HATA VERİYOR.
begin
ShowMessage('64');
end else
ShowMessage('32');
end;
end;
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3077
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Re: windows kaç bit?

Mesaj gönderen sabanakman »

SimaWB yazdı:TOSVersion tipi Delphi XE2 ile birlikte gelmiştir. Ondan önceki sürümler için ilk cevabıma bakabilirsiniz.
viewtopic.php?f=2&t=33412&p=180259#p180259

Delphi 7 de problemi çözmek için ilgili sayfada bir kaç mesaj yukarıda verilen fonksiyonu aşağıdaki gibi kullanabilirsiniz.

Kod: Tümünü seç

if IsWin64 then
begin
ShowMessage('64');
end else
ShowMessage('32');
end;
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Efe
Üye
Mesajlar: 56
Kayıt: 09 Kas 2014 11:14

Re: windows kaç bit?

Mesaj gönderen Efe »

Aşşağıdaki fonksiyonu kullanabilirsiniz

Kod: Tümünü seç

function IsWindows64: Boolean;
type
  TIsWow64Process = function(AHandle:THandle; var AIsWow64: BOOL): BOOL; stdcall;
var
    vKernel32Handle: DWORD;
  vIsWow64Process: TIsWow64Process;
              vIsWow64: BOOL;
begin
  // 1) Varsayılan olarak 64 bit kullanmıyor olarak kur
  Result := False;

  // 2) kernel32.dll yükle
  vKernel32Handle := LoadLibrary('kernel32.dll');
  if (vKernel32Handle = 0) then Exit; // kernel32.dll yüklenmezse çık

  try

    // 3) Windows Api IsWow64Process yükle
    @vIsWow64Process := GetProcAddress(vKernel32Handle, 'IsWow64Process');
    if not Assigned(vIsWow64Process) then Exit; // IsWow64Process yüklenmezse çık

    // 4) IsWow64Process değilse
    vIsWow64 := False;
    if (vIsWow64Process(GetCurrentProcess, vIsWow64)) then
      Result := vIsWow64;   // Geri dönen değeri al

  finally
    FreeLibrary(vKernel32Handle);  // DLL hafızadan at
  end;
end;
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

Re: windows kaç bit?

Mesaj gönderen zeynel6363 »

Delphi de yeni sayılırım.
fonksiyon kullanmasını bilmiyorum ki :(
yaptığım setup programı.iş yerinde kullanacağım.işlem şöyle olacak:
eğer 32 bit ise button1.click
değilse button.click
tüm buttonların kodları hazır ama soruda dediğim gibi 32 bit mi 64 bit mi onu anlayacak kod lazım.
belki çok zor bir kod değil ama benim gibi biraz acemi biri için zor geldi maalesef
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

Re: windows kaç bit?

Mesaj gönderen zeynel6363 »

delphi 7 de şu kod çalışmadı:

procedure TFRM_ANA.Button3Click(Sender: TObject);
begin
if IsWin64 then
begin
ShowMessage('64');
end else
ShowMessage('32');
end;
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: windows kaç bit?

Mesaj gönderen SimaWB »

zeynel6363 yazdı:delphi 7 de şu kod çalışmadı:

procedure TFRM_ANA.Button3Click(Sender: TObject);
begin
if IsWin64 then
begin
ShowMessage('64');
end else
ShowMessage('32');
end;
Çalışmadı ???
En son SimaWB tarafından 30 Kas 2014 05:58 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
There's no place like 127.0.0.1
Efe
Üye
Mesajlar: 56
Kayıt: 09 Kas 2014 11:14

Re: windows kaç bit?

Mesaj gönderen Efe »

zeynel6363 yazdı:Delphi de yeni sayılırım.
fonksiyon kullanmasını bilmiyorum ki :(
yaptığım setup programı.iş yerinde kullanacağım.işlem şöyle olacak:
eğer 32 bit ise button1.click
değilse button.click
tüm buttonların kodları hazır ama soruda dediğim gibi 32 bit mi 64 bit mi onu anlayacak kod lazım.
belki çok zor bir kod değil ama benim gibi biraz acemi biri için zor geldi maalesef
functionlar geriye değer döndürür, aşşağıdaki şekilde kullanabilirsiniz.

begin

if IsWindows64 <> False then
button.click else
button1.click;
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

Re: windows kaç bit?

Mesaj gönderen zeynel6363 »

SimaWB yazdı:
zeynel6363 yazdı:delphi 7 de şu kod çalışmadı:

procedure TFRM_ANA.Button3Click(Sender: TObject);
begin
if IsWin64 then
begin
ShowMessage('64');
end else
ShowMessage('32');
end;
Çalışmadı ???
EVET HOCAM ÇALIŞMADI MAALESEF.USES E EKLEMEM GEREKEN BİŞEY Mİ VAR ACABAB?5 GÜNDÜR BU KOD İÇİN UĞRAŞIYORUM AMA KOD ÇALIŞMADI GİTTİ.SEBEBİ NE Kİ?
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: windows kaç bit?

Mesaj gönderen SimaWB »

Anlatmak istediğim; "Çalışmadı" derken neyi kastediyorsunuz? Hata mı verdi, yoksa istediğiniz sonucu mu alamadınız? Hata verdi ise hata mesajı nedir vs.....
There's no place like 127.0.0.1
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

Re: windows kaç bit?

Mesaj gönderen zeynel6363 »

HOCAM KOD ÇALIŞMIYOR.
begin
if IsWin64 then
begin
ShowMessage('64');
end else
ShowMessage('32');

if IsWin64 then SATIRINDA HATA VERİYOR.BU SATIRDA " UNDECLARED İDENTİFİER:'IsWin64' " HATASI VERİYOR.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: windows kaç bit?

Mesaj gönderen SimaWB »

IsWin64 fonksiyonu daha önceki soruda verilmişti. Tekrar aynı şeyi sorduğunuz halde sabanakman linki yukarıda yazmış. Hatta Efe yukarıda IsWin64 fonksiyonunu tekrar yazmış!!!
Yapmanız gereken bu fonksiyonu dosyanız içerisine kopyalamak.
There's no place like 127.0.0.1
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

Re: windows kaç bit?

Mesaj gönderen zeynel6363 »

vallaha hocam kod aynen aşağıdaki gibi...kodda bir hata var sanki...yada bu kod delphi7 için uygun değil.hata mesajınıın görüntüsünü eklemeye çalıştım site dosya eklemiyor...kod aynen şu:


procedure TFRM_ANA.Button3Click(Sender: TObject);
begin
if IsWindows64 <> False then //// HATA VERİLEN SATIR.IsWindows64 DA HATA VAR DİYOR.
begin
ShowMessage('64');
end else
ShowMessage('32');
end;

İSTERSENİZ KODU SİZDE BİR BUTONA KOPYALAYIP DENEYİN.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: windows kaç bit?

Mesaj gönderen SimaWB »

zeynel6363 yazdı:İSTERSENİZ KODU SİZDE BİR BUTONA KOPYALAYIP DENEYİN.
Kodu denememe gerek yok. Probleminiz, yaptığınız hata belli. Ama nedense, ISRARLA aynı şeyi yazıp duruyorsunuz.
IsWin64 yada IsWindows64 (Nedense cevaplarınızda farklı) sizin tanımladığınız bir fonksiyon olmalı. Yani öncelikle sizin bu fonksiyonu tanımlamanız gerekiyor. Ki bu fonksiyon size yukarıda 3 kez belirtildi.
Öncelikle Delphi'de fonksiyon / procedure tanımlama ve kullanma konusunu araştırın bence.
Hatta en güzeli önce bir Delphi kitabı alıp, oradan başlayın.
http://www.dr.com.tr/Catalog/Products/S ... agesize=25
http://www.kitapyurdu.com/arama/default ... %2C&page=3
http://www.hepsiburada.com/liste/search ... ext=delphi
There's no place like 127.0.0.1
zeynel6363
Üye
Mesajlar: 25
Kayıt: 27 Kas 2014 02:32

Re: windows kaç bit?

Mesaj gönderen zeynel6363 »

teşekkürler hocam :)))
çok sert bir cevağp olmuş sanki..kendimi lise yıllarında öğretmenden fırça yiyen öğrenci gibi hissettim vallahi :)))

ilginiz için tekrar teşekkürler.
Efe
Üye
Mesajlar: 56
Kayıt: 09 Kas 2014 11:14

Re: windows kaç bit?

Mesaj gönderen Efe »

Yukarıdaki kodlarada hata yok. Sorun sizin function, procedure nasıl kullanılır onu öğrenmeniz :D
Cevapla