Donanım Bilgisi (vbscript)
-
- Bit
- Mesajlar: 11
- Kayıt: 05 Ara 2006, 21:56
- Teşekkür etti: 5 kez
- Teşekkür edildi: 22 kez
Donanım Bilgisi (vbscript)
VBScript betik dosyası, 3. parti programlara gerek kalmadan Windows işletim sisteminin yerleşik kodlarıyla tüm donanım bilgilerinizin özetini gösterir. Kod, çeşitli sistem bileşenlerine dair bilgileri toplar ve kullanıcıya görsel olarak sunar.
https://github.com/abdullah-erturk/Hard ... /tree/main
TR:
https://github.com/abdullah-erturk/Hard ... gileri.zip
ENG:
https://github.com/abdullah-erturk/Hard ... e_Info.zip
vbscript dosyasının bazı kısımlarında @velociraptor üstadın sordum sitesi üzerinden zamanında yayınladığı kodlardan faydalanılmıştır.
Kendisine çok teşekkür ederim.
En son mephistooo2 tarafından 26 Kas 2024, 10:56 tarihinde düzenlendi, toplamda 2 kere düzenlendi.
Re: Donanım Bilgisi (vbscript)
Hocam selamlar, bu vbscript dosyasına şu bat kodundaki içerikleride eklememiz mümkün müdür? >> https://notes.io/w7JdP << ve bu vbscript dosyası özellikleri söyledikten sonra kendisini txt olarak kaydedebilir mi? çok teşekkürler, iyi günler dilerim.
- TRWE_2012
- Exabyte2
- Mesajlar: 12253
- Kayıt: 25 Eyl 2013, 13:38
- cinsiyet: Erkek
- Teşekkür etti: 1256 kez
- Teşekkür edildi: 2962 kez
Re: Donanım Bilgisi (vbscript)
Helal olsun ben bu kadar yapamam herhalde...Hemen kullanacağım teşekkürler
- TRWE_2012
- Exabyte2
- Mesajlar: 12253
- Kayıt: 25 Eyl 2013, 13:38
- cinsiyet: Erkek
- Teşekkür etti: 1256 kez
- Teşekkür edildi: 2962 kez
Re: Donanım Bilgisi (vbscript)
Eline sağlık , imdi benden de senin kodlamana bir katkı...
Ağ Bölümündeki kodlamayı değiştirdim.
Artık sadece "AKTİF BAĞLANTILAR" görünecek "PASİF BAĞLANTILAR" , gizlenecek... Bir dener misin oldu mu? diye (orjinal betiğin kopyasında dene)
Ağ Bölümündeki kodlamayı değiştirdim.
Kod: Tümünü seç
' Network card information
Dim myIPAddresses : myIPAddresses = ""
Dim counter : counter = 1
Dim colAdapters : Set colAdapters = objWMIService.ExecQuery("Select IPAddress, Description, MACAddress, DHCPServer from Win32_NetworkAdapterConfiguration Where IPEnabled = True")
For Each objAdapter in colAdapters
description = objAdapter.Description
macAddr = objAdapter.MACAddress
If Not IsNull(objAdapter.IPAddress) And UBound(objAdapter.IPAddress) >= 0 Then
ipAddr = objAdapter.IPAddress(0)
Else
ipAddr = "Not found"
End If
If Not IsNull(objAdapter.DHCPServer) Then
dhcpServer = objAdapter.DHCPServer
Else
dhcpServer = "Not found"
End If
' Only include active connections
If ipAddr <> "Not found" Then
myIPAddresses = myIPAddresses & "Network Adapter " & counter & "" & vbCrLf & _
"Description : " & description & vbCrLf & _
"MAC Address : " & macAddr & vbCrLf & _
"IP Address : " & ipAddr & vbCrLf & _
"DHCP Server : " & dhcpServer & vbCrLf & vbCrLf
counter = counter + 1
End If
Next
- TRWE_2012
- Exabyte2
- Mesajlar: 12253
- Kayıt: 25 Eyl 2013, 13:38
- cinsiyet: Erkek
- Teşekkür etti: 1256 kez
- Teşekkür edildi: 2962 kez
Re: Donanım Bilgisi (vbscript)
İkinci kod iyileştirmesi :
Bunu kodlamanın sonuna yerleştir ve kaydet.Sistem bilgileri kullanıcının masaüstüne kayıt edilir.
Kod: Tümünü seç
' Tarih formatını ayarlama
Dim currentDate
currentDate = Now
Dim formattedDate
formattedDate = Year(currentDate) & "_" & Right("0" & Month(currentDate), 2) & "_" & Right("0" & Day(currentDate), 2)
' Dosya yolunu belirleme (Masaüstü)
Dim desktopPath
desktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\Sistem Bilgileri_" & formattedDate & ".txt"
' Dosyayı oluşturma ve yazma
Dim fso, outputFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set outputFile = fso.CreateTextFile(desktopPath, True)
' Bilgileri dosyaya yazma
outputFile.WriteLine tMessage
outputFile.Close
' Kullanıcıya bilgi verme
WshShell.Popup "Sistem bilgileri " & desktopPath & " konumuna kaydedildi.", 0, "Bilgi", 64
- TRWE_2012
- Exabyte2
- Mesajlar: 12253
- Kayıt: 25 Eyl 2013, 13:38
- cinsiyet: Erkek
- Teşekkür etti: 1256 kez
- Teşekkür edildi: 2962 kez
Re: Donanım Bilgisi (vbscript)
Üçüncü kod iyileştirme :
Ağ Ve İnternet Bileşenleri YOK, sadece sistem bilgileri :
Ağ Ve İnternet Bileşenleri YOK, sadece sistem bilgileri :
Kod: Tümünü seç
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2") ' More user-friendly WMI connection
Set objNetwork = CreateObject("Wscript.Network")
Set wshShell = CreateObject("WScript.Shell")
strComputerName = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%")
Set oShell = WScript.CreateObject("WScript.Shell")
proc_arch = oShell.ExpandEnvironmentStrings("%PROCESSOR_ARCHITECTURE%")
Set oEnv = oShell.Environment("SYSTEM")
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
Set colMB = objWMIService.ExecQuery("Select * from Win32_BaseBoard")
Set colProcessors = objWMIService.ExecQuery("Select * from Win32_Processor")
Set colDrives = objWMIService.ExecQuery("Select * from Win32_DiskDrive")
' Total RAM calculation
Set obj = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory")
TotalRam = 0
ramDetails = ""
i = 1
For Each obj2 In obj
memTmp1 = obj2.capacity / 1024 / 1024
TotalRam = TotalRam + memTmp1
ramSpeed = obj2.Speed
ramType = ""
If ramSpeed >= 1600 And ramSpeed < 2133 Then
ramType = "DDR3"
ElseIf ramSpeed >= 2133 And ramSpeed < 2933 Then
ramType = "DDR4"
ElseIf ramSpeed >= 2933 Then
ramType = "DDR5"
Else
ramType = "Unknown"
End If
ramDetails = ramDetails & "Slot " & i & ": " & Int(memTmp1 / 1024) & " GB, Hız: " & obj2.Speed & " MHz, Tür: " & ramType & vbCrLf
i = i + 1
Next
' Processor architecture
Set colItems = objWMIService.ExecQuery("Select Architecture from Win32_Processor")
For Each objItem in colItems
If objItem.Architecture = 0 Then
strArchitecture = "x86"
ElseIf objItem.Architecture = 9 Then
strArchitecture = "x64"
End If
Next
' Graphics Card information
On Error Resume Next
Set colItemsx = objWMIService.ExecQuery("SELECT * FROM Win32_VideoController")
Dim tStr
tStr = ""
' Get display card information
For Each objItem in colItemsx
tStr = tStr & "Model : " & objItem.Description & vbCrLf
' Get memory size
Dim memSize
memSize = objItem.AdapterRAM / 1024 / 1024 ' in MB
' Check the memory size
If InStr(LCase(objItem.Description), "intel") > 0 Then
' If internal graphics, we can dynamically take the memory from system RAM
If memSize < 128 Then
memSize = 128 ' Default memory for integrated graphics is 128 MB
End If
Else
' For external graphics, check the AdapterRAM value
If memSize < 1024 Then
' If memory is less than 1 GB, probably an incorrect value is returned
memSize = 4096 ' Default memory for external graphics is 4096 MB (4 GB)
End If
End If
Next
On Error GoTo 0
' Operating system information
Set dtmInstallDate = CreateObject("WbemScripting.SWbemDateTime")
Set colOperatingSystems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
fthx = getmydat(objOperatingSystem.InstallDate)
Exit For
Next
Function getmydat(wmitime)
dtmInstallDate.Value = wmitime
getmydat = dtmInstallDate.GetVarDate
End Function
' Get disk information and check types
Dim diskInfo
diskInfo = "Disk Summary: " & vbCrLf
' If colDrives is not empty, proceed with processing
If colDrives.Count > 0 Then
For Each objDrive In colDrives
If Not objDrive Is Nothing Then
' Check if the disk is ready
On Error Resume Next ' Temporarily ignore errors
Dim driveType, diskSize
' Try to get disk size
diskSize = objDrive.Size
If Err.Number = 0 Then
' If size data is available
If objDrive.IsReady Then
driveType = GetDriveMediaType(objDrive)
diskInfo = diskInfo & objDrive.DeviceID & " - " & driveType & " - Capacity: " & _
FormatNumber(diskSize / 1024 / 1024 / 1024, 2) & " GB" & vbCrLf
Else
diskInfo = diskInfo & objDrive.DeviceID & " - " & "Disk is not ready" & vbCrLf
End If
Else
diskInfo = diskInfo & objDrive.DeviceID & " - " & "Disk size cannot be retrieved" & vbCrLf
End If
On Error GoTo 0 ' Reset error handling
End If
Next
Else
diskInfo = diskInfo & "Disk information not found." & vbCrLf
End If
' Function to determine the disk type (HDD/SSD/NVMe/USB)
Function GetDriveMediaType(DiskDrive)
On Error Resume Next
Dim mediaType
If Not DiskDrive Is Nothing Then
' Identify NVMe disks by model name
If InStr(1, LCase(DiskDrive.Model), "nvme") > 0 Or InStr(1, LCase(DiskDrive.Model), "nvm") > 0 Then
mediaType = "NVMe"
' Identify SSD disks by "ssd" or "sd" in the model name
ElseIf InStr(1, LCase(DiskDrive.Model), "ssd") > 0 Or InStr(1, LCase(DiskDrive.Model), "sd") > 0 Then
mediaType = "SSD"
' Identify USB disks by "usb" in the interface type
ElseIf InStr(1, LCase(DiskDrive.InterfaceType), "usb") > 0 Then
mediaType = "USB"
' Default to HDD for other disks
Else
mediaType = "HDD"
End If
Else
mediaType = "Unknown"
End If
On Error GoTo 0
GetDriveMediaType = mediaType
End Function
' Get the system collection
Set SystemSet = objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem")
' Gather information (only one loop for system, processor, and motherboard)
For Each System in SystemSet
For Each objProcessor in colProcessors
For Each bbType In colMB
MbVendor = bbType.Manufacturer
MbModel = bbType.Product
tMessage = "Operating System : " & System.Caption & vbNewLine & _
"OS Version : " & System.Version & vbNewLine & _
"Windows Architecture : " & strArchitecture & vbNewLine & _
"Username : " & objNetwork.UserName & vbNewLine & _
"Computer Name : " & strComputerName & vbNewLine & _
"Last Format Date : " & fthx & vbNewLine & _
"--------------------------------------------------------------------------------------" & vbNewLine & _
"Motherboard Manufacturer : " & MbVendor & vbNewLine & _
"Motherboard Model : " & MbModel & vbNewLine & _
"Processor : " & objProcessor.Manufacturer & vbNewLine & _
"Processor Model : " & objProcessor.Name & vbNewLine & _
"CPU Architecture : " & strArchitecture & vbNewLine & _
"Total RAM : " & Int(TotalRam / 1024) & " GB" & vbNewLine & _
"RAM Slots : " & vbNewLine & ramDetails & vbNewLine & _
"Graphics Card(s) : " & vbNewLine & tStr & _
"--------------------------------------------------------------------------------------" & vbNewLine & _
diskInfo
Exit For ' Only run this loop once for each section
Next
Exit For
Next
Exit For
Next
' Display using WshShell.Popup
Set WshShell = CreateObject("WScript.Shell")
WshShell.Popup tMessage, 0, "Hardware Information | by Abdullah ERTÜRK", 4096
' Tarih formatını ayarlama
Dim currentDate
currentDate = Now
Dim formattedDate
formattedDate = Year(currentDate) & "_" & Right("0" & Month(currentDate), 2) & "_" & Right("0" & Day(currentDate), 2)
' Dosya yolunu belirleme (Masaüstü)
Dim desktopPath
desktopPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\Sistem Bilgileri_" & formattedDate & ".txt"
' Dosyayı oluşturma ve yazma
Dim fso, outputFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set outputFile = fso.CreateTextFile(desktopPath, True)
' Bilgileri dosyaya yazma
outputFile.WriteLine tMessage
outputFile.Close
' Kullanıcıya bilgi verme
WshShell.Popup "Sistem bilgileri " & desktopPath & " konumuna kaydedildi.", 0, "Bilgi", 64
-
- Bit
- Mesajlar: 11
- Kayıt: 05 Ara 2006, 21:56
- Teşekkür etti: 5 kez
- Teşekkür edildi: 22 kez
Re: Donanım Bilgisi (vbscript)
Konu metninde yazmayı unutmuşum yazmazsam ayıp olur
vbscript dosyasının bazı kısımlarında @velociraptor üstadın sordum sitesi üzerinden zamanında paylaştığı kodlardan faydalanılmıştır.
Kendisine çok teşekkür ederim.
vbscript dosyasının bazı kısımlarında @velociraptor üstadın sordum sitesi üzerinden zamanında paylaştığı kodlardan faydalanılmıştır.
Kendisine çok teşekkür ederim.
- velociraptor
- Yottabyte4
- Mesajlar: 50041
- Kayıt: 14 Mar 2006, 02:33
- cinsiyet: Erkek
- Teşekkür etti: 9191 kez
- Teşekkür edildi: 7443 kez
Re: Donanım Bilgisi (vbscript)
Gördüm ve farkettim
Pek vaktim olmadığı için kodlara birkaç yılda bir anca gözatabiliyorum.
Pek vaktim olmadığı için kodlara birkaç yılda bir anca gözatabiliyorum.
-
- Megabyte4
- Mesajlar: 1568
- Kayıt: 30 Ağu 2024, 20:48
- Teşekkür etti: 403 kez
- Teşekkür edildi: 1366 kez
Re: Donanım Bilgisi (vbscript)
Çalışmayı test amaçlı editleyerek ilk paylaşılmış haliyle test ettim fakat aşağıdaki kapat sekmesi beiirgin değildi onu da araştıracağım. Sonuna olacak mı diye adımı ekledim kusura bakmayın, ben de ileride böyle script yaparsam diye test ediyorum fazla takılmayın
En son Kayserilifatih tarafından 27 Kas 2024, 12:11 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
- TRWE_2012
- Exabyte2
- Mesajlar: 12253
- Kayıt: 25 Eyl 2013, 13:38
- cinsiyet: Erkek
- Teşekkür etti: 1256 kez
- Teşekkür edildi: 2962 kez
Re: Donanım Bilgisi (vbscript)
Normal'de "Tamam" butonu (Kapat) otomatik eklenir.Ama burada görünmüyor.Demek ki bir satır daha aşağıda "Tamam" butonu.Ayrıca .VBS yerleşik düşey kaydırma çubuğu nesnesi bulunmaz.Bu durum .VBS betik dilinin sınırlarını gösteren güncel bir örnektir.
Bu kodları alıp Visual Basıc v6.0 tekrar kodlayacaksın.O zaman tam bir yazılım olur.
Bu kodları alıp Visual Basıc v6.0 tekrar kodlayacaksın.O zaman tam bir yazılım olur.
En son TRWE_2012 tarafından 27 Kas 2024, 14:48 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
-
- Megabyte4
- Mesajlar: 1568
- Kayıt: 30 Ağu 2024, 20:48
- Teşekkür etti: 403 kez
- Teşekkür edildi: 1366 kez
Re: Donanım Bilgisi (vbscript)
Aşağıda çok küçük bir miktar görünüyor fakat yukarıdaki çubuğu çekmem gerekiyor yoksa görünmüyor