VirtualBox

Changeset 32683 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Sep 22, 2010 7:08:52 AM (14 years ago)
Author:
vboxsync
Message:

Windows Guest Additions installer: More WDDM cleanup.

Location:
trunk/src/VBox/Additions/WINNT/Installer
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Installer/VBoxGuestAdditions.nsi

    r32663 r32683  
    181181Var g_bWithAutoLogon    ; Cmd line: Install VBoxGINA / VBoxCredProv for auto logon support
    182182Var g_bWithD3D          ; Cmd line: Install Direct3D support
     183Var g_bWithWDDM         ; Install the WDDM driver instead of the normal one
    183184Var g_bOnlyExtract      ; Cmd line: Only extract all files, do *not* install them. Only valid with param "/D" (target directory)
    184 Var g_bInstallWDDM      ; WDDM mode
     185Var g_bCapWDDM          ; Capability: Is the guest able to handle/use our WDDM driver?
    185186
    186187; Platform parts of this installer
     
    697698
    698699!if $%VBOX_WITH_WDDM% == "1"
    699   ${If} $g_bInstallWDDM == "true"
     700  ${If} $g_bWithWDDM == "true"
    700701    ; All D3D components are installed with WDDM driver package, nothing to be done here
    701702    Return
     
    896897  ${If} $0 == ${SF_SELECTED}
    897898
    898 !if $%VBOX_WITH_WDDM% == "1"
    899   !if $%BUILD_TARGET_ARCH% == "x86"
    900     ; If we're on a 32-bit Windows Vista / 7 also install the WDDM bits
    901     ${If} $g_strWinVersion == "Vista"
    902     ${OrIf} $g_strWinVersion == "7"
    903       StrCpy $g_bInstallWDDM "true"
     899    ; If we're able to use the WDDM driver just use it instead of the replaced
     900    ; D3D components below
     901    ${If} $g_bCapWDDM == "true"
     902      StrCpy $g_bWithWDDM "true"
     903      Goto exit
    904904    ${EndIf}
    905   !endif
    906 !endif
    907905
    908906    ${If} $g_bForceInstall != "true"
     
    922920    ${EndIf}
    923921  ${EndIf}
    924 
    925922  Goto exit
    926923
     
    979976  StrCpy $g_bWithD3D "false"
    980977  StrCpy $g_bOnlyExtract "false"
    981   StrCpy $g_bInstallWDDM "false"
     978  StrCpy $g_bWithWDDM "false"
     979  StrCpy $g_bCapWDDM "false"
    982980
    983981  SetErrorLevel 0
     
    991989  ; Retrieve Windows version and store result in $g_strWinVersion
    992990  Call GetWindowsVer
     991
     992  ; Retrieve capabilities
     993  Call CheckForCapabilities
    993994
    994995  ; Retrieve system mode and store result in
     
    11291130  Call un.GetWindowsVer
    11301131
     1132  ; Retrieve capabilities
     1133  Call un.CheckForCapabilities
     1134
    11311135FunctionEnd
    11321136
  • trunk/src/VBox/Additions/WINNT/Installer/VBoxGuestAdditionsCommon.nsh

    r32503 r32683  
    412412!insertmacro AbortShutdown ""
    413413!insertmacro AbortShutdown "un."
     414
     415!macro CheckForWDDMCapability un
     416Function ${un}CheckForWDDMCapability
     417
     418  ; Note: This is done early at startup of the installer, so
     419  ;       DetailPrint and friends won't work here!
     420
     421!if $%BUILD_TARGET_ARCH% == "x86"
     422  ; If we're on a 32-bit Windows Vista / 7 we can use the WDDM driver
     423  ${If} $g_strWinVersion == "Vista"
     424  ${OrIf} $g_strWinVersion == "7"
     425    StrCpy $g_bCapWDDM "true"
     426  ${EndIf}
     427!endif
     428
     429FunctionEnd
     430!macroend
     431
     432; Insert function as an installer and uninstaller function.
     433!insertmacro CheckForWDDMCapability ""
     434!insertmacro CheckForWDDMCapability "un."
     435
     436!macro CheckForCapabilities un
     437Function ${un}CheckForCapabilities
     438
     439    Call ${un}CheckForWDDMCapability
     440
     441FunctionEnd
     442!macroend
     443
     444; Insert function as an installer and uninstaller function.
     445!insertmacro CheckForCapabilities ""
     446!insertmacro CheckForCapabilities "un."
     447
  • trunk/src/VBox/Additions/WINNT/Installer/VBoxGuestAdditionsW2KXP.nsh

    r32622 r32683  
    186186!if $%VBOX_WITH_CROGL% == "1"
    187187  !if $%VBOX_WITH_WDDM% == "1"
    188     !if $%BUILD_TARGET_ARCH% == "x86"
    189       ${If} $g_bInstallWDDM == "true"
    190         SetOutPath "$INSTDIR"
    191         ; WDDM Video driver
    192         FILE "$%PATH_OUT%\bin\additions\VBoxVideoWddm.sys"
    193         FILE "$%PATH_OUT%\bin\additions\VBoxDispD3D.dll"
    194         FILE "$%PATH_OUT%\bin\additions\VBoxVideoWddm.inf"
    195         FILE "$%PATH_OUT%\bin\additions\VBoxOGLarrayspu.dll"
    196         FILE "$%PATH_OUT%\bin\additions\VBoxOGLcrutil.dll"
    197         FILE "$%PATH_OUT%\bin\additions\VBoxOGLerrorspu.dll"
    198         FILE "$%PATH_OUT%\bin\additions\VBoxOGLpackspu.dll"
    199         FILE "$%PATH_OUT%\bin\additions\VBoxOGLpassthroughspu.dll"
    200         FILE "$%PATH_OUT%\bin\additions\VBoxOGLfeedbackspu.dll"
    201         FILE "$%PATH_OUT%\bin\additions\VBoxOGL.dll"
    202         FILE "$%PATH_OUT%\bin\additions\libWine.dll"
    203         FILE "$%PATH_OUT%\bin\additions\VBoxD3D9wddm.dll"
    204         FILE "$%PATH_OUT%\bin\additions\wined3dwddm.dll"
    205         SetOutPath $g_strSystemDir
    206         Goto doneCr
    207       ${EndIf}
    208     !endif
     188    ${If} $g_bWithWDDM == "true"
     189      SetOutPath "$INSTDIR"
     190      ; WDDM Video driver
     191      FILE "$%PATH_OUT%\bin\additions\VBoxVideoWddm.sys"
     192      FILE "$%PATH_OUT%\bin\additions\VBoxDispD3D.dll"
     193      FILE "$%PATH_OUT%\bin\additions\VBoxVideoWddm.inf"
     194      FILE "$%PATH_OUT%\bin\additions\VBoxOGLarrayspu.dll"
     195      FILE "$%PATH_OUT%\bin\additions\VBoxOGLcrutil.dll"
     196      FILE "$%PATH_OUT%\bin\additions\VBoxOGLerrorspu.dll"
     197      FILE "$%PATH_OUT%\bin\additions\VBoxOGLpackspu.dll"
     198      FILE "$%PATH_OUT%\bin\additions\VBoxOGLpassthroughspu.dll"
     199      FILE "$%PATH_OUT%\bin\additions\VBoxOGLfeedbackspu.dll"
     200      FILE "$%PATH_OUT%\bin\additions\VBoxOGL.dll"
     201      FILE "$%PATH_OUT%\bin\additions\libWine.dll"
     202      FILE "$%PATH_OUT%\bin\additions\VBoxD3D9wddm.dll"
     203      FILE "$%PATH_OUT%\bin\additions\wined3dwddm.dll"
     204      SetOutPath $g_strSystemDir
     205      Goto doneCr
     206    ${EndIf}
    209207  !endif
    210208  ; crOpenGL
     
    288286  StrCmp $g_bNoVideoDrv "true" drv_guest
    289287  SetOutPath "$INSTDIR"
    290   DetailPrint "Installing video driver ..."
    291   ${If} $g_bInstallWDDM == "true"
    292     DetailPrint "WDDM Driver being installed ..."
     288  ${If} $g_bWithWDDM == "true"
     289    DetailPrint "Installing WDDM video driver ..."
    293290    nsExec::ExecToLog '"$INSTDIR\VBoxDrvInst.exe" /i "PCI\VEN_80EE&DEV_BEEF&SUBSYS_00000000&REV_00" "$INSTDIR\VBoxVideoWddm.inf" "Display"'
    294291  ${Else}
     292    DetailPrint "Installing video driver ..."
    295293    nsExec::ExecToLog '"$INSTDIR\VBoxDrvInst.exe" /i "PCI\VEN_80EE&DEV_BEEF&SUBSYS_00000000&REV_00" "$INSTDIR\VBoxVideo.inf" "Display"'
    296294  ${EndIf}
     
    356354!if $%VBOX_WITH_CROGL% == "1"
    357355cropengl:
    358   ${If} $g_bInstallWDDM == "true"
     356  ${If} $g_bWithWDDM == "true"
     357    ; Nothing to do here
    359358  ${Else}
    360359    DetailPrint "Installing 3D OpenGL support ..."
     
    363362    WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers\VBoxOGL" "Flags" 1
    364363    WriteRegStr   HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion\OpenGLDrivers\VBoxOGL" "Dll" "VBoxOGL.dll"
    365 
    366364!if $%BUILD_TARGET_ARCH% == "amd64"
    367365    ; Write additional keys required for Windows XP, Vista and 7 64-bit (but for 32-bit stuff)
    368     ${If} $g_strWinVersion   == '7'   
     366    ${If} $g_strWinVersion   == '7'
    369367    ${OrIf} $g_strWinVersion == 'Vista'
    370368    ${OrIf} $g_strWinVersion == 'XP'
     
    455453  Pop $0    ; Ret value
    456454  ${If} $0 == "0"
    457     DetailPrint "WDDM Driver is installed"
    458     StrCpy $g_bInstallWDDM "true"
     455    DetailPrint "WDDM display driver is installed"
     456    StrCpy $g_bWithWDDM "true"
    459457  ${ElseIf} $0 == "4"
    460     DetailPrint "Non-WDDM Driver is installed"
     458    DetailPrint "Non-WDDM display driver is installed"
    461459  ${Else}
    462460    DetailPrint "Error occured"
     
    477475
    478476  ; Remove video driver
    479   ${If} $g_bInstallWDDM == "true"
     477  ${If} $g_bWithWDDM == "true"
    480478    nsExec::ExecToLog '"$INSTDIR\VBoxDrvInst.exe" /delsvc VBoxVideoWddm'
    481479    Delete /REBOOTOK "$g_strSystemDir\drivers\VBoxVideoWddm.sys"
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette