2. sayfa (Toplam 3 sayfa)
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 08 Kas 2024, 15:44
gönderen perahi
TRWE_2012 yazdı: 08 Kas 2024, 15:16
Forumsal geri bildirimini aldım ve kodu şöyle yeniden zihinden tasarladım (sabahtan beridir tasarı ile uğraşıyorum, eski günlere geri döndük resmen)
Tasarım Aşaması - 1 :
Bellek Teknolojisi DDR
Bellek Hızı (OC) 400 MT/s 333 MT/s 266 MT/s
-
Bellek Teknolojisi DDR2
Bellek Hızı (OC) 533 MT/s 667 MT/s 800 MT/s 1066 MT/s
-
Bellek Teknolojisi DDR3
Bellek Hızı (OC) 1066 MT/s 1333 MT/s 1600 MT/s 1866 MT/s 1867 MT/s 2000 MT/s 2133 MT/s 2400 MT/s 2666 MT/s
-
Bellek Teknolojisi DDR4
Bellek Hızı (OC) 1333 MT/s 2133 MT/s 2400 MT/s 2666 MT/s 2933 MT/s 3000 MT/s 3200 MT/s 3466 MT/s 3600 MT/s 3733 MT/s 3866 MT/s 4000 MT/s 4133 MT/s 4266 MT/s 4400 MT/s 4600 MT/s 4800 MT/s 5000 MT/s 5066 MT/s 5100 MT/s 5133 MT/s 5333 MT/s
-
Bellek Teknolojisi DDR5
Bellek Hızı (OC) 4800 MT/s 5200 MT/s 5600 MT/s 6000 MT/s 6200 MT/s 6400 MT/s 6600 MT/s 6800 MT/s 7000 MT/s 7200 MT/s 7400 MT/s 7600 MT/s 7800 MT/s 8000 MT/s 8200 MT/s
Bunların aritmetik ortalaması alındı...
DDR: 333 MT/s
DDR2: 766.5 MT/s
DDR3: 1950.33 MT/s
DDR4: 3960.57 MT/s
DDR5: 7000 MT/s
Tasarım Aşaması - 2 :
Sonra bu ortalamatik değerler
Kod: Tümünü seç
"rem Determine memory type based on speed
if %memorySpeed% lss 800 (
set memoryTypeName=DDR
) else if %memorySpeed% lss 1600 (
set memoryTypeName=DDR2
) else if %memorySpeed% lss 2400 (
set memoryTypeName=DDR3
) else if %memorySpeed% lss 3200 (
set memoryTypeName=DDR4
) else (
set memoryTypeName=DDR5
)"
değerler ile yer değiştirildi.
Yani yeni kod bloğu şu şekilde oldu (yeni kod zincir bloğumuz diyelim biz buna)
Kod: Tümünü seç
' Bellek türünü belirle
If memorySpeed < 333 Then
memoryTypeName = "DDR"
ElseIf memorySpeed < 766 Then
memoryTypeName = "DDR2"
ElseIf memorySpeed < 1950 Then
memoryTypeName = "DDR3"
ElseIf memorySpeed < 3960 Then
memoryTypeName = "DDR4"
ElseIf memorySpeed < 7000 Then
memoryTypeName = "DDR5"
Else
memoryTypeName = "Bilinmiyor"
End If
Tasarım Aşaması - 3 :
Powershell ekranı gizlendi.
Final Kodlama :
Yeni .vbs kodumuz
Kod: Tümünü seç
Option Explicit
Dim objWMIService, colItems, objItem
Dim memorySpeed, memoryManufacturer, memoryCapacity, memoryTypeName
Dim memoryCapacityGB, outputText, userResponse
Dim fso, outputFile, desktopPath
' WMI servisine bağlan
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory")
' Bellek bilgilerini al
For Each objItem in colItems
memorySpeed = objItem.Speed
memoryManufacturer = objItem.Manufacturer
memoryCapacity = objItem.Capacity
Next
' Kapasiteyi GB cinsine çevir
memoryCapacityGB = Round(memoryCapacity / 1024 / 1024 / 1024, 2)
' Bellek türünü belirle
If memorySpeed < 333 Then
memoryTypeName = "DDR"
ElseIf memorySpeed < 766 Then
memoryTypeName = "DDR2"
ElseIf memorySpeed < 1950 Then
memoryTypeName = "DDR3"
ElseIf memorySpeed < 3960 Then
memoryTypeName = "DDR4"
ElseIf memorySpeed < 7000 Then
memoryTypeName = "DDR5"
Else
memoryTypeName = "Bilinmiyor"
End If
' Çıktı metnini oluştur
outputText = "Bellek Hızı: " & memorySpeed & " MHz" & vbCrLf & _
"Bellek Üreticisi: " & memoryManufacturer & vbCrLf & _
"Bellek Kapasitesi: " & memoryCapacityGB & " GB" & vbCrLf & _
"Bellek Türü: " & memoryTypeName
' Kullanıcıdan yanıt al
userResponse = MsgBox(outputText, vbYesNo + vbInformation, "RAM Bilgileri")
' Eğer "Kaydet" butonuna basılırsa
If userResponse = vbYes Then
' Masaüstü yolunu al
desktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\RAM Bilgileri.txt"
' Dosyayı oluştur ve yaz
Set fso = CreateObject("Scripting.FileSystemObject")
Set outputFile = fso.CreateTextFile(desktopPath, True)
outputFile.WriteLine outputText
outputFile.Close
MsgBox "RAM bilgileri masaüstüne kaydedildi: " & desktopPath, vbInformation, "Kaydedildi"
Else
' Çıkış mesajı
MsgBox "İşlem iptal edildi.", vbInformation, "Çıkıldı"
End If
' Temizlik
Set colItems = Nothing
Set objWMIService = Nothing
Set fso = Nothing
Set outputFile = Nothing
Açıklama:
Bunun çıktısında ;
Kullanıcı:
1.Evet butonuna basarsa, masaüstüne .txt dosya formatında mevcut sistemin RAM bilgileri kayıt edilir.(Windows, kullanıcıyı da bilgilendirir)
2.Hayır butonuna basarsa, Windows kullanıcıyı "İşlem İptal Edildi...!" şeklinde uyarır, kullanıcı "Tamam" butonuna basarak programı sonlandırır.
SONUÇ:
Çok teşekkür ederim hocam, çok yardımı dokundu zahmet verdim, minnettarım. :dua: <3 :like:
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 08 Kas 2024, 16:01
gönderen TRWE_2012
perahi yazdı: 08 Kas 2024, 15:44
TRWE_2012 yazdı: 08 Kas 2024, 15:16
Forumsal geri bildirimini aldım ve kodu şöyle yeniden zihinden tasarladım (sabahtan beridir tasarı ile uğraşıyorum, eski günlere geri döndük resmen)
Tasarım Aşaması - 1 :
Bellek Teknolojisi DDR
Bellek Hızı (OC) 400 MT/s 333 MT/s 266 MT/s
-
Bellek Teknolojisi DDR2
Bellek Hızı (OC) 533 MT/s 667 MT/s 800 MT/s 1066 MT/s
-
Bellek Teknolojisi DDR3
Bellek Hızı (OC) 1066 MT/s 1333 MT/s 1600 MT/s 1866 MT/s 1867 MT/s 2000 MT/s 2133 MT/s 2400 MT/s 2666 MT/s
-
Bellek Teknolojisi DDR4
Bellek Hızı (OC) 1333 MT/s 2133 MT/s 2400 MT/s 2666 MT/s 2933 MT/s 3000 MT/s 3200 MT/s 3466 MT/s 3600 MT/s 3733 MT/s 3866 MT/s 4000 MT/s 4133 MT/s 4266 MT/s 4400 MT/s 4600 MT/s 4800 MT/s 5000 MT/s 5066 MT/s 5100 MT/s 5133 MT/s 5333 MT/s
-
Bellek Teknolojisi DDR5
Bellek Hızı (OC) 4800 MT/s 5200 MT/s 5600 MT/s 6000 MT/s 6200 MT/s 6400 MT/s 6600 MT/s 6800 MT/s 7000 MT/s 7200 MT/s 7400 MT/s 7600 MT/s 7800 MT/s 8000 MT/s 8200 MT/s
Bunların aritmetik ortalaması alındı...
DDR: 333 MT/s
DDR2: 766.5 MT/s
DDR3: 1950.33 MT/s
DDR4: 3960.57 MT/s
DDR5: 7000 MT/s
Tasarım Aşaması - 2 :
Sonra bu ortalamatik değerler
Kod: Tümünü seç
"rem Determine memory type based on speed
if %memorySpeed% lss 800 (
set memoryTypeName=DDR
) else if %memorySpeed% lss 1600 (
set memoryTypeName=DDR2
) else if %memorySpeed% lss 2400 (
set memoryTypeName=DDR3
) else if %memorySpeed% lss 3200 (
set memoryTypeName=DDR4
) else (
set memoryTypeName=DDR5
)"
değerler ile yer değiştirildi.
Yani yeni kod bloğu şu şekilde oldu (yeni kod zincir bloğumuz diyelim biz buna)
Kod: Tümünü seç
' Bellek türünü belirle
If memorySpeed < 333 Then
memoryTypeName = "DDR"
ElseIf memorySpeed < 766 Then
memoryTypeName = "DDR2"
ElseIf memorySpeed < 1950 Then
memoryTypeName = "DDR3"
ElseIf memorySpeed < 3960 Then
memoryTypeName = "DDR4"
ElseIf memorySpeed < 7000 Then
memoryTypeName = "DDR5"
Else
memoryTypeName = "Bilinmiyor"
End If
Tasarım Aşaması - 3 :
Powershell ekranı gizlendi.
Final Kodlama :
Yeni .vbs kodumuz
Kod: Tümünü seç
Option Explicit
Dim objWMIService, colItems, objItem
Dim memorySpeed, memoryManufacturer, memoryCapacity, memoryTypeName
Dim memoryCapacityGB, outputText, userResponse
Dim fso, outputFile, desktopPath
' WMI servisine bağlan
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory")
' Bellek bilgilerini al
For Each objItem in colItems
memorySpeed = objItem.Speed
memoryManufacturer = objItem.Manufacturer
memoryCapacity = objItem.Capacity
Next
' Kapasiteyi GB cinsine çevir
memoryCapacityGB = Round(memoryCapacity / 1024 / 1024 / 1024, 2)
' Bellek türünü belirle
If memorySpeed < 333 Then
memoryTypeName = "DDR"
ElseIf memorySpeed < 766 Then
memoryTypeName = "DDR2"
ElseIf memorySpeed < 1950 Then
memoryTypeName = "DDR3"
ElseIf memorySpeed < 3960 Then
memoryTypeName = "DDR4"
ElseIf memorySpeed < 7000 Then
memoryTypeName = "DDR5"
Else
memoryTypeName = "Bilinmiyor"
End If
' Çıktı metnini oluştur
outputText = "Bellek Hızı: " & memorySpeed & " MHz" & vbCrLf & _
"Bellek Üreticisi: " & memoryManufacturer & vbCrLf & _
"Bellek Kapasitesi: " & memoryCapacityGB & " GB" & vbCrLf & _
"Bellek Türü: " & memoryTypeName
' Kullanıcıdan yanıt al
userResponse = MsgBox(outputText, vbYesNo + vbInformation, "RAM Bilgileri")
' Eğer "Kaydet" butonuna basılırsa
If userResponse = vbYes Then
' Masaüstü yolunu al
desktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\RAM Bilgileri.txt"
' Dosyayı oluştur ve yaz
Set fso = CreateObject("Scripting.FileSystemObject")
Set outputFile = fso.CreateTextFile(desktopPath, True)
outputFile.WriteLine outputText
outputFile.Close
MsgBox "RAM bilgileri masaüstüne kaydedildi: " & desktopPath, vbInformation, "Kaydedildi"
Else
' Çıkış mesajı
MsgBox "İşlem iptal edildi.", vbInformation, "Çıkıldı"
End If
' Temizlik
Set colItems = Nothing
Set objWMIService = Nothing
Set fso = Nothing
Set outputFile = Nothing
Açıklama:
Bunun çıktısında ;
Kullanıcı:
1.Evet butonuna basarsa, masaüstüne .txt dosya formatında mevcut sistemin RAM bilgileri kayıt edilir.(Windows, kullanıcıyı da bilgilendirir)
2.Hayır butonuna basarsa, Windows kullanıcıyı "İşlem İptal Edildi...!" şeklinde uyarır, kullanıcı "Tamam" butonuna basarak programı sonlandırır.
SONUÇ:
Çok teşekkür ederim hocam, çok yardımı dokundu zahmet verdim, minnettarım. :dua: <3 :like:
Önemli değil...Bizdeki birazçık bilgi (Visual Basıc 6.0) ve asistanında kodlama yeteneği ile gerisi geldi.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 08 Kas 2024, 18:02
gönderen burak35
Eline sağlık murat. Böyle birşey lazım olursa sana danışmak lazım o zaman. Bence güzel olmuş.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 08 Kas 2024, 19:13
gönderen Kayserilifatih
Ben görev yöneticisinden bakıyorum. Böyle bir şey için kod yazmaya pek ihtiyaç duymadım. Speccy programını kullanıyorum alternatif olarak işimi görüyor
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 00:18
gönderen burak35
Speeccy kullanılmamalı. Win 7 de bile sorun çıkartan bir programdır. Yıllar önce bir kere Win 7 de kullanmıştım.
Ve çok uzun zaman önce kapattığım birkaç servisi tekrar tetikleyip çalıştırdığını gördüm. Ayrıca bazı değerlerde yanlış gösterebiliyor.
Ben baştan uyarayımda herkesi. Ona göre karar verirsiniz.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 00:21
gönderen Kayserilifatih
O zaman aida64 kullan o da güzel programdır
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 00:29
gönderen burak35
İhtiyacım yok ki. Ram bilgisi bakmak için kullanmıştım galiba speccyi. Sonrada onu sildim zaten. Cpu-z daha iyi ram bilgisi bakmak için.
Disk bilgilerine bakmak içinde crystaldiskinfo yetiyo. Biara bikaç program daha ekleyeceğim sistemime. Tabikide portable olacak.
Hd sentinel düşünüyorum. Ama ondada sorun çıkarmı? Biara kullananlar disklerin üzerinde değişik simgelerin çıkttığını söylemiş bazı forunlarda.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 00:49
gönderen Kayserilifatih
Ben hd sentinel kullandım bir sorun yaşamadım fakat sorun yaşayanlar sorunlarını paylaşırlarsa bilgimiz olur ona göre tedbirimizi alırız
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 01:02
gönderen burak35
Bilgisayarımı açınca orada diskler gözüküyor ya, O disklerin üzerinde yeşil bar falan çıkıyormuş. Diğer sitelerde görmüştüm.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 01:07
gönderen Kayserilifatih
Evet o sorunu ben de yaşıyorum. Programa öyle saçma bir özellik eklemişler, allahtan ben portablesini kullanıyorum o sebeple bu sorun kalıcı olmuyor
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 01:09
gönderen burak35
O olay bence kötü. Disklerin üzerinde garip bir yeşil bar çubuk falan olmamalı. Görünümü bozuyor çünkü bana göre.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 01:10
gönderen Kayserilifatih
Katılıyorum. Estetik olarak pek hoş durmuyor.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 02:29
gönderen TRWE_2012
Hd sentinel yazılımını uzun bir zaman kullandım.SSD üzerinde çok yoğun okuma ve yazma yükü oluşturuyor ona göre...
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 09:39
gönderen Kayserilifatih
Cyristaldiskinfo programı da var mesela alternatif hw64 programı gibi programlar var, sadece hd sentinel yok ki. Memnun olan kullanır, memnun olmayan alternatilerinden mutlaka kendine uygun olan birini bulur.
Re: Bellek Türü ve Hızı gösterme dosyası çalışmıyor
Gönderilme zamanı: 09 Kas 2024, 11:00
gönderen Kayserilifatih
TRWE_2012 yazdı: 09 Kas 2024, 02:29
Hd sentinel yazılımını uzun bir zaman kullandım.SSD üzerinde çok yoğun okuma ve yazma yükü oluşturuyor ona göre...
HD Sentinel'in neden yoğun okuma ve yazma yükü oluşturduğunu daha ayrıntılı açıklayabilir misin. Tam olarak anlayamadım da onun için soruyorum.