Vix vmrun doesn't work with VMware Player
Asked Answered
O

4

11

I am trying to run a batch file on my virtual machine through VIX vmrun.

For starters it doesn't even want to start. When I try this in the command line:

vmrun -T player start "D:\myUser\VMWare\Windows7\Windows 7.vmx"

It says:

Unable to connect to host.

Error: The specified version was not found

Any workaround for this? I heard it has something to do with VIX config files not handling VMware Player properly, but haven't found out anything specific.

For the mention I have VMware Player version 7.1.2 and VIX version 1.13.

Also I don't want to buy Workstation.

Outlander answered 13/8, 2015 at 10:12 Comment(0)
O
6

Ok, managed to get it working, here's how:

1) In the VMware\VMware VIX folder there is a vixwrapper-config.txt file. Make a backup and overwrite the following over the content of the file:

#@Version-Info
#
# VixAllProducts revision mapping for Workstation/Player
#
# This file translates product version specifications into the appropriate Vix
# implementations.
#
# Each @Version-Info line has 5 white-space seperated entries:
#
#    provider-type: ws, esx, viserver, etc
#    apiVersion: the apiVersion supported, as passed in from VixHost_Connect()
#    ipc-type: none, vmdb, vmodl, cim
#    product-version: the product version string
#
#    implementation-directory: the path to the library that implements the
#          version described by the first 4 parameters
#
#
# The configuration is based on the first 4 fields, which describe
# the product.  The 5th field is the location.  To force it to try
# multiple location, the same configuration can be repeated.  Note that
# list is built in LIFO order, so the latest entry in the configuration
# will be the first used.  If for some reason that value fails, it will
# continue through any other matches.


# Workstation 11.1.2 and Player 7.1.2
ws        17  vmdb  11.1.2 Workstation-11.0.0-and-vSphere-6.0.0
player    17  vmdb   7.1.2 Workstation-11.0.0-and-vSphere-6.0.0
ws-shared 17  none  11.1.2 Workstation-11.0.0-and-vSphere-6.0.0

# EOF

2) If there is a folder named "Workstation-11.0.0-and-vSphere-6.0.0" then move it somewhere else as a backup

3) Make a copy of the folder "Workstation-10.0.0-and-vSphere-5.5.0" and name it:

Workstation-11.0.0-and-vSphere-6.0.0

4) Don't forget to add the vmrun path to the user variable: PATH (the vmrun path should be something like this: "C:\Program Files (x86)\VMware\VMware VIX\")

Now the vmrun commands should work.

The following command opens the VM:

vmrun -T player start "D:\myUser\VMWare\Windows7\Windows 7.vmx"

Outlander answered 20/8, 2015 at 13:59 Comment(0)
M
6

Got here with the same problem but a different version of VMWare player.

From what I tried I think that you only need to have a line in the vixwrapper-config.txt that redirects the version of the player you have to one of these "Workstation-xxxx" folders in the VIX folder.

What worked in my case is this line in the vixwrapper-config.txt

player    17  vmdb  12.1.1 Workstation-10.0.0-and-vSphere-5.5.0

Where:

  • 12.1.1 is the version of the player (as per the About box in the Help or properties in the executable)

  • Workstation-10.0.0-and-vSphere-5.5.0 is the name of a folder in the VIX program folder (I have chosen the highest version. There seems to be no need to copy and rename folders, just pointing it to an existing one seems enough)

  • 17 : I have no idea but it works :-) (tried some other values and it worked too)

Misguidance answered 8/9, 2016 at 11:6 Comment(0)
M
5

Expanding on the answer from Paul-et-Mickey (don't have 50 points and can't comment, sorry). If you're using the latest version of player etc., don't forget to include minor version. So for me it was

player 19 vmdb 15.0.2 Workstation-12.0.0

The file to edit is in /usr/lib/vmware-vix/vixwrapper-config.txt.

Moorwort answered 5/2, 2019 at 10:34 Comment(1)
Any hint what this line should be for latest player 16.1.1 version?Jala
S
3

As comments in vixwrapper-config file has explained, it's the wrapper between VIX tools (ie vmrun) and your VMware engines (WorkStation, Player, ESX, and so on). Now if you want to wrap this VIX to a VMplayer 15.0.0 (to be able to use 'vmrun -T player ...'), then you must have a line

player 19 vmdb 15.0.0 Workstation-12.0.0

where 'player' is for VMPlayer, '19' is the API version, 'vmdb' is the form of your virtual machines repository, '15.0.0' the version of your VMPlayer, and the sub-directory where API's libraries are located.

In few words, duplicate an existing line with 'player' and adapt to proper version of your VMPlayer.

Sigmoid answered 4/11, 2018 at 0:34 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.