Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для kotkovets

Ветеран


Сообщения: 1216
Благодарности: 486

Профиль | Отправить PM | Цитировать


MKN, можно и так )
Скрытый текст
Код: Выделить весь код
OutFile "bios_sn.exe" 
!include "LogicLib.nsh" 

!macro IWbemClassObject->Get NameObject OUT
    System::Call "*(i,i,i)i.R4"
    System::Call "$R3->4(w'${NameObject}',i0,iR4,i0,i0)"
    System::Call "*$R4(i.R6,i,i.R5)"
    StrCmp $R6 3 0 +2
    IntFmt $R5 %u $R5
    StrCmp $R6 8 0 +2
    !ifdef NSIS_UNICODE
      IntFmt $R5 %s $R5
    !else
      IntFmt $R5 %S $R5
    !endif
    System::Call "ole32::VariantClear(iR4)"
    System::Free $R4
    StrCpy ${OUT} $R5
!macroend

Section
   System::Call "ole32::CoInitializeEx(i0,i2)"
   System::Call "ole32::CoCreateInstance(g'{4590f811-1d3a-11d0-891f-00aa004b2e24}',i0,i1,g'{dc12a687-737f-11cf-884d-00aa004b2e24}',*i.R0)i.R7"
   ${If} $R7 == 0
      System::Call "ole32::CoInitializeSecurity(i0,i-1,i0,i0,i2,i3,i0,i0,i0)"
      System::Call "$R0->3(w'root\CIMV2',i0,i0,i0,i0,i0,i0,*i.R1)i.R7"
      ${If} $R7 == 0
         System::Call "$R1->20(w'WQL', w'SELECT * FROM Win32_BIOS',i48,i0,*i.R2)i.R7"
         System::Call "$R2->4(i0xffffffff,i1,*i.R3,*i)i.R7"
         ${If} $R7 == 0
               !insertmacro IWbemClassObject->Get "Version" $7
                      MessageBox MB_OK "Version=$7"
				!insertmacro IWbemClassObject->Get "Manufacturer" $7
				     MessageBox MB_OK "Manufacturer=$7"
				!insertmacro IWbemClassObject->Get "Name" $7
				     MessageBox MB_OK "Name=$7"
				!insertmacro IWbemClassObject->Get "SMBIOSBIOSVersion" $7
				     MessageBox MB_OK "SMBIOSBIOSVersion=$7"							 
               System::Call "$R0->2()"
               System::Call "$R1->2()"
               System::Call "$R2->2()"
               System::Call "$R3->2()"
         ${Else}
            System::Call "$R0->2()"
            System::Call "$R1->2()"
            System::Call "$R2->2()"
         ${EndIf}
      ${Else}
        System::Call "$R0->2()"
        System::Call "$R1->2()"
      ${EndIf}
  ${EndIf}
SectionEnd

-------
Спасибо ВСЕМ за то, что тратите свое время, что бы ПОМОЧЬ МНЕ.

Это сообщение посчитали полезным следующие участники:

Отправлено: 17:38, 19-08-2015 | #1773