Jump to content



Photo
- - - - -

Weird 64-bit VPX issue on Windows 10


  • Please log in to reply
21 replies to this topic

#1 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 12 July 2023 - 03:02 PM

I'm having the strangest problem.  I can't run any of the 64 bit versions of the Visual Pinball executables.  Neither 10.8 ver 4, nor the older 10.7.4 64-bit versions run on my Windows 10 laptop.  When I try to run any 64-bit version, new or old, I get this error message:
 
(I tried copying a snapshot of the Windows System Error Message, but somehow it's not accepting it.  Here's what it says:)

 

----------------------------------------------------------------------------------

VpinballX64.exe - Application Error

 

(X) The application was unable to start correctly (0xc000007b).

Click OK to close the application.

-----------------------------------------------------------------------------------

 

I am thinking at some point maybe I got a poisoned system update, maybe?  I'm pretty sure I used to be able to run these 64-bit .EXE's, but not 100%.  I am going to try to revert to an older image backup, I have images saved from a month ago, and one from back in April.  Then, I can test the fact that these used to load and run previously for certain.
 
I noticed several .NET updates come down the pipeline from MS recently, and the limited information out there on this error seems to just be "reload DirectX and .NET latest versions, and voila!", or "copy all the DirectX files to the local directory", so it seems related to either DirectX or .NET somehow.
 
After poking around a little, and trying copying some different newer versions of the DX files into the local directory, etc. nothing seemed to help.  I did notice if I renamed the xinput1_3.dll file or the Freeimage64.dll file, then the 64 bit .EXE's would come up with an different error message about the missing .DLL files instead of the usual system error crash with the 0xc0000007b error.  The problem is apparently happening after some initial housekeeping and loading of those other .DLL's, it would seem.  This might be a clue to where the error lies, perhaps?
 
Now, here's the real rub - I use a mirroring tool to copy the EXACT same file set to another laptop that runs Windows 7, and it RUNS these 64-bit .EXE files just fine with no problems!  The same exact files running fine on the other laptop would surely seem to point to something being broke at the system level somehow on the Windows 10 PC?
 
I hope someone else has seen this or has an answer to what's going on.  In the meantime, I will try to restore the backups I have, and see if it's something that got broken in the last 3 months or so by hopefully confirming the 64-bit stuff used to work.  Thanks very much for any help!
 
Mr.T

 



#2 Mike DA Spike

Mike DA Spike

    Pinball Fan

  • Platinum Supporter
  • 1,278 posts
  • Location:Hoofddorp

  • Flag: Netherlands

  • Favorite Pinball: Too many to mention

Posted 12 July 2023 - 03:23 PM

This helped me in the past (not sure if it is still valid) https://www.tenforum...007b-error.html

331ddabcc742f0ba74791e946eb0f791.gif Try PinballX Database manager as a replacement of PinballX's game list manager
With special thanks to Scutters 


#3 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 13 July 2023 - 08:43 AM

