Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
Hello Gerhard, I tried the advice that you and Arthur gave me about calling the bat file by using cmd.exe. But it didn't change anything. I decided to verify that the return codes from the bat files were still passed correctly by doing the following experiment: I have a file called precmdtest.bat: @echo off echo ------------------------- echo User: %1 echo Location: %2 echo Command: %3 echo Timestamp: %4 echo ------------------------- echo Arguments: %5 echo ------------------------- rem below for testing purpose only... rem testing exit status return codes!!! if %3 == update goto deny goto allow :deny echo Command %3 issued by %1 at %4 echo was NOT allowed on repo %2 EXIT 1 :allow echo Command %3 issued by %1 at %4 echo was allowed on repo %2 EXIT 0 This bat file is called in my precommand file in the following way: ALL C:/precmdtest.bat $USER %r %c %d I added the section below the remark lines and it worked correctly and stopped the update command from working. This is the output on the commandline: C:\TEST_CHECKOUT\blabla>cvs update ------------------------- User: cvsadmin Location: /TESTREPO Command: update Timestamp: "Wed Oct 3 14:06:47 2007" ------------------------- Arguments: ------------------------- Command update issued by cvsadmin at "Wed Oct 3 14:06:47 2007" was NOT allowed on repo /TESTREPO cvs server: Pre-command check failed C:\TEST_CHECKOUT\blabla> And in this case the EXIT 1 returncode was interpreted correctly by CVSNT. It seems to be because the premodule file, does not have the capability to stop a cvs command from being executed. I have also tried called a bat file in precommand in the following way: /TESTREPO/blabla C:/info.bat $USER %r %c %d because I hoped that the string /TESTREPO/blabla would be recognized as the blabla module. CVSNT didn't report any errors, but on the other hand, it also never called the info.bat file. Regards from Thomas (aka CBMFreak). --- Gerhard Fiedler <lists at connectionbrazil.com> wrote: > > As Arthur said, CVSNT may not see the .bat file's > return code but the > cmd.exe return code -- which not necessarily is the > same. > > I don't know cmd.exe intimately because I don't use > it, but you can > experiment a bit with it to determine how its return > code handling works. > Make sure you call your batch files with "cmd.exe /c > <batch file>" and then > check the return code of that command (which is > different from running a > batch file in the same session and checking its > return code). > > If the return code passing should be a problem, you > could also try running > your scripts as .cmd files instead of .bat files, or > set the ERRORLEVEL > variable explicitly before exiting, or use a batch > file compiler to create > an .exe from your script (which you can call > directly, without going > through cmd.exe), or use a different script -- > Windows Script Host (VBS, > JavaScript mainly), Python, bash, 4NT, whatever. > > Gerhard > _______________________________________________ > cvsnt mailing list > cvsnt at cvsnt.org cvsnt downloads at march-hare.com @CVSNT on Twitter CVSNT on Facebook > http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt https://www.march-hare.com/cvspro/en.asp#downcvs > ___________________________________________________________ Skal du købe ny bil? Sammenlign priser på brugte biler med Kelkoo og find et godt tilbud! - Se mere her http://dk.yahoo.com/r/pat/mmb