Как правило, возвращаемое значение пакетного файла является возвращаемым значением последней команды, выполненной из внутри пакетного файла.
Выход должен работать, но если это не так, по любой причине, вы всегда можете использовать вспомогательную программу для установки возвращаемого значения.
В прежние времена DOS вы могли использовать ECHO в сочетании с командой CHOICE, чтобы установить возвращаемое значение, но, увы, оно больше не является частью окон.
Так что вместо этого вы могли бы написать небольшую программу. Что-то, что принимает желаемое возвращаемое значение в качестве аргумента, затем устанавливает и возвращает это в качестве возвращаемого значения:
#include <cstdio>
int main(int argc, char * argv[]) {
if (argc == 2) {
return strtoul(argv[1], NULL, 10);
} else {
return 0;
}
}
Затем в своем пакетном файле вы просто вызываете программу с нужным возвращаемым значением и переходите к концу.