in reply to [Win32] Successful system() call returns 256
My win32 system does not have diff as a built in command. My guess is that you downloaded it. It would be difficult to help you without knowing what program you are using.
From memory and experience often 'diff' type programs return 'succesful' when the compared files are identical and return '!successful' when the files differ. The typical thought is that it is more useful to use the exit code to indicate file difference (or lack thereof) in addition to if the command ran without error.
Typically the exit code will be one value (say 1) if the files differ, another value (say 0) if they are the same, and a third value (say 2) if there was an error.
Hope this helps.
Update: typo found and fixed.