UPDATE - OK, I re-imaged my system, backed it up twice, and then restored a backup image from April 28, 2023.  Bad news - It was still broke in the earlier backup too.  :(  It was either already broken by then, or it NEVER worked since I migrated to the Windows 10 system (some time around early February, 2023), so it's possible I just never noticed since I play the 32 bit version normally.

 

Also, one of the web sites out there suggested running SFC /scannow - I did this, and it actually said it found something that was corrupted!  It fixed whatever the problem was, and to be sure I ran it again and it did not say it found any other errors.  I need to see if SFC leaves a system log regarding what it found, as that also may be a clue.

 

 

Thanks, @Mike.  That link is dead now, but I resurrected the site via archive.org, and while the fix they suggest is no longer available for download, they had the good sense to list the files contained within their archive.  So, it can be reconstructed file-by-file, I hope it works.  Sadly, it looks kind of similar to the few other websites out there that address this problem, mostly with similar solutions such as copying in all the applicable .DLL files from DirectX or .NET into the local directory.  But thank you for that link, I may try to rebuild his file collection and give that a try along with a few others.

 

Maybe there is a list out there of the .DLL's that Visual Pinball in particular needs, especially the 64-bit version?  I will try to search that out, since most of the solutions for this seem to be about the same - copy the required system .DLL's the application (VP) relies on into the local directory.

 

 

I can probably continue to only play the 32 bit version if all else fails, so this is not a disaster of the first order.  I would like to try the 64-bit version, however - especially with the new 10.8 updates, tables will probably be needing more memory in the near future.  In the meantime, FWIW I have used the 4GB patch that Future Pinball and BAM use to get 2GB more memory - it seems to work for VP too, AFAICT.

 

What worries me more is that there may be some other applications or features that may rely on working 64-bit DirectX and/or .NET subsystems that also might be affected.  There seems to be some sort of underlying corruption or a misconfiguration in one of those subsystems, I believe.

 

Thanks again for any help anyone can give me on this!

 

 

Mr.T



#4 Carny_Priest

Carny_Priest

    Pinball Fan

  • Members
  • PipPipPipPip
  • 1,257 posts
  • Location:Austin, TX

  • Flag: United States of America

  • Favorite Pinball: EATPM

Posted 13 July 2023 - 05:43 PM

I don't know if this is your problem but 64-bit VPX will definitely not run without installing the requisite run-time components from Microsoft Visual C++ 2013 Redistributable (x64). You would get this if you were installing the Baller Installer update or PinballX. It is not included in the AIO installer available here at VPF. I don't think you would get this with any Windows Update. You can google for it also, of course.


Edited by Carny_Priest, 13 July 2023 - 05:44 PM.


#5 wiesshund

wiesshund

    VPF Legend

  • Members
  • PipPipPipPipPipPipPip
  • 11,859 posts

  • Flag: United States of America

  • Favorite Pinball: How many can i have?

Posted 13 July 2023 - 05:55 PM

I don't know if this is your problem but 64-bit VPX will definitely not run without installing the requisite run-time components from Microsoft Visual C++ 2013 Redistributable (x64). You would get this if you were installing the Baller Installer update or PinballX. It is not included in the AIO installer available here at VPF. I don't think you would get this with any Windows Update. You can google for it also, of course.

Download Visual C++ Redistributable Runtimes All-in-One May 2023 | TechPowerUp


If you feel the need to empty your wallet in my direction, i don't have any way to receive it anyways

Spend it on Hookers and Blow


#6 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 13 July 2023 - 11:22 PM

UPDATE  - OK, I found the logs for sfc, and there was apparently no problems that apply to this issue, the corruption notice was caused by dual ownership of some system directories, but apparently that's not a real problem according to MS, or at least not one that would affect this issue, I believe.  Subsequent runs of sfc found no errors.

 

@Carny_Priest & weisshund, thank you very much for the link, unfortunately I had already installed all of these from either the same or a similar bundle back in Jan-Feb when I first built out the system.  Just in case they got corrupted somehow, I downloaded and installed them over the old ones I had, and sadly, it had no effect.  After a reboot the problem still persists.  :(

 

So, my last stab at this is to try copying in the individual DirectX components to the local directory like some of the websites say fixes this, I guess.  This I can already see in action like having to have a copy of the xinput1_3.dll file locally, for example.  Is there a collection of these files anywhere?  I will try to search for them.

 

This is really depressing - I'm trying to run this on Sheldon's laptop!  The mighty Alienware 17R3 should provide the ultimate in the virtual pinball experience.  :)



#7 TT11

TT11

    Pinball Fan

  • Members
  • PipPipPipPip
  • 636 posts
  • Location:Maitland AUSTRALIA

  • Flag: Australia

  • Favorite Pinball: Bally Kiss & Playboy, Stern Kiss & Playboy

  • 360 Gamer Tag: PoundedElliepup

Posted 14 July 2023 - 02:11 AM

I know it's not a fix but as a workaround, you could lower your Textures setting in 32 Bit VPX so you could at least get to launch and play BBB and LAH ???



#8 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 14 July 2023 - 11:51 AM

@TT11 - Yes, I do a combination of that plus using the 4GB_Patch utility that Future Pinball and BAM recommend and benefit from.

 

It's especially effective on 10.7.4, but sadly 10.8 doesn't seem to benefit from it as much, if at all.  For example, on 10.7.4 I have no problems with LAH with full texture memory allocated, however BBB will only run with 1K or 2K texture memory, maximum.  After patching, I can set the memory to 3K, so that's a minor improvement.

 

I tried patching the 10.8 beta 4 both regular and GL versions, and they did not show improvement in texture memory like the older 10.7 version did, sadly.  I can't run BBB in any 10.8 version at all :(

 

I need to get the 64-bit subsystems fixed on this machine.  I'm going to try copying in the individual DirectX components next, I guess.  I'm about out of ideas otherwise.



#9 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 15 July 2023 - 12:27 PM

UPDATE - OK, I found it!

 

It's the xinput1_3.dll file.  The one I had was apparently the 32-bit version of that file.  So far, it seems to be the only one that the OS can't seem to find on it's own.  Apparently it was superseded by xinput1_4.dll for Windows 10, but simply copying in or renaming that file doesn't work.  So, that's why people have to copy the xinput1_3.dll file to the local directory.  It turns out there are 32 and 64 bit versions of that file!  Here's a link to them both, I verified the files with virustotal so they're clean:

 

https://www.sts-tuto...nload/xinput1_3

 

They have both versions there.  By copying in the 64-bit version, I can get the 64 bit versions of Visual Pinball to work!  Yay!!  So, that's a major accomplishment.

 

So, I tried as the website above suggested, and copied the 32 bit version of xinput1_3.dll to C:\Windows\System32 and the 64 bit version to C:\Windows\SysWOW64.  After a reboot, for some reason the system isn't seeing the files there, like there is no path there, or the .DLL needs to be registered for the system to recognize them, maybe?  I tried running regsvr32 and installing the 32 bit .DLL, but the 64 bit .DLL would not register, and further, even after registering, the system is still not seeing those files in the system directories, nor does the registered 32 bit .DLL seem to work.

 

The problem is sort of related to why it works on Win7 but not 10.  As I mentioned above, the name and version of the file is newer in Windows 10, and is now named xinput1_4.dll, as far as I can tell.  I have to copy the needed xinput1_3.dll locally to the VPX directory in order for it to see the .DLLs, and of course, you can only have one 32 or 64 bit .DLL of the same name.  So only one works on the Windows 10 system without having entirely duplicate 32 and 64 bit Visual Pinball folders just for the sake of one lousy .DLL!  Windows 7 has the required files, both named xinput1_3.dll, each it its own 32 or 64 bit directory, and the system finds them as it should since they are a core part of the OS.  Trying to replicate this on Windows 10 does not seem to work, possibly because of the existence of the newer xinput1_4.dll files.

 

I guess the final thing I need is to find a way to register the older 1.3 32 and 64 bit dll's that aren't really part of Windows 10.  I'm trying to utilize the Windows unique Wow64 structure; having duplicate OS files for 32 and 64 bit co-exist so this local file duplication is (or should be) unnecessary.  Somehow I need to tell Windows 10 they are out there, register them or whatever so the system path search finds them properly as it works in Windows 7.  Either that, or is there a way to patch VP to use the newer Windows 10 versions of xinput1_4.dll?  I was thinking of trying to take a debugger and patch the .EXE if I can find references to the xinput1_3.dll file and change them to xinput1_4.dll and see what happens.  A cleaner solution would be to recompile the source with the name changed, and it would not even be necessary if damn Win10 was finding the xinput1_3.dll files as it (?) should.

 

Thanks for the help so far on this, I'm soooo close to getting this fixed.  FWIW, everything else in the 64-bit environment works great, with the exception of B2S, and I think I know what's wrong there too, so that's no big deal.  Almost!!

 

P.S. The DB2S problem was just that I had an older 32-bit only version installed, so a quick update on that with the latest 32/64 bit version, I hit on the issue - to support 64 bit, you need a Plugin64 directory with the same contents as the Plugin directory (links to DOF and PuPB2S).  I found this website that was very helpful in getting the 32 and 64 bit versions working together:

 

https://github.com/v...cab-Setup-Guide

 

So I'm all good now, except with the final issue of the Windows 10 32/64 bit subsystems not seeing the xinput1_3.dll files in the System32 and SysWoW64 directories like one would think it should.


Edited by Mister Transistor, 15 July 2023 - 02:45 PM.


#10 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 16 July 2023 - 06:15 AM

UPDATE - Final!

 

OK, I figured out the missing piece.  I didn't read the website I mentioned carefully enough!  :facepalm:

 

The 64 bit .DLL goes in the System32 directory, and the 32 bit .DLL goes in the SysWOW64 directory!  That seems backwards, but it's how 64-bit Windows works - the 64-bit stuff is the default, so it all lives in System32, and the 32 bit stuff is foreign to the OS, so it has to bob and weave to get the 32 bit stuff to work compatibly and that's more or less how the SysWOW64 subsystem works.

 

Anyway, swapping the .DLL's between the two system directories fixed everything.  I did not have to "register" them with regsvr32, only a reboot was required to get the OS to notice them.

 

I'm all good, and everything runs now with no local DirectX components or extra local .DLL's at all.  There was another file copied in a long time ago, along with the xinput1_3.dll, that also turns out to be unnecessary - that's the d3dx9_43.dll file.  I renamed that as a quick test, and it turns out it is also not needed.  That file is also a part of either DirectX or the OS and is already in the System32 and SysWOW64 directories.

 

Thank you all for your attention and time in helping me fix this.  Hopefully my posts will at least put this system error problem to bed, since the other sites out there recommend effectively putting a band-aid on the problem by copying in a bunch of missing DirectX or OS files to the local directory when the proper solution is to put these files into the proper Windows directories where they really belong.


Edited by Mister Transistor, 16 July 2023 - 06:22 AM.


#11 wiesshund

wiesshund

    VPF Legend

  • Members
  • PipPipPipPipPipPipPip
  • 11,859 posts

  • Flag: United States of America

  • Favorite Pinball: How many can i have?

Posted 16 July 2023 - 05:11 PM

WOW64 is the 32bit emulator
So SysWOW64 is the system folder for the 32bit emulator

 

WOW stands for Win32 On Win64


If you feel the need to empty your wallet in my direction, i don't have any way to receive it anyways

Spend it on Hookers and Blow


#12 Mike DA Spike

Mike DA Spike

    Pinball Fan

  • Platinum Supporter
  • 1,278 posts
  • Location:Hoofddorp

  • Flag: Netherlands

  • Favorite Pinball: Too many to mention

Posted 17 July 2023 - 02:48 AM

To be honst, I can't recall that I ever copied xinput1_3.dll to the windows system directory. Not the system32 or the syswow64. My xinput1_3.dll resist in the directory of visual pinball and the steam games (modified one for x360ce).

But I will check a bit later on.

And yes Microsoft made a mess with naming.
When moving from 32 bit to 64 bit, it took me a while why the system32 (previously in the os for the 'new' 32 bit) contained the 64 bit files
I always thought that WOW means Windows on Windows (indeed to emulate a previous architecture).

Edited by Mike DA Spike, 17 July 2023 - 02:50 AM.

331ddabcc742f0ba74791e946eb0f791.gif Try PinballX Database manager as a replacement of PinballX's game list manager
With special thanks to Scutters 


#13 wiesshund

wiesshund

    VPF Legend

  • Members
  • PipPipPipPipPipPipPip
  • 11,859 posts

  • Flag: United States of America

  • Favorite Pinball: How many can i have?

Posted 17 July 2023 - 03:05 AM

To be honst, I can't recall that I ever copied xinput1_3.dll to the windows system directory. Not the system32 or the syswow64. My xinput1_3.dll resist in the directory of visual pinball and the steam games (modified one for x360ce).

 

You don't

The only reason to need to is to make an app load a DLL other than standard.

X360ce because you want it to load the loader DLL instead.

And some old games, there are modified DLL's to make them play in modern windows

 

Those specific kinds of exceptions aside, finding that you have to do this for VPX to work points to a corrupted OS install
and the fastest, least painful way to address that is to just backup VPX and it's associated things, and re-image windows.

Then run a dummy install of what ever vpx/front end installer you used
Then go drop your backed up one over top of it and import any reg settings, like vpinmame etc, that you backed up.


If you feel the need to empty your wallet in my direction, i don't have any way to receive it anyways

Spend it on Hookers and Blow


#14 Mike DA Spike

Mike DA Spike

    Pinball Fan

  • Platinum Supporter
  • 1,278 posts
  • Location:Hoofddorp

  • Flag: Netherlands

  • Favorite Pinball: Too many to mention

Posted 17 July 2023 - 03:55 AM

** off topic **

 

Those specific kinds of exceptions aside, finding that you have to do this for VPX to work points to a corrupted OS install
and the fastest, least painful way to address that is to just backup VPX and it's associated things, and re-image windows.

Then run a dummy install of what ever vpx/front end installer you used
Then go drop your backed up one over top of it and import any reg settings, like vpinmame etc, that you backed up.

 

 

it's completely off topic, but for years, I make registry exports from my Visual PInball, and Vpinmame, and my Pinball root directory (which contains all my programs including Steam. But exclusive Pinupplayer as that is on another drive) is being backup on file level.
That help[ed me for year, but changed last year my backup strategy.
repartition c:\ (300 gb and rest for d:\ of the 2 TB drive)
c:\ for just windows. D:\ for Pinball stuff and e:\ for pinup and other shit (e: is a separate SSD).
C:\ is being backup now with system state backup, d:\ has file level  (on modifying file, keep retention of 30 files) and e:\ is not backed up at all.
so in case of OS corruption, I can point back in time and restore it quickly. Files that are deleted of pinball, I can restore.

And still the registry keys are being backed up as well.

Ok, costs me a lot of harddrive space, but it is worth it !

 

** on topic **


331ddabcc742f0ba74791e946eb0f791.gif Try PinballX Database manager as a replacement of PinballX's game list manager
With special thanks to Scutters 


#15 Mister Transistor

Mister Transistor

    Hobbyist

  • Members
  • PipPip
  • 22 posts

  • Flag: United States of America

  • Favorite Pinball: Fireball! (The ORIGINAL EM VER!)

Posted 17 July 2023 - 09:02 AM

@weisshund - "WOW stands for Win32 On Win64" - That makes perfect sense given the name!  It's the existence of the System32 directory that confuses people, I think - I expected the 32 bit stuff to be in the "32" named directory, and vice versa - which is incorrect, as I found out.  Thanks for that tidbit!

 

@Mike - From what I have been able to gather, xinput1_3.dll is part of older DirectX 9.  That had to be added to Windows 7, but became a native part of the OS with Windows 10.  So, that file is put into the Windows directories when you install DirectX properly on Windows 7.  On Windows 10, the file has since been renamed for later versions of DirectX, maybe DX10 or DX11, to xinput1_4.dll.  So, that's why you need to copy the old xinput1_3.dll's to a Windows 10 system explicitly.  If you get it right and copy in BOTH 64 and 32 bit versions to the proper directories, then you don't need to have a copy in the local game directory.  So, as weisshund said, if you do have to copy in .DLL's, it's either because there's a need for some patched or special version, or the OS has become corrupted.

 

@Mike - I also use that same registry backup trick.  I have my entire VP and VPinMAME directories replicated to another laptop and to my home NAS drive for backup.  I take a snapshot of the VP and VpinMAME registry entries, save them as .REG files, and then I use FreeFileSync to mirror the files to the other system and the NAS.  Although now with VPX8, because of the new C:\Users\[USER]\Appdata\Roaming\VPinballX\VPinballX.ini file, that .INI file must be copied in too just prior to the backup.


Edited by Mister Transistor, 17 July 2023 - 09:05 AM.


#16 wiesshund

wiesshund

    VPF Legend

  • Members
  • PipPipPipPipPipPipPip
  • 11,859 posts

  • Flag: United States of America

  • Favorite Pinball: How many can i have?

Posted 17 July 2023 - 08:02 PM

System32 is retained for compatibility reasons.
Many things are simply made to look there, and dont know about elsewhere


If you feel the need to empty your wallet in my direction, i don't have any way to receive it anyways

Spend it on Hookers and Blow


#17 Mike DA Spike

Mike DA Spike

    Pinball Fan

  • Platinum Supporter
  • 1,278 posts
  • Location:Hoofddorp

  • Flag: Netherlands

  • Favorite Pinball: Too many to mention

Posted 18 July 2023 - 02:20 AM

@Mike - I also use that same registry backup trick.  I have my entire VP and VPinMAME directories replicated to another laptop and to my home NAS drive for backup.  I take a snapshot of the VP and VpinMAME registry entries, save them as .REG files, and then I use FreeFileSync to mirror the files to the other system and the NAS.  Although now with VPX8, because of the new C:\Users\[USER]\Appdata\Roaming\VPinballX\VPinballX.ini file, that .INI file must be copied in too just prior to the backup.


Yeah. Almost do same as I do. I use my synology nas software for system state and file backup. For vpx 10.8 I setup to use ini files from the visual pinball folder. Even the "default" double click on vpx or edit will use that ini file, so I have all in one place (and easier for backup (althought c:\users is in my full systembackup)

331ddabcc742f0ba74791e946eb0f791.gif Try PinballX Database manager as a replacement of PinballX's game list manager
With special thanks to Scutters 


#18 boriskarloff

boriskarloff

    Enthusiast

  • Members
  • PipPipPip
  • 220 posts

  • Flag: Italy

  • Favorite Pinball: kenney station

Posted 16 September 2023 - 11:41 AM

I had the same problem. How I fixed. 

In visual pinball folder there was xinput1_3.dll

I deleted. But it was necessary.

I just installed directX from here https://www.microsof...ails.aspx?id=35

 

And all works. The 32 bit and 64 bit versions without manage the damned Windows OS.

 

Bye. 



#19 rockclimber

rockclimber

    Enthusiast

  • Members
  • PipPipPip
  • 64 posts

  • Flag: United Kingdom

  • Favorite Pinball: haunted house

Posted 23 December 2024 - 10:22 PM

I have just had the exact same problem. I only installed directX as borisKarloff said and it worked. Thanks!



#20 Joppnl

Joppnl

    Enthusiast

  • Members
  • PipPipPip
  • 301 posts

  • Flag: Netherlands

  • Favorite Pinball: Where I can put my name on as Grand Champion......

Posted 21 January 2025 - 01:49 PM

Old threat....but it saved my (VPinball)Life...

Installing a new computer (already had 10.8GL/64 working before) but now this "could not start ..etc" error.

First installed the all_DirectX_package (from www.techpowerup.com) and although the very latest package, error was still there.

Then I went for the link Boriskarloff gave, connected my pin to the internet (it normally is not but now it needs to to download the package, do not forget to disable the Bing install it wants to do, installed the latest DirectX and there it was: VPPX.8GL/64 back_on_track

Thanks a lot! 


Edited by Joppnl, 22 January 2025 - 08:19 AM.