Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Данные процессора и оперативной памяти Добавлено: 25.12.06 13:44  

Автор вопроса:  Андрэ
Нужно,чтобы в label или в textbox показывались частота процессора и объем оперативной памяти.
Как это сделать???

Ответить

  Ответы Всего ответов: 17  

Номер ответа: 1
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 25.12.06 16:51
нужно искать пример, показывающий частоту и озу :) можно ещё заплатить 20 wmz...:)

Ответить

Номер ответа: 2
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #2 Добавлено: 25.12.06 19:06
WMI - запросы

CPU:
http://www.microsoft.com/technet/scriptcenter/scripts/hardware/basic/hwbavb03.mspx

'Save as CPU.vbs
On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2";)

Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor";)

For Each objItem in colItems
    Wscript.Echo "Address Width: " & objItem.AddressWidth
    Wscript.Echo "Architecture: " & objItem.Architecture
    Wscript.Echo "Availability: " & objItem.Availability
    Wscript.Echo "CPU Status: " & objItem.CpuStatus
    Wscript.Echo "Current Clock Speed: " & objItem.CurrentClockSpeed
    Wscript.Echo ";Data Width: " & objItem.DataWidth
    Wscript.Echo ";Description: " & objItem.Description
    Wscript.Echo ";Device ID: " & objItem.DeviceID
    Wscript.Echo "External Clock: " & objItem.ExtClock
    Wscript.Echo "Family: " & objItem.Family
    Wscript.Echo "L2 Cache Size: " & objItem.L2CacheSize
    Wscript.Echo "L2 Cache Speed: " & objItem.L2CacheSpeed
    Wscript.Echo "Level: " & objItem.Level
    Wscript.Echo "Load Percentage: " & objItem.LoadPercentage
    Wscript.Echo "Manufacturer: " & objItem.Manufacturer
    Wscript.Echo "Maximum Clock Speed: " & objItem.MaxClockSpeed
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "PNP Device ID: " & objItem.PNPDeviceID
    Wscript.Echo "Processor ID: " & objItem.ProcessorId
    Wscript.Echo "Processor Type: " & objItem.ProcessorType
    Wscript.Echo "Revision: " & objItem.Revision
    Wscript.Echo "Role: " & objItem.Role
    Wscript.Echo "Socket Designation: " & objItem.SocketDesignation
    Wscript.Echo "Status Information: " & objItem.StatusInfo
    Wscript.Echo "Stepping: " & objItem.Stepping
    Wscript.Echo "Unique Id: " & objItem.UniqueId
    Wscript.Echo "Upgrade Method: " & objItem.UpgradeMethod
    Wscript.Echo "Version: " & objItem.Version
    Wscript.Echo "Voltage Caps: " & objItem.VoltageCaps
Next


Memory:


'http://www.microsoft.com/technet/scriptcenter/scripts/hardware/memory/hwmevb04.mspx
On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2";)

Set colItems = objWMIService.ExecQuery("Select * from Win32_MemoryArray";)

For Each objItem in colItems
    Wscript.Echo ";Device ID: " & objItem.DeviceID
    Wscript.Echo "Ending Address: " & objItem.EndingAddress
    Wscript.Echo "Starting Address: " & objItem.StartingAddress
    Wscript.Echo
Next



'http://www.microsoft.com/technet/scriptcenter/scripts/hardware/memory/hwmevb07.mspx
On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2";)

Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory";)

For Each objItem in colItems
    Wscript.Echo "Bank Label: " & objItem.BankLabel
    Wscript.Echo "Capacity: " & objItem.Capacity
    Wscript.Echo ";Data Width: " & objItem.DataWidth
    Wscript.Echo ";Description: " & objItem.Description
    Wscript.Echo ";Device Locator: " & objItem.DeviceLocator
    Wscript.Echo "Form Factor: " & objItem.FormFactor
    Wscript.Echo "Hot Swappable: " & objItem.HotSwappable
    Wscript.Echo "Manufacturer: " & objItem.Manufacturer
    Wscript.Echo "Memory Type: " & objItem.MemoryType
    Wscript.Echo "Name: " & objItem.Name
    Wscript.Echo "Part Number: " & objItem.PartNumber
    Wscript.Echo "Position In Row: " & objItem.PositionInRow
    Wscript.Echo "Speed: " & objItem.Speed
    Wscript.Echo "Tag: " & objItem.Tag
    Wscript.Echo "Type Detail: " & objItem.TypeDetail
