Ir para conteúdo


Pedro Pinheiro

Cadastrado: 26 Jan 2016
Offline Última atividade: Hoje, 12:57
-----

Posts que fiz

No tópico: WMI & AutoIt

16 agosto 2017 - 11:44

@Pedro,

Gostaria de pedir uma gentileza, acredito que há um outro tópico que você abriu sobre o mesmo assunto, se eu estiver enganado me desculpe, mas se houver, vá nesse tópico e marque o post como resolvido e link esse aqui, entendeu?

Para não ficar posts sem solução, pense naquele outro além de você que está procurando informação.

 

Grato.

 

Sim SIm, eu fiz um topico desse tipo, mas minha cabeça ta tão louca que eu nem lembrava mais disso e eu nem consigo achar esse tópico pelo meu perfil. :<

 

 

 

If WMI = parado Then
script para, alerte usuario para resolver o wmi
Then
script funciona
EndIf

 

 

Sabe me dizer como os serviços trabalham? É basicamente um executavel ou algo do tipo? Eu gostaria de verificar se o WMI está em execução para ativa-lo ou informar ao usuario de que o serviço está parado.


No tópico: WMI & AutoIt

16 agosto 2017 - 01:35

 

@Pedro,

 

Veja esse link.

 

Fiz uma pequena adaptação, será que é isso?

  1.  
  2. $oWMISvc = ObjGet("winmgmts:\\" & @ComputerName & "\root\cimv2")
  3. $colDiskDrives = $oWMISvc.ExecQuery("SELECT * FROM Win32_DiskDrive")
  4. For $oDiskDrive In $colDiskDrives
  5. ConsoleWrite("DiskDrive = " & $oDiskDrive.DeviceId & " Caption = " & $oDiskDrive.Caption & "/" & $oDiskDrive.SerialNumber & @LF)
  6.  
  7. $sQuery = "ASSOCIATORS OF {Win32_DiskDrive.DeviceID='" & $oDiskDrive.DeviceId & "'} WHERE AssocClass = Win32_DiskDriveToDiskPartition"
  8. $colPartitions = $oWMISvc.ExecQuery($sQuery)
  9.  
  10. For $oPartition In $colPartitions
  11. ConsoleWrite(@TAB & "Partition = " & $oPartition.DeviceId & @LF)
  12.  
  13. $sQuery = "ASSOCIATORS OF {Win32_DiskPartition.DeviceID='" & $oPartition.DeviceId & "'} WHERE AssocClass = Win32_LogicalDiskToPartition"
  14. $colLogicalDisks = $oWMISvc.ExecQuery($sQuery)
  15.  
  16. For $oLogicalDisk In $colLogicalDisks
  17. ConsoleWrite(@TAB & @TAB & "LogicalDisk = " & $oLogicalDisk.DeviceId & @LF)
  18.  
  19.  

 

Isso mesmo @Luigi, eu queria pegar o LogicalDisk e não sabia se tinha como. Valeu!


No tópico: WMI & AutoIt

15 agosto 2017 - 08:57

@Luigi pode me ajudar com uma duvida? Eu estou tentando pegar o Serial do HD da unidade que o script está sendo executado, mas os discos não seguem uma sequencia...EX:  (C:) = 0, (D:) = 1. (E:) = 2. Ficou tipo (C:) = 0,  (D:) = 2, (E:) = 1. Tem como pelo WMI pegar o numero da unidade atribuída para os HD's?

 

Exemplo:

  1.  
  2. Local $iDisco = DriveGetDrive($DT_ALL), $ik = 0, $iDiscoInfo = 100
  3. Local $caminho = StringLeft(@ScriptDir, 3)
  4. Local $getdisk = 0
  5.  
  6.  
  7. For $i = 1 To $iDisco[0]
  8. If StringLeft($caminho, 2) = StringUpper($iDisco[$i]) Then
  9. $getdisk = _HddSerial($ik)
  10. ExitLoop
  11. EndIf
  12. $ik += 1
  13.  
  14. Func _HddSerial($i = 0)
  15. Local $objWMIService = ObjGet("winmgmts:\\" & @ComputerName & "\root\cimv2")
  16. Local $colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_DiskDrive", "WQL", 0x10 + 0x20)
  17. Local $Counter = 0
  18. Local $Result = ""
  19. If IsObj($colItems) Then
  20. For $objItem In $colItems
  21. If StringInStr($objItem.Name, "\\.\PHYSICALDRIVE" & $Counter) >= 0 And $Counter = $i Then
  22. $Result = StringReplace($objItem.SerialNumber, " ", "")
  23. Return $Result
  24. EndIf
  25. $Counter += 1
  26. Else
  27. Return SetError(1)
  28. EndIf
  29. EndFunc
  30.  
  31.  

zanBTes.png


No tópico: Documentação fácil e achando variáveis órfãs

13 agosto 2017 - 02:00

Luigi Tem algum modo de verificar um projeto ao todo? O IDE do autoit é bem limitado para 1 arquivo só, eu queria fazer verificações em diversos arquivos contido em um projeto. Ficou muito show sua dica, valeu por compartilhar com a galera.


No tópico: Proteção serial HD, através de um script chama um EXE

11 agosto 2017 - 07:42

https://www.autoitsc...binary/?page=10