增加威胁源仿真系统技术说明书

This commit is contained in:
Tian jianyong 2025-01-03 15:48:02 +08:00
parent e5dcf17224
commit bde8c7e47e
5 changed files with 1764 additions and 0 deletions

File diff suppressed because it is too large Load Diff

Binary file not shown.

80
scripts/pack_all.sh Executable file
View File

@ -0,0 +1,80 @@
#!/bin/bash
# 获取版本号
version=$(grep -o '<Version>[^<]*</Version>' ThreatSource/ThreatSource.csproj | sed 's/<Version>\(.*\)<\/Version>/\1/')
if [ -z "$version" ]; then
echo "Error: Could not find version number in ThreatSource.csproj"
exit 1
fi
# 创建发布目录
package_name="ThreatSource-${version}"
package_dir="publish/${package_name}"
# 清理并创建目录结构
rm -rf "publish/${package_name}"
mkdir -p "${package_dir}/lib"
mkdir -p "${package_dir}/include"
mkdir -p "${package_dir}/doc"
echo "正在编译 Release 版本..."
dotnet build ThreatSource/ThreatSource.csproj -c Release
echo "正在生成文档..."
docfx build docfx.json
./scripts/generate_pdf.sh
echo "正在复制文件..."
# 复制库文件到 lib 目录
cp ThreatSource/bin/Release/net8.0/ThreatSource.dll "${package_dir}/lib/"
cp ThreatSource/bin/Release/net8.0/ThreatSource.xml "${package_dir}/lib/"
cp ThreatSource/bin/Release/net8.0/ThreatSource.deps.json "${package_dir}/lib/"
cp ThreatSourceNative/bin/Release/x64/ThreatSourceNative.dll "${package_dir}/lib/"
# 复制头文件到 include 目录
cp ThreatSourceNative/include/threat_source.h "${package_dir}/include/"
# 复制文档到 doc 目录
cp "publish/ThreatSource-Library.pdf" "${package_dir}/doc/ThreatSource-API-Doc.pdf"
# 创建 README.txt
cat > "${package_dir}/README.txt" << EOL
威胁源仿真库 v${version}
目录结构:
lib/ 目录:
- ThreatSource.dll - .NET 主库文件
- ThreatSource.xml - .NET API 文档(用于 IDE 智能提示)
- ThreatSource.deps.json - .NET 依赖配置文件
- ThreatSourceNative.dll - C++ 接口库
include/ 目录:
- threat_source.h - C++ 头文件
doc/ 目录:
- ThreatSource-API-Doc.pdf - API 文档
使用说明:
1. C#/.NET 项目:
- 将 lib 目录下的所有文件复制到项目目录
- 在 Visual Studio 中添加对 ThreatSource.dll 的引用
2. C++ 项目:
- 将 lib 目录下的所有 DLL 文件复制到程序目录
- 将 include/threat_source.h 添加到项目中
- 包含头文件并使用 C 风格接口
详细使用说明请参考 doc 目录下的 API 文档。
EOL
# 创建最终的 zip 包
cd publish
zip -r "${package_name}.zip" "${package_name}"
# 清理临时目录
rm -rf "${package_name}"
echo "打包完成publish/${package_name}.zip"