none
Starting games: Rundll32.exe goes to max CPU usage, loading stops

    Question

  • I've had this problem for a while now. Sometimes when attemtpting to start games, I'll see the game's executable load, along with rundll32.exe. However that's where it stops, and Rundll goes on to hog an entire core's CPU time to itself, without the game continuing to load. Sometimes the problem goes away after a few tries, sometimes I'm forced to actually reinstall the game. Heck, the solution is sometimes totally random, I've had the problem temprarely solved once by running DirectX setup, but that only solved it for one specific game.

    When I check the taskmanager, and the commandline for rundll, here's what I get:

    C:\Windows\system32\rundll32.exe C:\Windows\system32\gameux.dll,GameUXShim {029de72b-57a0-4780-aeba-a7d553e82745};D:\Program Files\PlayOnline\SquareEnix\PlayOnlineViewer\pol.exe;3972

    now I know gameux.dll has something to do with the game explorer, the second part is the game executable in question, in this case Playonline, but I've had it with other games as well.

    I'm running the 64bit Windows 7
    Monday, June 15, 2009 2:45 PM

Answers

  • compatibility mode doesn't work, I've tried that before. Other games that have had this problem are for example Civilisation IV and Railroad Tycoon 3.

    And yes it's always the same gameux.dll file.

    Believe it or not, I've fixed the problem for now by instructing the game explorer not to collect game usage data. Since I did that I haven't had this problem. So it leads me to suspect that the game explorer is in it on something. Judging from my experience with programming, I'm thinking when trying to launch a game, gameux.dll is called first to perform certain tasks (in this case perhaps a +1 on the game usage counter if asked to keep tabs), after which the DLLs of the game executable are loaded (that's what Rundll is for, loading DLLs). But I think when loading and executing one function from the game explorer's DLL, rundll ends up in an endless loop internally (hence the max usage of 1 core). Since I've instruced the game explorer now to have as little to do as possible with the games as possible, not keeping tabs on usage, not downloading updates, etc etc, gameux.dll is probably loaded but not used, and rundll goes on nicely to loading the other DLLs.

    Well that's my idea at least, built from experience in programming.
    • Marked as answer by axfelix Tuesday, June 16, 2009 4:53 PM
    Tuesday, June 16, 2009 7:33 AM

