7z files

Found a bug? Please report it, but remember to follow the bug reporting guidelines.
Missing a sane feature? Let us know!
But please do NOT request ports to other systems.

Moderator: ZSNES Mods

EJmcn
Rookie
Posts: 12
Joined: Sat Aug 12, 2006 7:15 pm

Post by EJmcn »

F:\out>UnGoodMerge.exe -a -cJMA "-of:\out\go.bat" "F:\FULL\*.7z"
Please enter a list of country codes that aren't wanted.
All versions of files containing these country codes will be excluded, except
for ones that are translated or multilingual.
Enter one entry per line, and a blank entry to finish.
A common example is "(J)". You can also use other types of codes such
as "Hack)" (yes, without the first bracket in that case) or "(PD)".

> (J)
> (j)
>

then it stops

then I close it

and this is the go.bat file

@ECHO OFF

7za.exe > NUL
cls
IF ERRORLEVEL 9009 GOTO nosevenzip
nsrt > NUL
cls
IF ERRORLEVEL 9009 GOTO nonsrt


I dont see any thing changed and I dl and used the last one you told me to.
Poobah
Lurker
Posts: 164
Joined: Sun Sep 25, 2005 12:59 pm

Post by Poobah »

That's left me even more dumbfounded; the only code in-between the outputting of that section of the batch file and the first debug message is the beginning of the for() loop, and once that loop finishes, more file writing occurs. Take a look:

Beginning of for() loop:

Code: Select all

	//Only check for NSRT if JMA compression was chosen.
	if( preferences.compression_method == JMA )
	{
		fprintf( fout, "nsrt > NUL\n" );
		fprintf( fout, "cls\n" );
		fprintf( fout, "IF ERRORLEVEL 9009 GOTO nonsrt\n" );
	}

	for( i = 0; i < file_count; ++i )
	{
		//Dump 7-Zip's listing into the temporary working file.
#ifdef DEBUG
		printf( "Dumping archive contents..." );
#endif
End of for loop:

Code: Select all

	}

	//Write the footer to the batch file.
	fprintf( fout, "\nGOTO finish\n\n" );
I've done the following things, now:
-Reverted from GCC 3.4.5 to GCC 3.4.2.
-Changed an option from -O3 to -O2.
-Added in another debug message to say how many 7-Zip files were found.

Try this one. I'm really sorry that this isn't working for you.
EJmcn
Rookie
Posts: 12
Joined: Sat Aug 12, 2006 7:15 pm

Post by EJmcn »

@ECHO OFF

7za.exe > NUL
cls
IF ERRORLEVEL 9009 GOTO nosevenzip
nsrt > NUL
cls
IF ERRORLEVEL 9009 GOTO nonsrt

GOTO finish

:nosevenzip
echo Unable to locate 7z.exe. Please either append the 7-Zip installation directory
echo to your PATH environment variable, or copy the 7z.exe file to:
echo %WINDIR%\System32.
echo If you do not have 7-Zip, go to http://www.7-Zip.org/ to get it.
GOTO finish

:nonsrt
echo Unable to locate nsrt.exe, which is needed for JMA compression.
echo Please either append the nsrt installation directory to your PATH environment
echo variable, or copy the nsrt.exe file to:
echo %WINDIR%\System32
echo If you do not have NSRT, go to http://nsrt.edgeemu.com/ to get it.
GOTO finish

:finish
echo.
PAUSE

it took a minut or to but I got this out of the go.bat file and 7z.exe is in c:\windows\system32\
Poobah
Lurker
Posts: 164
Joined: Sun Sep 25, 2005 12:59 pm

Post by Poobah »

I'm sorry, but I don't think there's anything else I can do; what's occuring on your end does not make sense. At the moment, the main() function of the source is now littered with printf() statements, yet none of them are producing any text output on your computer. Are you 100% sure that you are using the latest UnGoodMerge.exe files as I'm updating them?

I've made a couple of extra changes:
-Tried printing to stderr.
-Output the return values of the first few printf()s to the batch file to see if they're working.

Try it here.
xamenus
Veteran
Posts: 907
Joined: Fri Jul 30, 2004 12:26 am

Post by xamenus »

Continue this with PMs, please. :)
Locked