Skip to content

opsi.orgheader image

opsi.org
Views
WinstScripts >>

hdac

Document Actions
last edited 2 years ago by pwpete
;script erstellt von wp am 08.03.07
;script erweitert von wp am 09.10.07 - Soundmax auf GX620 / GX280
;script erweitert von wp am 20.12.07 - Soundmax auf GX740

[Initial]
Message=installiere Conexant Modem + SigmaTel HDAudio auf D420, D620, D630 und auf GX280, GX620, GX740 den Soundmax-Audio-Treiber 
LogLevel=2
ExitOnError=false
ScriptErrorMessages=on
TraceMode=on
StayOnTop=false

[Aktionen]
DefVar $Target$
DefVar $WinstRegKey$
DefVar $smax4pnpRegKey$
DefVar $RunOnceRegKey$

Set $Target$ = "C:\tmp\"
Set $WinstRegKey$ = "HKLM\SOFTWARE\opsi.org\winst"
Set $smax4pnpRegKey$ = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
Set $RunOnceRegKey$ = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce"

; os-test
DefVar $OS
set $OS=GetOS
DefVar $MinorOS$
set $MinorOS$ = GetNTVersion
if ( $MinorOS$ = "Win2K" OR $MinorOS$ = "WinXP" )
 ; pruefe Modell (D630, D620 oder D420 / GX280, GX620, GX740) 
   DosInAnIcon_hdac ; hier Pruefung durch python und HDAC-Install
   DosInAnIcon_mdm  ; hier modem-Install
   if FileExists ("C:\tmp\soundmax.txt")
	; hier Soundmax-Install (GX280, GX620, GX740):
	WinBatch_sdm
	Registry_Delete_SMAX_4PNP_Key
	endif
   DosInAnIcon_delete
endif	      
ExitWindows /Reboot

[Registry_Delete_SMAX_4PNP_Key]
openKey [$smax4pnpRegKey$]
DeleteVar "SoundMAXPnP"
openKey [$RunOnceRegKey$]
DeleteVar "CleanUp"
openKey [$RunOnceRegKey$]
DeleteVar "MigrateMMDrivers"
openKey [$RunOnceRegKey$]
DeleteVar "SpkrCnfg"


[Registry_SaveRebootFlag]
openKey [$WinstRegKey$]
set "RebootFlag" = "$RebootFlag$"

[WinBatch_sdm]
%ScriptPath%\sdm-files\qfe /passive 
%ScriptPath%\sdm-files\Setup -s 

[DosInAnIcon_hdac]
echo "starte python script"
%ScriptPath%\hdac.py
cd /D $Target$
dir hdac.txt 
if %errorlevel% == 0 goto :hdac_setup
goto :ende

:hdac_setup
echo "starte HDAC Installation"
%ScriptPath%\Files\Setup /S 
echo "HDAC Installation fertig"
goto :ende

:ende
echo "HDAC-Section closed"
exit

[DosInAnIcon_mdm]
cd /D $Target$
dir hdac.txt 
if %errorlevel% == 0 goto :mdm_setup
goto :ende

:mdm_setup
echo "starte Modem Installation"
cd /D $Target$
dir mdm_d620.txt 
if %errorlevel% == 0 goto :mdm_d62_setup
%ScriptPath%\mdm-files\Setup /S 
echo "Modem Installation fertig"
goto :ende

:mdm_d62_setup
%ScriptPath%\mdm_d62-files\Setup /S 
echo "Modem Installation fertig"
goto :ende

:ende
echo "mdm-Section closed"
if exist del $Target$hdac.txt
if exist del $Target$mdm_d620.txt
exit

[DosInAnIcon_delete]
cd /D $Target$
if exist soundmax.txt del $Target$soundmax.txt
cd /D C:\Programme\Analog Devices\Core
if exist smax4pnp.exe ren smax4pnp.exe _smax4pnp.ex$
exit


**** and now something completly different (the python part): ****

import win32com.client
strComputer = "."
objWMIService = win32com.client.Dispatch("WbemScripting.SWbemLocator")
objSWbemServices = objWMIService.ConnectServer(strComputer,"root\cimv2")
colItems = objSWbemServices.ExecQuery("Select * from Win32_ComputerSystem")
for objItem in colItems:
    print "Manufacturer: ", objItem.Manufacturer
    print "Model: ", objItem.Model
    print "Name: ", objItem.Name
    print "System Startup Setting: ", objItem.SystemStartupSetting
    print "System Type: ", objItem.SystemType
    print "Thermal State: ", objItem.ThermalState
    print "Total Physical Memory: ", objItem.TotalPhysicalMemory
    print "User Name: ", objItem.UserName
    print "WakeUp Type: ", objItem.WakeUpType
if objItem.Model == "Latitude D620                   ":
    open ('c:/tmp/hdac.txt', 'w')
    print "hdac-Id for D620 written"
if objItem.Model == "Latitude D620                   ":
    open ('c:/tmp/mdm_d620.txt', 'w')
    print "mdm-Id for D620 written"
if objItem.Model == "Latitude D630                   ":
    open ('c:/tmp/hdac.txt', 'w')
    print "hdac-Id for D620 written"
if objItem.Model == "Latitude D420                   ":
    open ("c:/tmp/hdac.txt", 'w')
    print "hdac-Id for D420 written"
if objItem.Model == "OptiPlex GX740               ":
    open ("c:/tmp/soundmax.txt", 'w')
    print "SoundMax-Id for GX740 written"
if objItem.Model == "OptiPlex GX620               ":
    open ("c:/tmp/soundmax.txt", 'w')
    print "SoundMax-Id for GX620 written"
if objItem.Model == "OptiPlex GX280               ":
    open ("c:/tmp/soundmax.txt", 'w')
    print "SoundMax-Id for GX280 written"