调用doxygen时在命令行配置一些变量

Configure some variables in command line when calling doxygen

我想生成带有预定义 foo.doxyfile 的 doxygen 文档。 我想修改例如PROJECT_NUMBER 并使用 bat 文件生成文档。 这是蝙蝠的内容:

@echo off
setLocal enabledelayedexpansion
cls
echo Running Doxygen
rem Set a lot of variables
set BASE_DIR=%~dp0
set "PathToDoxygen=C:\Program Files\Doxygen\bin\doxygen.exe"
set "PahtToInterfacesDoxygen=D:\foo\Interfaces\Interfaces.doxyfile"

call ( type doxyfile & echo "PROJECT_NUMBER=1.1.2" | "%PathToDoxygen%" %PahtToInterfacesDoxygen% 

遗憾的是 PROJECT_NUMBER 未设置。 我做错了什么?

正如 Compo 部分指出的那样,这里有很多问题。

在这种情况下,“call”行的正确语法是:

(type %PahtToInterfacesDoxygen% & echo "PROJECT_NUMBER=1.1.2") | "%PathToDoxygen%" -

我们必须在这里假设 %PahtToInterfacesDoxygen% 是您希望与 PROJECT_NUMBER 修改一起使用的 doxygen 配置文件。 doxygen 调用后的 - 是使用通过 stdin 提供的信息(doxygen 设置)的信号,即此处的管道。

您不需要 call,因为您使用的是可执行文件而不是批处理文件来启动 doixygen 本身。