Next

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 25.12.06 22:37
а ф топку WMI, даеш на API? ^)

Ответить

Номер ответа: 4
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #4 Добавлено: 26.12.06 06:45
а ф топку WMI, даеш на API? ^)


С памятью не проблема


 ;DIM MS AS MEMORYSTATUS
   MS.dwLength=SIZEOF(MS)
   GlobalMemoryStatus(BYVAL VARPTR(MS))

   ' в  MS.dwTotalPhys сколько памяти на компе


а вот со скоростью CPU без WMI не обойтись ИМХО

Ответить

Номер ответа: 5
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #5
Добавлено: 26.12.06 09:54
а вот со скоростью CPU без WMI не обойтись
Вранье

Ответить

Номер ответа: 6
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #6 Добавлено: 26.12.06 11:16
Да, WMI не лучшее решение. Не на каждой машине заработает.
А самое простое - тупо лезем в реестр :)

Ответить

Номер ответа: 7
Автор ответа:
 Андрэ



Вопросов: 2
Ответов: 4
 Профиль | | #7 Добавлено: 26.12.06 13:29
В VB 6.0 не одно из перечисленного не пошло...

Ответить

Номер ответа: 8
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #8 Добавлено: 26.12.06 21:41
это для профиксенной версии - VB6.0++ equal_hands

Ответить

Номер ответа: 9
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #9 Добавлено: 27.12.06 07:07
а вот со скоростью CPU без WMI не обойтись


Вранье


Примерчик ? (без лазанья по реестру и без помощи своего кода)

Ответить

Номер ответа: 10
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #10 Добавлено: 27.12.06 07:11
В VB 6.0 не одно из перечисленного не пошло...


Copy, paste в нотепад, и сохранить с раширением VBS.
Потом дабл клик по этому файлу.
Чтобы использовать из любого языка, задействовать СОМ- интерфейс.

BTW, WMI входит в стандартную поставку во всех версиях винды начиная с 98 и прекрасно апгрейдится до текущей 5.6

Ответить

Номер ответа: 11
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #11
Добавлено: 27.12.06 10:00
cpuid, например

Ответить

Номер ответа: 12
Автор ответа:
 Андрэ



Вопросов: 2
Ответов: 4
 Профиль | | #12 Добавлено: 27.12.06 14:06
Дык мне это все желательно в свою программу встроить под VB 6.0
Помогите пожалуйста!!!

Ответить

Номер ответа: 13
Автор ответа:
 JMP



Вопросов: 6
Ответов: 171
 Профиль | | #13 Добавлено: 27.12.06 21:03
cpuid, например


А с каких пор "cpuid" стал скорость CPU возвращать ?
Выяснить с его помощью наличие RDTSC и потом высчитывать
разницу между CPUtimeStamp?

ИМХО "cpuid" в лоб не возвращает скорость ЦПУ, а во вторых сегодня это опасно, так как на реальных мультипроцесорных машинах, нет никакой гарантии, в какой момент времени Вы будете спрашивать CPUtimeStamp через RDTSC у первого ЦПУ или второго или 3...4, соответсвенно результат будет высчитываться не верно.

BTW, это ассемблер, парень VB-script не может перевести в ВБ, а мы ему про асм. Я к сожалению пасс с помощью перевода, очень давно отошел от ВБ, так что ждите если кто согласится помочь перевести.



Ответить

Номер ответа: 14
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #14
Добавлено: 27.12.06 23:01
У меня частота процессора написана в Processor Brand String :)

Ответить

Номер ответа: 15
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #15 Добавлено: 27.12.06 23:40
та не, ну я совсем недавно в аналогичном топе кидал ссылку на реализ сабжа Си... там всё красиво на апи, никакого читерства... помойму, если память без бед-секторов, то там делалось с помощью всяких pdh****... функций. В 3-ем апи вьевере есть прототипы этих функция для вб, сырс на си вроде не большой был, так что перевести вопрос времени и лени...

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам