diff --git a/USAGE_WINDOWS.md b/USAGE_WINDOWS.md new file mode 100644 index 0000000..c17d279 --- /dev/null +++ b/USAGE_WINDOWS.md @@ -0,0 +1,173 @@ +# Windows 10 使用说明 + +## 解决中文乱码问题 + +已将脚本中的中文改为英文,避免乱码问题。 + +## 在 Win10 上编译和运行 + +### 方法一:从网络位置编译(推荐) + +1. **打开PowerShell或CMD** +2. **切换到项目目录**: + ```cmd + cd \\192.168.6.193\Share\Projects\network-topology-discovery + ``` + +3. **编译程序**: + ```cmd + build.bat + ``` + +4. **运行程序**: + ```cmd + start.bat + ``` + +5. **访问Web界面**: + 打开浏览器访问:`http://localhost:8080` + +### 方法二:复制到本地编译(更快) + +如果网络位置编译慢,可以: + +1. **复制整个项目到本地**: + ```cmd + xcopy \\192.168.6.193\Share\Projects\network-topology-discovery C:\Projects\network-topology-discovery /E /I + ``` + +2. **切换到本地目录**: + ```cmd + cd C:\Projects\network-topology-discovery + ``` + +3. **编译和运行**: + ```cmd + build.bat + start.bat + ``` + +### 方法三:手动命令行编译 + +如果批处理脚本有问题,可以手动执行: + +```cmd +# 切换到项目目录 +cd \\192.168.6.193\Share\Projects\network-topology-discovery + +# 编译 +set GOOS=windows +set GOARCH=amd64 +go build -o network-topology.exe -ldflags="-s -w" ./cmd + +# 运行 +network-topology.exe +``` + +## 常见问题 + +### 1. 提示 "go.mod file not found" + +**原因**:没有在项目根目录运行脚本 + +**解决**: +```cmd +# 先切换到正确的目录 +cd \\192.168.6.193\Share\Projects\network-topology-discovery + +# 确认go.mod存在 +dir go.mod + +# 然后再运行 +build.bat +``` + +### 2. 编译后找不到 network-topology.exe + +**原因**:编译失败或输出到错误目录 + +**解决**: +```cmd +# 手动编译并指定输出路径 +go build -o network-topology.exe ./cmd + +# 检查文件是否存在 +dir network-topology.exe +``` + +### 3. 运行时提示 "web目录不存在" + +**原因**:web文件夹不在正确位置 + +**解决**: +确保目录结构如下: +``` +network-topology-discovery/ +├── network-topology.exe +├── web/ +│ ├── index.html +│ ├── css/ +│ └── js/ +└── config.json +``` + +### 4. 端口8080被占用 + +**解决**: +编辑 `config.json`,修改端口: +```json +{ + "web": { + "port": 8081 + } +} +``` + +## 环境要求 + +确保已安装: +- ✅ Go 1.22 或更高版本 +- ✅ Windows 10/11 +- ✅ 网络连接(访问网络设备) + +检查Go版本: +```cmd +go version +``` + +## 快速测试 + +编译完成后,可以快速测试: + +```cmd +# 1. 编译 +build.bat + +# 2. 启动 +start.bat + +# 3. 打开浏览器 +# 访问: http://localhost:8080 + +# 4. 测试添加设备 +# 点击"添加设备",输入你的设备IP和SSH凭据 +``` + +## 更新项目 + +如果从Git仓库更新: + +```cmd +# 拉取最新代码 +git pull + +# 重新编译 +build.bat + +# 运行 +start.bat +``` + +--- + +如有其他问题,请查看 README.md 或提交Issue。 diff --git a/build.bat b/build.bat index 9b6fbc5..c605fb4 100644 --- a/build.bat +++ b/build.bat @@ -1,29 +1,41 @@ @echo off +chcp 65001 >nul 2>&1 echo ======================================== -echo 网络拓扑发现系统 - 编译脚本 +echo Network Topology Discovery System - Build Script echo ======================================== echo. -echo [1/3] 清理旧文件... +REM Check if go.mod exists +if not exist go.mod ( + echo Error: go.mod not found! + echo Please run this script from the project root directory. + echo. + echo Current directory: %CD% + echo. + pause + exit /b 1 +) + +echo [1/3] Cleaning old files... if exist network-topology.exe del network-topology.exe echo. -echo [2/3] 编译程序... +echo [2/3] Building program... set GOOS=windows set GOARCH=amd64 go build -o network-topology.exe -ldflags="-s -w" ./cmd if %ERRORLEVEL% NEQ 0 ( echo. - echo 编译失败! + echo Build failed! pause exit /b 1 ) echo. -echo [3/3] 创建配置文件示例... +echo [3/3] Creating config file example... if not exist config.json ( - echo 创建默认配置文件... + echo Creating default config file... echo {> config.json echo "scan_ranges": ["192.168.1.0/24"],>> config.json echo "devices": [],>> config.json @@ -45,13 +57,13 @@ if not exist config.json ( echo. echo ======================================== -echo 编译完成! +echo Build Complete! echo ======================================== echo. -echo 运行方式: -echo network-topology.exe (使用默认配置) -echo network-topology.exe config.json (使用指定配置文件) +echo Usage: +echo network-topology.exe (Use default config) +echo network-topology.exe config.json (Use specified config) echo. -echo 访问地址: http://localhost:8080 +echo Web UI: http://localhost:8080 echo. pause diff --git a/start.bat b/start.bat index 517089e..976bf84 100644 --- a/start.bat +++ b/start.bat @@ -1,21 +1,23 @@ @echo off +chcp 65001 >nul 2>&1 echo ======================================== -echo 网络拓扑发现系统 +echo Network Topology Discovery System echo ======================================== echo. -REM 检查可执行文件是否存在 +REM Check if executable exists if not exist network-topology.exe ( - echo 错误: network-topology.exe 不存在! - echo 请先运行 build.bat 编译程序 + echo Error: network-topology.exe not found! + echo Please run build.bat first to compile the program. + echo. pause exit /b 1 ) -REM 检查配置文件 +REM Check config file if not exist config.json ( - echo 提示: config.json 不存在,将使用默认配置 - echo 正在创建默认配置文件... + echo Info: config.json not found, using default config + echo Creating default config file... echo {> config.json echo "scan_ranges": [],>> config.json echo "devices": [],>> config.json @@ -36,11 +38,11 @@ if not exist config.json ( echo. ) -echo 正在启动网络拓扑发现系统... +echo Starting Network Topology Discovery System... echo. echo ======================================== -echo 访问地址: http://localhost:8080 -echo 按 Ctrl+C 停止服务 +echo Web UI: http://localhost:8080 +echo Press Ctrl+C to stop the service echo ======================================== echo.