The Silent Install options for the Windows installer (msiexec)
With TeamViewer, you can deploy full versions or modules to your entire network of devices silently, without leaving your desk, instead of requiring manual actions from the user on the remote side. Easily solve deployment issues without having to go around to every device and click “accept” during the roll out. TeamViewer 14.1 Unattended Installer. Click “Yes” when prompted to install TeamViewer Host for HSVS. TeamViewer 14 Host.
Teamviewer Silent Install Options
/quiet, /q, qn | Fully silent mode |
/passive | Unattended mode, shows progress bar only. |
/norestart | Do not restart the system after the installation |
/forcerestart | Restart the system after installation is complete |
/log, /l | Enable Logging |
Example
Silently install the msi package:
Silently install the msi package, no reboot
Silently install the msi package and write the installation log to file C:msilog.txt
Silent Uninstall Teamviewer
Silently uninstall the msi package:
Teamviewer 14 Silent Install Switch
Silently uninstall the msi package by the product code:
So I’ve been playing with deploying TeamViewer 13 unattended host for several hours today and have reached the conclusion that the deployment documentation is just grossly inadequate. Here’s what I’ve learned after looking at several forum posts:
- Don’t try to deploy your customized TeamViewer unattended host MSI application via the GPO software installation package method in Active Directory. Deploy GPO using a batch script or powershell instead and save yourself the aggravation of troubleshooting why some workstations won’t install the package.
- I tried the GPO software installation package method first because it’s one of the recommended ways to deploy the TeamViewer MSI via the official deployment documentation on P7. But after finding that most of my deployments failed with %%2 and %%1274 even after adding a 30 second delay to Computer Configuration > Policies > Administrative Templates > System > Group Policy > Startup policy processing wait time, I decided i had wasted enough time troubleshooting this method and found the script method to work much better.
- What finally worked consistently for me was this simple batch script (where XXXXXXX is your deployment ID):start /wait msiexec.exe /i SERVERSHARETeamViewer_Host-idcXXXXXXX.msi /qn
- If systems already have TeamViewer installed (either deployed or manually installed), you won’t be able to use the TeamViewer assignment tool to assign newly deployed unattended host installs (where the newest version was just installed over an existing version) to a new or different TeamViewer account. Running the Teamviewer_Assignment.exe on an existing install that was upgraded via deployment will yield the following error:Error: Assignment failed with: Reading datafile “C:Program Files (x86)TeamViewerAssignmentData.json” failed with: File not foundIf you’re like me, where the customer used a new TeamViewer ID to sign up for the upgraded version, you’ll need to completely uninstall TeamViewer host on all workstations and then re-install. Here’s how:
- Run a GPO with a script to completely remove TeamViewer first. Here is an example of a script for removing x64 versions of older TeamViewer versions:
- @echo offREM Check for running TeamViewer processestasklist /FI “IMAGENAME eq TeamViewer.exe” 2>NUL | find /I /N “TeamViewer.exe”>NUL
if “%ERRORLEVEL%””0” (GOTO :CHECK) ELSE (GOTO :END)REM Check if TeamViewer 13 is already installed (crude test that may not work for everyone).:CHECK
Set “VER=C:userspublicdesktopTeamViewer 13 Host.lnk”
IF EXIST “%VER%” (GOTO :END) ELSE (GOTO :UNINSTALL)REM Uninstall TeamViewer and remove registry entry (needed if re-assigning to a different account):UNINSTALL
taskkill /f /im TeamViewer.exe
TIMEOUT 2
start “C:Program Files (x86)TeamVieweruninstall.exe” /S
reg delete “HKLMSoftwareWow6432NodeTeamViewer” /f
TIMEOUT 10
exit:END
exit - After complete removal, re-install TeamViewer.
- Now run the TeamViewer Assignment tool and it should succeed.
- @echo off
TIMEOUT 60
start /wait msiexec.exe /i SERVERSHARETeamviewer_Host-XXXXXXXX.msi /qn
TIMEOUT 30
start /wait SERVERSHARETeamViewer_Assignment.exe -apitoken XXXXXXX-XXXXXXXXXXX -datafile “C:Program Files (x86)TeamViewerAssignmentData.json” -allowEasyAccess=true -devicealias “${COMPUTERNAME}”
exit
- Finally, if you want to push a uniform personal password to your deployed unattended host installs (generally not recommended, but sometimes required), you’ll have to do it by exporting a .reg file, naming it TeamViewer_Settings.reg (the name matters) and storing it in the same share as the TeamViewer MSI deployment installation file. Here’s how:
- On a workstation with the same version of TeamViewer installed, select Extras->Options->Advanced->Show Advanced Options->Export options to a *.reg file.
- Enter TeamViewer_Settings.reg as thefilename and click Save.
- Check the Export personal password option and enter and confirm a desired personal password to set for each unattended host install. Then click Export.
- Store the resultant TeamViewer_Settings.reg file on a network share where your MSI file exists. When TeamViewer is deployed, the exported password will automatically be set as the personal password on all deployed systems.
exit
- On a workstation with the same version of TeamViewer installed, select Extras->Options->Advanced->Show Advanced Options->Export options to a *.reg file.
That’s it folks.