C4 doesn't work on Windows 7

For technical or performance related issues
kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

C4 doesn't work on Windows 7

Postby kubik632 » Tue Apr 06, 2010 2:37 pm

Hi,
I have the original dvd with the game, but it doesn't work. After launching the game I get this error: "Runtime Error! This application has requested the Runtime to terminate it in an unusual way."


I have Windows 7 Home Premium 64 bit. I read many articles about this problem, but no solution worked. I tried to turn off UAC, Windows XP Compatibility Mode, run program like an administrator, reinstall the game, install Direct 9c (located on the disc), install MySQL Connector/ODBC 3.51 (located on the disc).

I also add the information from DxDiag.

Thanks for your help!
You do not have the required permissions to view the files attached to this post.

Azkatari
Posts: 12
Joined: Tue Dec 07, 2004 2:06 pm

Postby Azkatari » Tue Apr 06, 2010 4:57 pm

works for me great, I have that RC release of win7 ultimate 64bit, I didn't have to do anything particular for it to work.

mouse
Posts: 1723
Joined: Thu May 06, 2004 5:21 am

Postby mouse » Mon Apr 12, 2010 2:17 am

Suspect that the second dvd drive on your DX is a virtual drive if it is then that's your problem. The copy protection of the game does not play with "virtual drives". You need to uninstall that drive.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Mon Apr 12, 2010 1:13 pm

Thanks for your advice, I uninstalled the virtual drive, but have still the same problem. I tried again reinstalling the game, turn off UAC, Compatibility Mode, run program like Administrator. Nothing worked...

Tinkerbell
Posts: 5415
Joined: Fri Sep 07, 2007 3:42 am
Location: San Diego, California
Contact:

Postby Tinkerbell » Mon Apr 12, 2010 4:15 pm

Howdy, kubik632!

I run C4 disk version on Windows 7 Home Premium 64 & have had no issues at all. No needed compatability changes, no Run as Admin or tweaks needed.

I did immediately install the v1.2 patch after & of course installed the disk DirextX during installation as prompted.

I am in no way a Tech Team member, so keep pluggin along.

Good Luck! :)

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Mon Apr 12, 2010 6:17 pm

Thanks Tinkerbell for info.

My game version is already v1.2 so I didn't install any patch. I also installed DirectX 9.0c from disc. And nothing.

I am not tech expert either. And I don't understand what effect should have DirectX 9.0c when I have 11 (after instalation I still see version 11 in dxdiag, so I think, that instalation of version 9.0c ha no effect respectively it is not installed...).

mouse
Posts: 1723
Joined: Thu May 06, 2004 5:21 am

Postby mouse » Mon Apr 12, 2010 6:46 pm

DX 11 is missing some dll files needed to run the game. MS removed those files starting with DX 10 so DX 9 is needed for the game. You might try installing a newer version of DX 9. Since the game wasn't written for Vista or Win 7 getting it to run on either of them is hit and miss.

Tinkerbell
Posts: 5415
Joined: Fri Sep 07, 2007 3:42 am
Location: San Diego, California
Contact:

Postby Tinkerbell » Mon Apr 12, 2010 6:49 pm

W7, like Vista before it, doesn't appear to have the backwards DirectXs that older games require.

It looks like a Microsoft blunder.

EDIT: or a conspiracy to get us to buy new games. :D

All I know is that installing my old games required DirectXs. I have even had to install a DirectX 6.1a or something. If an install asks you to install a directX. Do it.

Also, there were tons of different DirectX 9's, even multiple 9c's
Last edited by Tinkerbell on Mon Apr 12, 2010 7:01 pm, edited 4 times in total.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Mon Apr 12, 2010 9:00 pm

Thanks for explanation. I suppose, that DirectX 9.0c located on the dvd disc with the original game is the right one. I tried install this DirectX three times, but without any succes...

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Mon May 03, 2010 2:20 pm

I tried something else - RegisterDLL thing, but I got this error message (translated into English):

Code: Select all

C:\Windows\system32>C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe RomeScriptInterfaces.dll
Microsoft (R) .NET Framework Assembly Registration Utility 2.0.50727.4927
Copyright (C) Microsoft Corporation 1998-2004. All rights reserved.

RegAsm : error RA0000 : Input compilation RomeScriptInterfaces.dll or some of its dependent  parts were not found.

C:\Windows\system32>C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe ScriptServer.dll
Microsoft (R) .NET Framework Assembly Registration Utility 2.0.50727.4927
Copyright (C) Microsoft Corporation 1998-2004. All rights reserved.

RegAsm : error RA0000 : Input compilation ScriptServer.dll or some of its dependent  parts were not found.

C:\Windows\system32>PAUSE
Continue by clicking any key...


On the internet is the solution for Turkish, but unfortunately I have Czech... Thanks for any suggestions.

Keith
Posts: 9946
Joined: Wed May 05, 2004 4:00 pm
Location: USA
Contact:

Postby Keith » Mon May 03, 2010 3:08 pm

Try the same fix that you found for the Turkish language version of the game.

As I recall, it was to put a second copy of the of the RomeScriptInterfaces.dll file in the Caesar IV install folder and make sure that the name is "RomeScriptInterfaces.dll". In the Turkish language version of the game the file was renamed slightly to accomodate the Turkish alphabet characters needed. Make sure there is also a file named ScriptServer.dll too, if there is not one.

The command lines of the Regsiterdll.bat file are looking for files named with those two filenames.

Code: Select all

%windir%\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe RomeScriptInterfaces.dll
%windir%\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe ScriptServer.dll
PAUSE


If there is a space or a differently spelled file that doesn't match the lines in the registration batch file you will get an error message.

Also, instead of a second copy of the files with the altered names, if your files have spaces in their names you can try enclosing the command lines within quotes. Example, if the file is named "Rome Script Services.dll" instead of the expected "RomeScriptServices.dll" and "Script Services.dll" instead of "ScriptServices."

Code: Select all

"%windir%\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe Rome Script Interfaces.dll"
"%windir%\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe Script Server.dll"
PAUSE


If none of that works, it might be that you have a problem with access priviledges. You can visit www.sysinternals.com and obtain RegMon and FileMon which track registry events and will let you know if you have a "Access Denied" event during the registration of the two game "dll" files.

You will have to resort to their instructions on the use of those two program utilities.
Last edited by Keith on Mon May 03, 2010 3:14 pm, edited 1 time in total.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Mon May 03, 2010 4:25 pm

Thanks for quick answer. Turkish solution doesn't work for me. The two .dll
files have in their names no spaces, but for sure I tried enclosing the command lines within quotes. And it doesn't work.

So I visited sysinternals.com and obtained ProcessMonitor (RegMon and Filemon were replaced by this programm) and I didn't find any problems. But I don't understand to this programm very well, so I attached logfile from this programm. If you will have time to a quick look, it would be cool. Thanks a lot!
You do not have the required permissions to view the files attached to this post.

Keith
Posts: 9946
Joined: Wed May 05, 2004 4:00 pm
Location: USA
Contact:

Postby Keith » Mon May 03, 2010 6:17 pm

I don't have a way to read your log file. I downloaded Process Monitor and couldn't find a way to load your log file into it.

You are basically just looking for anything that shows a access denied (or similar) result.

If it came up clean on your end then the problem has to be elsewhere.

I a search on the Regasm.exe error RA000 and found a number of threads about this problem on other technical support boards on the net.

One suggestion was to check for missing dependencies (as indicated in your error message) by uring the dependency walker utility program at http://dependencywalker.com/. It can check for missing modules, invalid modules, etc.

I have no experience with this program.
"Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of all dependent modules."You are looking for anything that has a problem in it's results.

Also the suggestion about using quotes in the batch file command line, try using the quotes just around the name of the dll file instead of the entire command line.

example:

Code: Select all

%windir%\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe "RomeScriptInterfaces.dll"
%windir%\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe "ScriptServer.dll"


Do you have .NET Framework installed from the game disc? Is the game on drive C: or some other hard drive?
Last edited by Keith on Mon May 03, 2010 6:23 pm, edited 1 time in total.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Mon May 03, 2010 6:33 pm

It's strange that you can't open the logfile - it was created by the programm and I have no trouble with opening it... I was searching the logfile and I found nothing strange like "acces denied". So I will try Dependency Walker.

And I tried install .NET Framework from the disc and I got the message, that it is already installed in my computer so the installation stopped...

New suggestion about using quotes didn't work.

The game is located on C:\Program Files (x86)\Sierra\Caesar IV
Last edited by kubik632 on Mon May 03, 2010 6:39 pm, edited 1 time in total.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Tue May 04, 2010 11:55 am

So I tried Dependency Walker, two dll files were missing, so I downloaded them, restarted pc and after that I got this message:

Code: Select all

Error: Modules with different CPU types were found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.


I don't know what it exactly means, but I added an attachment - zip file with log file from Dependency Walker saved in three different formats. I guess that the error means that some dll file has 64bit architecture and some 32bit...

And I tried once again install Net Framework from the disc and I got message, that the version is not supported in 64-bit system and the installation stopped.

Keith, can I ask you, what system do you have? Is it like mine Windows 7 Home Premium 64bit or other? Thank for your help!
You do not have the required permissions to view the files attached to this post.

Keith
Posts: 9946
Joined: Wed May 05, 2004 4:00 pm
Location: USA
Contact:

Postby Keith » Tue May 04, 2010 4:03 pm

I still run XP. I prefer to wait a good long while before changing Windows versions and since XP is still fully supported I'm in no rush to change. The system itself is a Pentium P4 32-bit.

You were right about the error message. It does indicate problems with 32-bit files and your 64-bit system. You may need 64-bit versions of those dll files if there are any available. A Google search using that first error message sentence pretty much confirms that.

I found this page on dependency walker error messages:

http://www.dependencywalker.com/help/html/interpreting_errors.htm

The Caesar IV readme.txt file does state that it doesn't support Windows XP 64. That more than likely applies to all 64-bit versions of Windows. That doesn't mean it won't run on a 64-bit system. It does mean there was no official tech support for the game on that version of Windows from Sierra.

I don't know what else to have you try. I'm out of ideas.

You may as well remove those two modules you downloaded.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Tue May 04, 2010 5:06 pm

Thanks for your answer. I solved "Error: Modules with different CPU types were found." by downloading some dll files. But with the second error: "Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module." I don't know what to do - these three files make probably trouble: IEFRAME.DLL, SHLWAPI.DLL, URLMON.DLL

The RegisterDll thing still gives the same error as mentioned above. What is really horrible - if we have solved RegisterDll thing, the game doesn't need to work...

And for completeness' sake - I updated bios, video card drivers and sound drivers and still the same result.

Keith
Posts: 9946
Joined: Wed May 05, 2004 4:00 pm
Location: USA
Contact:

Postby Keith » Tue May 04, 2010 6:49 pm

The Dependency Walker help page has some info about the delay-load dependent module. About halfway down the page there is a link to another page titled "Using Application Profiling to Detect Dynamic Dependencies" that may explain what to do next. It may figure out which module is having the second error message problem

http://www.dependencywalker.com/help/html/interpreting_errors.htm

The link above also has some info about what a delay-loading dependency module is.

Their FAQ page has the following:
Q. Why am I seeing a lot of applications where MPR.DLL shows up in red under SHLWAPI.DLL because it is missing a function named WNetRestoreConnectionA? I also get a "Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module" message.

A. Some versions of SHLWAPI.DLL (like the one on Windows XP) have a delay-load dependency on the function WNetRestoreConnectionA in MPR.DLL. Missing delay-load functions are not a problem as long as the calling DLL is prepared to handle the situation. Dependency Walker flags all potential problems as it cannot detect if an application intends to handle the issue. In the case of SHLWAPI.DLL, this is not an problem as it does not require WNetRestoreConnectionA to exist and handles the missing function at runtime. This warning can be ignored. See the "How to Interpret Warnings and Errors in Dependency Walker" section in help for more details.

kubik632
Posts: 15
Joined: Tue Apr 06, 2010 2:20 pm

Postby kubik632 » Tue May 11, 2010 1:23 pm

I still can't believe, but I am playing!!!! Thanks for help to everyone, especially to Keith!

Here is the process which lead to working game. Maybe not all steps are necessary...

0) from earlier attempts I had in pc installed DirectX 9.0c and also MySQL Connecotr/ODBC (both installed from original game disc)
1) turn off UAC and restart pc
2) insert game disc, don't use Autorun, find Setup.exe and run it like an Administrator
3) like an installation directory choose C:\SIERRA\Caesar IV\
4) in game folder find file RegisterDLL.bat, run it like an Administrator and you should get the message (it was translated from Czech, so maybe the message could be a little bit different)

Code: Select all

C:\SIERRA\Caesar IV>C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe RomeScriptInterfaces.dll
Microsoft (R) .NET Framework Assembly Registration Utility 2.0.50727.4927
Copyright (C) Microsoft Corporation 1998-2004. All rights reserved.

Types were successfully installed.

C:\SIERRA\Caesar IV>C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe ScriptServer.dll
Microsoft (R) .NET Framework Assembly Registration Utility 2.0.50727.4927
Copyright (C) Microsoft Corporation 1998-2004. All rights reserved.

Types were successfully installed.

C:\SIERRA\Caesar IV>PAUSE
Continue by clicking any key...


If you get this message, go to step 11, if you get in the message these two errors

Code: Select all

RegAsm : error RA0000 : Input compilation RomeScriptInterfaces.dll or some of its dependent  parts were not found.

RegAsm : error RA0000 : Input compilation ScriptServer.dll or some of its dependent  parts were not found.


- go to step 5).

5) download programm Dependency Walker http://dependencywalker.com/ - this programm is for free and it needs no installation
6) run Dependency Walker, choose open file and find RomeScriptInterfaces.dll
7) find out which dll files are missing, find them on internet, download them and put in C:\Windows\System32

in my case it were these two: gpsvc.dll, ieshims.dll

8) run Dependency Walker again, open RomeScriptInterfaces.dll and find out which new dll files are missing

in my case it was this one: sysntfy.dll

All three missing dll files in my case you can find in Attachment ;) .

Dependency Walker maybe gives you this warning:

Code: Select all

Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.


- just ignore it.

9) run Dependency Walker again, open RomeScriptInterfaces.dll and find out which new dll files are missing - if none, go to step 10), if any, go to step 8)

10) run RegisterDLL.bat again like an Administrator and you should get "positive" message as above

11) enjoy playing this amazing game - there is no need to run programm like an Administrator, or Compatibility Mode and even you can turn on the UAC
You do not have the required permissions to view the files attached to this post.
Last edited by kubik632 on Tue May 11, 2010 1:27 pm, edited 1 time in total.

Keith
Posts: 9946
Joined: Wed May 05, 2004 4:00 pm
Location: USA
Contact:

Postby Keith » Tue May 11, 2010 1:56 pm

Thanks for the thorough summing up of your eventual solution. That will help someone else that may encounter the same problem.

I'm glad everythgin seems to be fine now and that you are enjoying the game.


Return to “Community Technical Support”

Who is online

Users browsing this forum: No registered users and 1 guest