All replies

  • DarkJack,

    It sounds like Final Fantasy XI is somehow incompatible with Windows 7 at this stage. I'd try configuring the game to run in compatibility mode for Windows XP or Windows Vista. To do this, right click on the program .exe and open the Properties menu, then navigate to the compatibility tab and select "Run this program in compatibility mode for..."

    Failing that, you may want to seek support on the official forums, as we can't really support individual games here.

    Just to be clear - you mentioned it's happening with several games, but is it always that same gameux.dll file?
    -Alex
    Monday, June 15, 2009 8:42 PM
  • compatibility mode doesn't work, I've tried that before. Other games that have had this problem are for example Civilisation IV and Railroad Tycoon 3.

    And yes it's always the same gameux.dll file.

    Believe it or not, I've fixed the problem for now by instructing the game explorer not to collect game usage data. Since I did that I haven't had this problem. So it leads me to suspect that the game explorer is in it on something. Judging from my experience with programming, I'm thinking when trying to launch a game, gameux.dll is called first to perform certain tasks (in this case perhaps a +1 on the game usage counter if asked to keep tabs), after which the DLLs of the game executable are loaded (that's what Rundll is for, loading DLLs). But I think when loading and executing one function from the game explorer's DLL, rundll ends up in an endless loop internally (hence the max usage of 1 core). Since I've instruced the game explorer now to have as little to do as possible with the games as possible, not keeping tabs on usage, not downloading updates, etc etc, gameux.dll is probably loaded but not used, and rundll goes on nicely to loading the other DLLs.

    Well that's my idea at least, built from experience in programming.
    • Marked as answer by axfelix Tuesday, June 16, 2009 4:53 PM
    Tuesday, June 16, 2009 7:33 AM
  • I recently encontered this problem again, and have since gathered more data about the problem, and solution.

    The problem indeed lies with the game explorer. It will start when you first start a game that is not in the game explorer, and has not been installed into it by the game's installer (which most games do now). The game explorer detects it and adds the game to the list. It then attempts to gather more information about the game (rating, box art, etc). However, if it is unable to, the DLL will block in an endless loop of retries to the server to gather this information each time a game from the list is being started. This results in the game seemingly not loading. This being unable to can be due to a firewall blocking the connection on your computer.

    To solve this problem, I disabled my firewall. I immediately saw the boxart for all the games pop up, and the games in question subsequently loaded again.

    I do hope microsoft is reading this. This means the game explorer's DLL does still contain some bugs when used in certain conditions. What I described here is a workaround, but it basically should not happen. The game explorer should not be able to block the execution of a program in any case. The DLL should be programmed to give up after x amount of time.

    Actually, come to think of it doesn't the game explorer also enforce parental controls? Those are disabled on my PC, naturally, but it could be that that piece of code is contributing to the problem.
    Tuesday, June 23, 2009 1:42 PM
  • Thank you for your tips, I've been having this problem some time now with Warcraft III and Baldurs Gate 2.
     For me disabling Games Explorer to collect information worked as well.
    On a Win 7 build.7100 32 bit laptop.

    Regards,
    f.
    Friday, July 17, 2009 7:22 AM
  • I developed this same problem as soon as I moved my PC to our new place in the country (no broadband). Since I ma not connected to the internet unless I am dialed up, I can't play a game. If I am dialed in to the internet the game will start with a slight delay.

    I went into the games explorer and unchecked updates, box art and game play data and it did not help. 

    This is totally bogus - This definitely needs to be fixed in the final release and I would really love to see a patch to correct his in the RC. 

    I know it comes as a shock but not everyone has always on internet. I could see if I was trying to play a game in multi player hanging if I was not connected but to play alone it should not be this way.

    If anyone has a workaround (like disabling the games explorer altogether) I would love to hear it.

    Thanks,
    Saturday, August 08, 2009 5:53 PM
  • I developed this same problem as soon as I moved my PC to our new place in the country (no broadband). Since I ma not connected to the internet unless I am dialed up, I can't play a game. If I am dialed in to the internet the game will start with a slight delay.

    I went into the games explorer and unchecked updates, box art and game play data and it did not help. 

    This is totally bogus - This definitely needs to be fixed in the final release and I would really love to see a patch to correct his in the RC. 

    I know it comes as a shock but not everyone has always on internet. I could see if I was trying to play a game in multi player hanging if I was not connected but to play alone it should not be this way.

    If anyone has a workaround (like disabling the games explorer altogether) I would love to hear it.

    Thanks,

    Same thing happened to me.  I was without an internet connection when I first launched the game and it would hang.  I tried disabling the data collection, but that didn't work.

    After firing up Process Explorer (from Sysinternals) I was able to find the actual thread that was making the game hang, after killing it in Process Explorer the game would launch.  The only problem with this fix is that you have to kill the thread every single time you launch the game.

    I think the problem is that even with data collection turned off Windows 7 Game Explorer still tries to download the box art, and if you are offline its going to fail and loop indefinitely trying to download it.

    Your best bet is to Disable the Data Collection thingy in Game Explorer.  Connect to the web, launch the game once.  Its going to take a second or two to download the box art.  After it does the game should launch.  Exit the game and disconnect from the web and try running the game again.  It should start up just fine.

    I just tried this and it worked on my laptop.

    Thursday, September 03, 2009 7:45 PM
  • Same launguage as i can see, so i'll continue within for others.

    i've found the next: %systemroot%\AppPatch\Acgenral.dll spawns a rundll32 with specified parameters (see the crossreferences to CreateProcessW) as described above, later it comes into the infinite loop at the most loaded thread, inside its call stack we can found different calls to dns/wsa routines, moreover we can see the frequent registry queries with the same reason. So problem as i can suppose within the absent internet connection.

    To avoid this situation - spawn game, wait while process take a critical cpu usage, spawn game again, alt+tab --> kill most loaded, play. The best solution, of course, is an handmade patch (kill the windows file protection too :D :D) or the some solution from MS

    Or to disable gameexplorer's lookups for games - ill try this just tomorrow))

    Tuesday, August 10, 2010 4:31 PM
  • Hi

     

    I have this problem recently! I have Windows 7 7600 ultimate 32bit and play some games in it for sometimes without any problem. but recently and without any reason i get this problem with rundll32 and gameux.dll . first my game executable file start and then rundll32 will start and make cpu usage 45~60% and nothing will happen. I use "Process Explorer" from sysinternals and look at stack files of rundll32 and saw that "gameux.dll" stay at top of  other files with some massage like " it ready to unload" but it was stick at memory.

     

    The way to solve this problem (but It's not a appropriate solution):

    rename the "gameux.dll" file from "c:\windows\system32" folder to any name you like. (I.E. "gameux-.dll")

     

    Q1. Is there any hot fix for this problem?

     

    Q2. Does renaming this file have any side effects in process of running games?

     

    Thanks

     


    Teach Others to Learn More Yourself
    Tuesday, March 22, 2011 5:11 PM
  • Hi

    I hadn't found this thread until now, so unfortunately I'd started another on the same topic:

    http://social.technet.microsoft.com/Forums/en-US/w7itproappcompat/thread/04c4fc21-f7ac-4270-9724-63b8a9154a7a

    which would explain why there were no replies there I suppose!

    Don't post to that other thread, but it will save me describing the hardware, etc, again if you have a look at it.  In brief, I have two machines.  Both are Intel I5, one a 750 anf the other a 760.  Both run Win 7 64-bit SP1.

    I've found this solution to work every time:

    • Kill the game's *.exe process, leaving rundll32.exe still running (SysInternals' procexp64.exe or procexp.exe show the process tree better than Task Manager, so it's worth downloading SysInternals Suite if you haven't already got it.  You'll see rundll32.exe as a sub-branch of the *.exe for the game.  Or, to put it another way, if you're not sure what the game's *.exe is called, it's the one above the rundll32.exe thread that's hogging all the CPU power!)
    • Restart the game.
    • Kill the rundll32.exe thread (or suspend it if you're at all a bit doubtful)

    I know that this has already been partly described in previous posts above, but I just wanted to point out that it's safe to kill the rundll32.exe thread after the successful restart of the game.  This stops it hogging all that CPU power (a full core's worth on my I5-750!) while you play - more performance, less heat.

    As to the cause, I'm even more mystified than before.  I've tried the Game Explorer fixes and that seemed to work.  BUT one one machine, it works now for the Admin User (me and the 'serious work stuff') but not for the Guest User (games only).  Both users now have identical settings in Games Explorer but the Guest is locked off the internet, so maybe I have to connect and start each game once in that user (as per posts above).

    The other strange thing is that, on that PC, UAC doesn't seem to be working.  It's set identical to my other PC (the default setting - one notch from the top) but it quite happily lets me start procexp64.exe in the Guest User and kill off processes without any prompts at all!  On my other PC, UAC is working as expected and I'm quite happy to put up with its slight inconveniences for the extra protection it offers.  Especially during those wee small hours work sessions where it's so easy to do something a bit stupid as the eyelids start to droop.

    So I,m lost for a reason for this to be happening.  Everything else about Win 7 is great and stable as a housebrick.  So why these problems?

    I have another problem - Windows XP Mode running in a VM:

    http://social.technet.microsoft.com/Forums/en-US/w7itprovirt/thread/91fca8cc-206b-4988-945d-353e888778ba

    Which interested parties may find relevant.  The reason is that the VM (or Virtual Machine, in which Windows XP Mode runs) also launches using  rundll32.exe (most things do in 64-bit land) and when 32-bit games run in Win 7 64-bit, they also start in a VM.  But there my techo knowledge fizzles out (and may be wildly inaccurate!).

    Anyway.  I agree, in that I think Microsoft have an unresolved problem in there somewhere.

    Thanks

    Steve

    Thursday, March 31, 2011 4:00 AM
  • Guys, I have finally found a "soft" solution (i have tested that it worked for TES IV: Oblivion)

    Just rename game's executable (I renamed from Oblivion.exe to Oblivion1.exe) and run it! Worked like a charm!

    Wednesday, May 30, 2012 3:23 PM
  • Possible solution for Windows 7 64 bit, English language


    1: run regedit

    2. search for 'SGamesWebService.asmx'

    3. Delete the folder 'servicelocation' under 'GameUX'

    4. problem solved

    Note: Do at your own risk. Export the folder before deleting it.

    Works perfectly when you have no internet connection active. If you have an active internet connection it still hangs - but - just for a few seconds now, and it doesn't eat 50% of one of the cores now after the game has started because rundll now closes automatically after the game has been launched.








    • Edited by hippox88 Tuesday, August 20, 2013 11:06 PM
    Tuesday, August 20, 2013 5:54 PM