Opa! pessoal tem alguma dll do windows que eu possa pegar propriedades como Processador e Memória usando JNA.
Pegar propriedades de hardware com JNA
9 Respostas
Gostaria de saber como carregar essa dll para pegar as propriedades da máquina, processador e memória física, pois o java só pega o usuário, SO e rede.
O problema é bem mais complexo que você imagina.
A primeira coisa que você pode tentar fazer é olhar este site aqui:
A segunda é olhar o “Windows Resource Kit” (no site da Microsoft), baixá-lo, e executar alguns dos programas VBScript que permitem coletar tais informações.
A terceira é saber como chamar esses programas. É relativamente simples (só Runtime.exec) e não requer JNA nem nenhuma outra frescura.
Vc quer dizer que é mais fácil usar outra linguagem pra pegar essas informações do que usar JNA com java. Realmente to achando complicado.
Acho é que para cada problema existe uma ferramenta adequada. Se não existe uma chave de roda (VBScript) na sua caixa de instrumentos cirúrgicos (Java), em vez de inventar uma chave de roda desajeitada com bisturi (talvez você tenha uma serra de precisão para abrir crânios, mas isso é outra história), é melhor usar a chave de roda.
Concordo com vc mas gostaria de conseguir usar JNA mesmo assim, só pra ter conhecimento sobre tal. Se puder me ajudar agradeço.
No caso do windows, dá para usar a função “GetSystemTimes” para descobrir o uso de CPU, mas tu também terá que mapear a “struct” “FILETIME” no JNA para conseguir usar.
Inté.
Na verdade eu preciso só a quantidade de memória física e qual processador.
Exemplo:
http://www.activxperts.com/admin/scripts/wmi/vbscript/0356/
Por exemplo, em minha máquina ele mostra (dados da CPU):
Microsoft (R) Windows Script Host VersÆo 5.6
Copyright (C) 1996-2001 Microsoft Corporation. Todos os direitos reservados.
AddressWidth: 32
Architecture: 0
Availability: 3
Caption: x86 Family 6 Model 15 Stepping 2
ConfigManagerErrorCode:
ConfigManagerUserConfig:
CpuStatus: 1
CreationClassName: Win32_Processor
CurrentClockSpeed: 1862
CurrentVoltage: 18
DataWidth: 32
Description: x86 Family 6 Model 15 Stepping 2
DeviceID: CPU0
ErrorCleared:
ErrorDescription:
ExtClock:
Family: 2
InstallDate:
L2CacheSize: 2048
L2CacheSpeed:
LastErrorCode:
Level: 6
LoadPercentage: 1
Manufacturer: GenuineIntel
MaxClockSpeed: 1862
Name: Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz
OtherFamilyDescription:
PNPDeviceID:
PowerManagementCapabilities:
PowerManagementSupported: Falso
ProcessorId: BFEBFBFF000006F2
ProcessorType: 3
Revision: 3842
Role: CPU
SocketDesignation: LGA775/PSC/TJS
Status: OK
StatusInfo: 3
Stepping: 2
SystemCreationClassName: Win32_ComputerSystem
SystemName: WD0L1AB8DH
UniqueId:
UpgradeMethod: 21
Version: Modelo 15, N¡vel 2
VoltageCaps:
AddressWidth: 32
Architecture: 0
Availability: 3
Caption: x86 Family 6 Model 15 Stepping 2
ConfigManagerErrorCode:
ConfigManagerUserConfig:
CpuStatus: 1
CreationClassName: Win32_Processor
CurrentClockSpeed: 1862
CurrentVoltage: 18
DataWidth: 32
Description: x86 Family 6 Model 15 Stepping 2
DeviceID: CPU1
ErrorCleared:
ErrorDescription:
ExtClock:
Family: 2
InstallDate:
L2CacheSize: 2048
L2CacheSpeed:
LastErrorCode:
Level: 6
LoadPercentage: 1
Manufacturer: GenuineIntel
MaxClockSpeed: 1862
Name: Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz
OtherFamilyDescription:
PNPDeviceID:
PowerManagementCapabilities:
PowerManagementSupported: Falso
ProcessorId: BFEBFBFF000006F2
ProcessorType: 3
Revision: 3842
Role: CPU
SocketDesignation: LGA775/PSC/TJS
Status: OK
StatusInfo: 3
Stepping: 2
SystemCreationClassName: Win32_ComputerSystem
SystemName: ABCDEFGH
UniqueId:
UpgradeMethod: 21
Version: Modelo 15, N¡vel 2
VoltageCaps: