# installing windows package with msiexec...

**URL:** <https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331>\
**Category:** Ansible Project\
**Tags:** windows\
**Created:** [April 19, 2018, 4:35pm UTC](https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331 "2018-04-19T16:35:07Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![william.dossett](https://avatars.discourse-cdn.com/v4/letter/w/b782af/32.png) [@william.dossett](https://forum.ansible.com/u/william.dossett)\
**Post date:** [April 19, 2018, 4:35pm UTC](https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331/1 "2018-04-19T16:35:07Z")

</div>

Hi…

I should probably know how to search for this as I am sure others have asked it - I have a very short time frame to get something working and then I have to work on another project - if anyone could help me with this I would really appreciate it!

I need to use the following command to install a windows package…

# msiexec /qn /i “c:/bak/msodbcsql.msi” IACCEPTMSODBCSQLLICENSETERMS=YES

I have tried:

win\_package:  
path: \mydomain.local\share\sqltools\msodbcsql.msi

product\_id: ‘{7E425BFB-1DEB-499F-8F3F-3522A6E98754}’  
state: present  
aruguments: /qn /i IACCEPTMSODBCSQLLICENSETERMS=YES

and that has a fatal error that fills several screens with red unhappiness that I am trying to make sense of but no luck so far… the first bit looks like this:

fatal: [AnsWin201601]: FAILED! =\> {“changed”: false, “exit\_code”: 1603, “log”: "=== Verbose logging started: 4/19/2018 10:21:12 Build type: SHIP UNICODE 5.00.10011.00 Calling process: C:\Windows\system32\msiexec.exe ===\r\nMSI (c) (D0:80) [10:21:12:367]: Resetting cached policy values\r\nMSI (c) (D0:80) [10:21:12:367]: Machine policy value ‘Debug’ is 0\r\nMSI (c) (D0:80) [10:21:12:367]: \*\*\*\*\*\*\* RunEngine:\r\n \*\*\*\*\*\*\* Product: \\mydomain.local\share\sqltools\msodbcsql.msi\r\n \*\*\*\*\*\*\* Action: \r\n \*\*\*\*\*\*\* CommandLine: \*\*\*\*\*\*\*\*\*\*\r\nMSI (c) (D0:80) [10:21:12:367]: Client-side and UI is none or basic: Running entire install on the server.\r\nMSI (c) (D0:80) [10:21:12:367]: Grabbed execution mutex.\r\nMSI (c) (D0:80) [10:21:12:382]: Cloaking enabled.\r\nMSI (c) (D0:80) [10:21:12:382]: Attempting to enable all disabled privileges before calling Install on Server\r\nMSI (c) (D0:80) [10:21:12:382]: Incrementing counter to disable shutdown. Counter after increment: 0\r\nMSI (s) (20:28) [10:21:12:382]: Running installation inside multi-package transaction \\mydomain.local\share\sqltools\msodbcsql.msi\r\nMSI (s) (20:28) [10:21:12:382]: Grabbed execution mutex.\r\nMSI (s) (20:10) [10:21:12:382]: Resetting cached policy values\r\nMSI (s) (20:10) [10:21:12:382]: Machine policy value ‘Debug’ is 0\r\nMSI (s) (20:10) [10:21:12:382]: \*\*\*\*\*\*\* RunEngine:\r\n \*\*\*\*\*\*\* Product: \\century.terrapin.local\share\sqltools\msodbcsql.msi\r\n \*\*\*\*\*\*\* Action: \r\n

If the product is already installed no error… I install another package from the same location on the line before this … but it does not require the msiexec … you can just use the /s switch on it and that works fine, so I know my setup is basically working, but I think I am just not calling msiexec correctly or something and I don’t know how and googling hasn’t found me anything yet. Sorry for the long post, but any help on this would be hugely appreciated.

Thanks  
Bill

---

<div class="post-metadata">

**Author:** ![jborean](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/jborean/32/1525_2.png) [@jborean](https://forum.ansible.com/u/jborean)\
**Post date:** [April 19, 2018, 8:13pm UTC](https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331/2 "2018-04-19T20:13:32Z")

</div>

The log doesn’t really indicate what is going wrong here, usually the error is near the end but MSI logs can be quite verbose. Network paths and WinRM usually don’t play well due to a multitude of issues stemming from how WinRM works but I would try

- Use become to bypass the WinRM hell [http://docs.ansible.com/ansible/latest/user\_guide/become.html#become-and-windows](http://docs.ansible.com/ansible/latest/user_guide/become.html#become-and-windows). This will run the command like you would when logging on locally and trying it

- Test out to see if this installs when the path is a local path instead of from the network path, you also don’t need the product id in that case

- Remove the /qn, win\_package automatically adds /qn and /norestart to the arguments when the path is to an MSI

Thanks

Jordan

---

<div class="post-metadata">

**Author:** ![william.dossett](https://avatars.discourse-cdn.com/v4/letter/w/b782af/32.png) [@william.dossett](https://forum.ansible.com/u/william.dossett)\
**Post date:** [April 20, 2018, 1:10pm UTC](https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331/3 "2018-04-20T13:10:13Z")

</div>

Thanks for the input Jordan, I believe I am using become. I tried without the /qn… no difference, I copied the installer locally no difference.

The end of the error looks like this

MSI (s) (70:98) [18:25:43:104]: Product: Microsoft ODBC Driver 13 for SQL Server – Installation failed.

MSI (s) (70:98) [18:25:43:104]: Windows Installer installed the product. Product Name: Microsoft ODBC Driver 13 for SQL Server. Product Version: 13.1.4414.46. Product Language: 1033. Manufacturer: Microsoft Corporation. Installation success or error status: 1603.

MSI (s) (70:98) [18:25:43:104]: Deferring clean up of packages/files, if any exist

MSI (s) (70:98) [18:25:43:104]: MainEngineThread is returning 1603

MSI (s) (70:CC) [18:25:43:104]: RESTART MANAGER: Session closed.

MSI (s) (70:CC) [18:25:43:104]: No System Restore sequence number for this installation.

=== Logging stopped: 4/19/2018 18:25:43 ===

MSI (s) (70:CC) [18:25:43:104]: User policy value ‘DisableRollback’ is 0

MSI (s) (70:CC) [18:25:43:104]: Machine policy value ‘DisableRollback’ is 0

MSI (s) (70:CC) [18:25:43:104]: Incrementing counter to disable shutdown. Counter after increment: 0

MSI (s) (70:CC) [18:25:43:104]: Note: 1: 1402 2: HKEY\_LOCAL\_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollback\Scripts 3: 2

MSI (s) (70:CC) [18:25:43:104]: Note: 1: 1402 2: HKEY\_LOCAL\_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollback\Scripts 3: 2

MSI (s) (70:CC) [18:25:43:104]: Decrementing counter to disable shutdown. If counter \>= 0, shutdown will be denied. Counter after decrement: -1

MSI (s) (70:CC) [18:25:43:104]: Destroying RemoteAPI object.

MSI (s) (70:B4) [18:25:43:104]: Custom Action Manager thread ending.

MSI (c) (9C:E8) [18:25:43:104]: Decrementing counter to disable shutdown. If counter \>= 0, shutdown will be denied. Counter after decrement: -1

MSI (c) (9C:E8) [18:25:43:104]: MainEngineThread is returning 1603

=== Verbose logging stopped: 4/19/2018 18:25:43 ===

", “msg”: “unexpected rc from install C:\Windows\system32\msiexec.exe /i c:\temp\msodbcsql.msi /L\*V C:\Users\billd\AppData\Local\Temp\apknplam.2td /qn /norestart: see rc, stdout and stderr for more details”, “rc”: 1603, “reboot\_required”: false, “restart\_required”: false, “stderr”: “”, “stderr\_lines”: , “stdout”: “”, “stdout\_lines”: }

I looked up that RC and Microsoft said it could be because SYSTEM does not have access to install, so I followed their solution and gave SYSTEM full access to the C: drive

But it still fails. Any other ideas?

Thanks again, appreciate any help I can get on this.

Bill

---

<div class="post-metadata">

**Author:** ![william.dossett](https://avatars.discourse-cdn.com/v4/letter/w/b782af/32.png) [@william.dossett](https://forum.ansible.com/u/william.dossett)\
**Post date:** [April 20, 2018, 1:27pm UTC](https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331/4 "2018-04-20T13:27:36Z")

</div>

Hi, I found the problem! problems actually… a. I can’t spell…

state: present  
aruguments: /qn /i IACCEPTMSODBCSQLLICENSETERMS=YES

aruguments, not sure why that didn’t get picked up sooner… and I took all the switches out and then the event viewer said I did need the IACCEPTMSODBCSQLLICENSETERMS=YES for it to install, and thats when I noticed the mispelling when I put that argument back in and now it works.

Thanks… slow progress… but progress is progress and keeps me optimistic!

---

<div class="post-metadata">

**Author:** ![Snehal\_Biche](https://avatars.discourse-cdn.com/v4/letter/s/ba8739/32.png) [@Snehal\_Biche](https://forum.ansible.com/u/Snehal_Biche)\
**Post date:** [April 21, 2018, 2:39am UTC](https://forum.ansible.com/t/installing-windows-package-with-msiexec/27331/5 "2018-04-21T02:39:56Z")

</div>

Your error says no ui at client side. Does your msi needs UI after execution? If yes you should know Ansible is not interactive to make it interactive use PSexecute64.exe search on Google for more info or reply back to know how to.
