Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On Oblivion startup: "Couldn't inject dll." #178

Open
backlabs1 opened this issue Sep 24, 2022 · 2 comments
Open

On Oblivion startup: "Couldn't inject dll." #178

backlabs1 opened this issue Sep 24, 2022 · 2 comments

Comments

@backlabs1
Copy link

Description

When starting Oblivion on Windows 7 with xOBSE 22.7 installed, an error is presented: Couldn't inject dll.. The game still starts up and runs after the error is dismissed, but the game crashes much more frequently during play.

Reverting to xOBSE 22.6.1 removes the error and reduces the number of game crashes.

According to chambcra on The Nexus Forums, this problem is caused by "Game Explorer" on Windows 7. I do not know if there is a way to fix this with xOBSE, but I thought it would be helpful to document it here anyway.

Workaround

Again according to chambcra, the workaround is to disable gameux.dll. The following worked for me on Windows 7 64-bit.

  1. Make sure your folder options are set with Hide extensions for known file types disabled.
  2. Locate the file:
    1. On Windows 7 64-bit systems, this file is found at C:\Windows\SysWOW64\gameux.dll.
    2. On Windows 7 32-bit systems, this file is found at C:\Windows\System32\gameux.dll.
  3. Change file owner:
    1. Right-click on the file and open Properties.
    2. Open the Security tab and click Advanced.
    3. Open the Owner tab and click Edit….
    4. Select the Administrators entry and click OK.
    5. Close all the dialogs.
  4. Change permissions for Administrators group:
    1. Right-click on the file and open Properties.
    2. Open the Security tab and click Edit….
    3. Click the Administrators entry and check the Allow box for Full control.
    4. Click OK and then Yes and close the file properties dialog.
  5. Rename the file to gameux.dll.bak.
  6. You may need to restart.

See also

For more information, see:

@llde llde pinned this issue Sep 24, 2022
@Dredd893
Copy link

Dredd893 commented Aug 16, 2024

GameUxFixed-Ubeogesh.zip
GameuxFixed-Ubeogesh.docx

To fix things instantly.

The bat content:

Echo :dsssssy. shoooyo yhoooo. yhooooh- -dsoooy+ hyoooo hsoooy: .d: /h`
Echo.
Echo ===============================================================================
Echo == ==
if not exist %windir%%wd%\gameux.dll goto RestoreGameUX

:FixGameUX
Echo == The script will resolve your Game Explorer aka Rundll32.exe problem. ==
Echo == Game explorer will work but some functionality may become unavailable ==
Echo == Press any key to fix or close the window if you're not sure ==
Echo == ==
Echo == You may run the script again to restore... ==
Echo == ==
Echo ===============================================================================

Pause >nul
Echo.
takeown /f %windir%%wd%\gameux.dll >nul
IF %ERRORLEVEL% EQU 0 Echo Ownership taken...
Echo.
cacls %windir%%wd%\gameux.dll /E /P %username%:F >nul
IF %ERRORLEVEL% EQU 0 Echo premissions gained...
Echo.
ren %windir%%wd%\gameux.dll gameux.dll.Ubeogesh >nul
IF %ERRORLEVEL% EQU 0 Echo File renamed! Congratz! Games will now launch!
GOTO End

:RestoreGameUX
Echo == Press any key to restore Game Explorer (unfix) ==
Echo == ==
Echo ===============================================================================
pause >nul
Echo.
ren %windir%%wd%\gameux.dll.Ubeogesh gameux.dll
IF %ERRORLEVEL% EQU 0 (
Echo gameux.dll restored!
GOTO End) ELSE (
Echo.
Echo Could not restore... have you deleted the file or changed permissions?
Echo And look at the error above ^;-^))

:End
Echo.
Echo http://ubeogesh-things.blogspot.com/
Echo.
Echo Press any key to exit
Pause >nul

::please credit Ubeogesh when redistributing the script

@llde
Copy link
Owner

llde commented Aug 16, 2024

isn't better to just add the modified dll into the game folder? the windows loader should take care of overrides
Also please avoid attaching these kind of DLL here, prefers to link where the resource was found, and if possible check wethever the original file have a source somewhere

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants