GCFScape FAQ - NemPosted: Jun 20th, 2004 - 11:37:59 am
Q.

When I launch GCFScape I get the following error message:
"This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem."

A.

GCFScape v1.4.0 and up is written in C++ .NET v2.0 and such as requires the .NET runtimes to run. See the downloads page for more information.

Q.

When I launch GCFScape I get the following error message:
"The application failed to initialize properly (0xc0000135). Click ok to terminate the application."

A.

GCFScape is written in C++ .NET and such as requires the .NET runtimes to run. See the downloads page for more information.

Q.

When I launch GCFScape I get the following error message:
"A required .DLL file, MSCOREE.DLL, was not found."

A.

GCFScape is written in C++ .NET and such as requires the .NET runtimes to run. See the downloads page for more information.

Q.

Are GCF files compressed archives?

A.

No.

Q.

What are GCF files then?

A.

GCF (Assumed to stand for Game Cache File) files can best be compared to a virtual file system not unlike FAT or other common file systems. The virtual file system supports meta data, file fragments, checksums and other minor features. GCF files are the backbone of Steam's content delivery system.

Q.

Why do I have to close Steam to open a GCF file?

A.

GCFScape uses a technique called file mapping to directly access data in a GCF file as you would data in memory. This is a useful technique because it means GCFScape doesn't have to read tons of data into memory to read a GCF file and it can read a GCF file without having to seek all over the place.

Because Steam opens GCF files in read/write mode and is liable to change the contents of any GCF file at any time, GCFScape requires that you close Steam. If Steam was open and it changed the contents of a GCF file while it was mapped, GCFScape would become unstable and likely crash.

Q.

When I open a package I get the following error message:
"Failed to open file."

A.

GCFScape requires strict read rights to a package file to maintain stability. Make sure the package file is not open in any other program including Steam. As a work around you can enable Volatile Access from the Options menu. Note: this may cause GCFScape to become unstable if Steam is updating the package you have open.

Q.

When I open a GCF file I get the following error message:
"Invalid GCF version number (vX)."

A.

GCFScape does not know how to read the GCF file version you are attempting to open. This could be because it is an old GCF file version that I haven't yet added support for (due to the fact that I don't know what the format is) or a new GCF file version that a recent Steam update produced. Either way let me know.

Q.

When I open a package I get the following error message:
"Corrupt file."

A.

GCFScape will display this error when it maps a package file to memory only to find there is not enough data in the file for the resulting map. This may or may not mean your file is corrupt but almost certainly means GCFScape would crash it continued to load your package file.

Q.

When I open a package I get the following error message:
"Failed to map view of file."

A.

GCFScape will display this error when the system call MapViewOfFile() fails. This can happen on older operating systems with primitive virtual memory management. As a work around you can disable File Mapping from the Options menu. Note: disabling File Mapping will incur a memory and performance penalty.

Q.

When I press the Extract button, a Browse for Folder dialog appears but there is no directory tree to allow me to select a folder.

A.

There is an unfortunate bug with the .NET framework that causes this dialog to operate incorrectly. This is a pretty rare occurrence, but there is a workaround:

  1. Close GCFScape.
  2. Open the gcfscape.cfg file, located in your GCFScape directory, in notepad.
  3. Set the GCFScape.ExtractDirectory argument to a folder on your hard drive such as C:\.
  4. Open GCFScape and extract your file.
Q.

When I extract a file I get the following error message:
"Error writing [filename] (File contains no physical data to write)."

A.

This error occurs when you attempt to extract a file that has no physical data associated with it. This is a file that exists in the directory tree but which Steam has not yet downloaded. Use Steam to make sure the file is fully acquired.

Q.

How do I create a GCF file?

A.

As of yet, not enough is known about the GCF file format to programmatically create one. There are still plenty of unknown fields that need an understanding before a GCF file can be created. That said there is also no guarantee that creating a GCF file is all that is needed for Steam to recognize and make use of it. Some other registration might be required and may not be possible without hacking Steam. For these reasons I have no plans to add the ability to create a GCF file.

Q.

How do I modify a GCF file?

A.

The purpose of the GCF file is to make it easy for Steam to update Valve's software. When a new version of a program (say CS) is released, all Steam has to do is look in the CS GCF file and compare versions (hashes) of each file to determine if each file needs to be added, updated or removed. Because of this, if you were to modify a file, Steam would interpret this as meaning that the file is out of date and redownload the correct version of the file.

Steam does, however, provide an interface to add or overwrite a file. To add or overwrite a file simply place it in the corresponding directory in the Steam\SteamApps\[EMail]\[GCF File] directory on your hard drive. You might have to create the appropriate subdirectories.

Q.

Will GCFScape be able to create or modify GCF files in the future?

A.

Not likely.

Ask a question...

Modified: Jan 17th, 2006 - 10:33:36 pm[ 78826 Views ]

[ 1 2 3 4 5 6 ]

1. NemModified: Jul 19th, 2004 - 10:46:02 am

There are really two issues:

When will I be able to modify the contents of a GCF file?
The purpose of the GCF file is to make it easy for Steam to update Valve's software. When a new version of a program (say CS) is released, all Steam has to do is look in the CS GCF file and compare versions of each file to determine if any file needs to be updated or added. Because of this, if you were to modify a file, Steam would interpret this as meaning that the file is out of date and redownload the correct version of the file.

When will I be able to create a GCF file?
As of yet, not enough is known about the GCF file format to programmatically create one. There are still plenty of unknown fields that need an understanding before a GCF file can be created. That said there is also no guarantee that creating a GCF file is all that is needed for Steam to recognize and make use of it. Some other registration might be required and may not be possible without hacking Steam.

Because of the above reasons I have no plans to add the ability to create or modify GCF files. When all is said and done there is no real advantage, no guarantee it will work, and no requirement for it for custom mods or mod customization.

Nem

[Edit]

Moved to FAQ.

2. dark_2oo4Posted: Sep 16th, 2004 - 7:21:48 am

i've got a big problem over here, i just finished pre-loading Half-Life 2 and i want to extract the sounds and listen to them :), but i get an error like: (this is when i press the extract button):

An unhandled exception has occurred in your application. If you click Continue, the application will ignore this error and attempt to continue. If you click Quit, the application will be shut down immediatly.
The current thread must set to single thread apartment (STA) mode before OLE calls can be made. Ensure that your Main function has STAThreadAttribute marked on it.

(that was the error) - if i click continue nothing happens, so, what's the deal then?? (i must say that i just installed WindowsXP SP2 included few weeks ago, i don't think that's the problem)

3. BluefangPosted: Sep 16th, 2004 - 12:37:35 pm

I beleive that the HL2 cache files are encrypted and will only be unlcked when you buy the game. ot somthing like that.

4. NemPosted: Sep 16th, 2004 - 4:47:06 pm

It's another fun bug with the FolderBrowserDialog (a bug that currently has no fix). In v1.1 of the .NET framework, if the thread apartment is not in STA mode, the FolderBrowserDialog will display only without a directory tree to select a folder from. This confused a lot of developers so in v1.1 SP 1 and v2.0 Beta an exception is thrown instead (which makes it nice and difficult for us developers to manage because it is not consistent).

This all stems from the fact that you can't set the apartment state in a C++ .NET application (for complex reasons).

The next version of GCFScape will contain a workaround: if GCFScape detects that you are in STA mode the FolderBrowserDialog will be displayed, otherwise a dialog that lets you type in the folder will be displayed. The next version is actually complete, just awaiting the next HLLib for release.

5. FinesseModified: Sep 28th, 2004 - 11:03:15 pm

Hay dudes,
I'm kinda new to this game. exploding
When i try to extract the Counter-Strike.gcf my computer locks up, this only happens when I try to extract a folder that is 'large' . Any help would be greatly appreciated.

Regards,
Finesse

6. NoBodyPosted: Sep 29th, 2004 - 3:29:24 am

it will be working hard for a few minuts, the program might display as not responding while this i going on.
if it is in fact lockup try posting the log

7. SoulPosted: Oct 21st, 2004 - 12:56:24 pm

i get the error "CLR error: 8007000b",i never used to get this error but then i formatted and reinstalled windows like a week ago and i hasnt worked sincesad

8. NemPosted: Oct 21st, 2004 - 6:54:16 pm

I suspect it is a problem with your .NET installation, but I will have to research the error first.

9. SoulPosted: Oct 23rd, 2004 - 12:54:04 am

i redownloaded the dotnetfx.exe and installed it again,the same problem occuredsad

10. SoulPosted: Oct 23rd, 2004 - 11:39:06 am

dont worry its working now,it was that damn parite virus


11. NemPosted: Oct 24th, 2004 - 1:28:56 pm

Thanks for the info, glad you were able to figure it out.

happy

12. z3r0Posted: Feb 18th, 2005 - 9:43:10 pm
ok I am done making a skin and when i go to the copied version of css it wont open it says
Error: unexpected exception in populate tree() anyone know what i can do to fix it? sad

13. NemPosted: Feb 18th, 2005 - 10:22:25 pm
First off, if Volatile Access is enabled, disable it. It is potentially unstable by its nature if Steam is manipulating a GCF file (and several patches were recently released). If the problem persists, please post the stack trace (the exception error message should give you a details view, that is the stack trace).

14. EyeRisePosted: Feb 27th, 2005 - 9:32:34 pm
ok, how do i fix the fact that it keeps saying "Invalid file" blah blah blah. Steam is closed, but it won't work when i try to open a .bsp file. plz help

15. NemModified: Feb 27th, 2005 - 10:15:33 pm
GCFScape only supports Half-Life .bsp files (not, for example, Source .bsp files). You can use the bspzip.exe program that comes with the Source SDK to extract the contents of Source .bsp files.

[ 1 2 3 4 5 6 ]

You must be logged in to post a comment.
New users can register here.
Nem's Tools v2.0 © 2006 Ryan Gregg.
Execution time: 0.022103s; Queries: 17.
dishes served.
Powered by The Wavelength.

Valid XHTML 1.0 Transitional Valid CSS
π