Solved

XP to VM glitch

Posted on 2014-04-06
11
222 Views
Last Modified: 2016-10-27
Greetings,

    Can anyone help with a problem I'm having where I
have coded an  MS Access 2003 program that has run
faithfully for years under Win XP with DirectX8 on two
different vintage laptops but now fails under
VMWare Workstation 7.0.1.
    I used Acronis True Image to copy a complete image
of the laptops C drive to the virtual host.  It boots
XP with no problem, runs Access with no prob.  But it
dies while running my program giving the following error;

     Microsoft Visual Basic
      Run-time error "91":
            Object variable or With block variable not set

If I select Debug, it jumps in the code to the line;
            diDev.Poll

Note in the begining of the code code are the lines;
            Dim di As DirectInput8
            Dim diDev As DirectInputDevice8
            Dim diDevEnum As DirectInputEnumDevice8

Note:  On the laptops (running XP)  the program runs
withOUT any problem.

Thanks.
0
Comment
Question by:Spudstah
11 Comments
 
LVL 84

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 75 total points
ID: 39982053
In most cases you must install referenced libraries like that. I'm not sure if TrueImage would do this properly, but it would sure seem like it would.

Do you have the installation media for DirectInput8 (whatever that is)? If so, try running that on the vmWare install to see if that resolves it.
0
 
LVL 48

Accepted Solution

by:
dbrunton earned 350 total points
ID: 39982058
Possibly ...

It looks like you are trying to run DirectX commands.  Check that the laptop supports DirectX.  See http://pubs.vmware.com/workstation-10/topic/com.vmware.ws.using.doc/GUID-EA588485-718A-4FD8-81F5-B6E1F04C5788.html

You may also have to install VMWare Tools.  See https://www.vmware.com/support/ws5/doc/ws_vidsound_d3d_enabling_guestos.html
0
 

Author Comment

by:Spudstah
ID: 39982062
DirectInput8 is an internal of the Microsoft DirectX8 ("blackbox software")  DirectX8
interfaced the Input/Output communications.  Starting with DirectX10 microsoft
dropped it's legacy support of the input functions.  However, the WinXP OSs on
both laptops were running DirectX8 (which was the standard MS I/O and was
an integral part of the WinXP OS.

True image has always installed a "true image" for me in the past.  Meaning in part
that since DirectX8 is part of WinXP and WinXP is all imaged, like you, I don't see
True Image dropping the ball here.

Secondly, I have a host of WinXP Pro where I installed the host from an original full installation disk,, and it's acting the same.
0
 

Author Comment

by:Spudstah
ID: 39982074
dbrunton,

You are correct that I am trying to run DirectX commands  --- in a WinXP host that is a True Image of an WinXP OS running DirectX8.  The Host is being run in VMware Workstation on a laptop that's natively running DirectX10 so I would expect it to be capable of dealing with
8.

VMWare Tools is loaded
0
 
LVL 48

Expert Comment

by:dbrunton
ID: 39982155
At the command line in the VM machine type

dxdiag

and see what that does.
0
U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

 

Author Comment

by:Spudstah
ID: 39982249
dxbrunton,

  at new laptop native machine command line it shows DirectX11

  at the WinXP Host command line it shows WinXP  & DirectX9

at the legacy laptop command  line it shows WinXP  & DirectX9

In the WinXP Host dxdiag, ran the tests, all tests ran fine.
0
 
LVL 48

Expert Comment

by:dbrunton
ID: 39982267
Yeah, but try dxdiag inside the Guest machine.
0
 
LVL 118

Assisted Solution

by:Andrew Hancock (VMware vExpert / EE MVE)
Andrew Hancock (VMware vExpert / EE MVE) earned 75 total points
ID: 39982346
Has this run for years under VMware Workstation?

Probably it does not run, because the Virtual Machine does not have the 3D hardware to support DirectX v8.
0
 

Author Comment

by:Spudstah
ID: 39982796
dbrunton,

"at the WinXP Host command line it shows WinXP  & DirectX9"
was done at the command line of the WinXP Host running within VMWare.


Andrew,

It has run in WinXP as the loaded OS on laptop.    No VMware.
When my program was generated, 3D was still for the future.
The original laptop was totally divorced from 3D.
0
 
LVL 48

Expert Comment

by:dbrunton
ID: 39982861
Note in the begining of the code code are the lines;
            Dim di As DirectInput8
            Dim diDev As DirectInputDevice8
            Dim diDevEnum As DirectInputEnumDevice8

If I select Debug, it jumps in the code to the line;
            diDev.Poll

which I presume is checking for input from some device

See http://msdn.microsoft.com/en-us/library/aa264506%28v=vs.60%29.aspx and the examples there with your error code.

It may be necessary in your code to check whether diDev has actually acquired anything.  For example

if diDev Is Nothing Then <<Pop up message>> stolen from http://www.pages.drexel.edu/~cwk23/vbJoystick.pdf
0
 

Author Closing Comment

by:Spudstah
ID: 39991211
It turns out no answer helped find the problem.....although I did.

I'm at a quandry as to how to close this question so I spread the points out based on how many times a person responded.

The program runs as originally written.  The solution is that when loaded in VMWare the gamepad has to be plugged in After the host is running.  DirectX would not see one attached to the native computer..... Even if you used the VM device attach/switch option.
Once I found the trick of attaching the gamepad -After- the host was up and running, everything seems to be running fine.

Thanks for trying.
0

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Last article we focus in how to VMware: How to create and use VMs TAGs – Part 1 so before follow this article and perform the next tasks, you should read the first article how to create the TAG before using them in Veeam Backup Jobs.
HOW TO: Upload an ISO image to a VMware datastore for use with VMware vSphere Hypervisor 6.5 (ESXi 6.5) using the vSphere Host Client, and checking its MD5 checksum signature is correct.  It's a good idea to compare checksums, because many installat…
This Micro Tutorial walks you through using a remote console to access a server and install ESXi 5.1. This example is showing remote access and installation using a Dell server. The hypervisor is the very first component of your virtual infrastructu…
This video shows you how easy it is to boot from ISO images for virtual machines with the ISO images stored on a local datastore on the ESXi host.

930 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now