客户端配置文件自动修改方案
大约 3 分钟
SAP B1客户端配置文件自动修改方案
提示
五六零出品,必属精品
方案说明
- 安装SAP B1客户端之后,需要手动修改客户端配置文件
- 原来需要手动复制,并且新手不知道如何修改配置文件,也不知道该复制到哪里
- 使用本方案,只需要运行批处理,输入服务器的IP地址,批处理会自动搜索所有盘符SAP B1客户端对应配置,并且只修改对应服务器连接部分。
更新记录
2023.10.09 修复代码,增加已修改文件列表显示
方案下载
效果图
方案逻辑
- 自动替换本机安装的SAP B1客户端配置文件
- 根据用户输入的服务器IP地址,替换配置文件内对应地址
代码使用
- 下载批处理或者复制源代码另存为.bat
- 右键管理员身份运行批处理
- 根据界面输入对应的指令
代码说明
代码说明
- 请将代码复制到文本,另存为.bat后缀文件
- 注意另存的时候,选择编码为UFT-8
批处理代码
@echo off
chcp 65001 > nul
REM 设置代码页为UTF-8,避免中文乱码
REM Check if running as administrator
net session >nul 2>&1
REM 检查是否以管理员身份运行
if %errorLevel% == 0 (
echo Running with administrator privileges
) else (
echo 需要以管理员身份运行批处理,否则无法运行
pause
exit
)
REM 如果没有管理员权限,则提示需要以管理员身份运行,并退出程序
setlocal enabledelayedexpansion
REM 开启延迟环境变量扩展
echo.
echo. 欢迎使用《五六零网校SAP B1客户端配置文件自动修改方案》
echo.
echo. 方案地址: https://help.sap560.com/560_fanga/fangan/03.html#%E4%BB%A3%E7%A0%81%E8%AF%B4%E6%98%8E
echo.
echo 方案说明
echo. ----
echo * 运行批处理,自动搜索所有盘符下SAP B1的安装目录,自动修改配置文件
echo.
echo ---------------------------------------------------------------------------------------------
echo.
echo ※※ 温馨提示 ※※
echo.
echo 请选择修改模式
echo → [1] 模式1:当前配置地址为:localhost,只需要输入新的配置地址
echo → [2] 模式2:分别手动输入当前配置地址和新的配置地址
echo.
:inputA
set "A=localhost"
set /p choice=请选择模式?(1 or 2):
if "%choice%" equ "2" (
set /p A=请输入当前的配置地址:
if "!A!"=="" (
goto :inputA
)
) else if "%choice%" neq "1" (
echo 输入错误,请重新输入!
goto :inputA
)
goto :inputB
:inputB
set "B="
set /p B=请输入新服务器的地址:
if "!A!"=="!B!" (
echo 两个地址相同,无需替换!
goto end
)
:inputC
set "C="
set /p C=请输入560确认执行,输入 N 返回模式选择:
if /i "!C!"=="N" (
goto :inputA
) else if "!C!"=="560" (
goto :replace
) else (
echo 输入错误,请输入560确认执行或 N 返回模式选择。
goto :inputC
)
:replace
echo 正在替换,请稍等...
echo.
echo 替换列表为:
set "modifiedFiles=0"
set "unmodifiedFiles=0"
set "modifiedFileList="
for %%d in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
for %%F in (
"%%d:\Program Files\SAP\SAP Business One\Conf\b1-local-machine.xml"
"%%d:\Program Files\SAP\SAP Business One\Conf\b1-local-machine-template.xml"
"%%d:\Program Files\SAP\SAP Business One DI API\Conf\b1-local-machine.xml"
"%%d:\Program Files\SAP\SAP Business One DI API\Conf\b1-local-machine-template.xml"
"%%d:\Program Files (x86)\SAP\SAP Business One\Conf\b1-local-machine.xml"
"%%d:\Program Files (x86)\SAP\SAP Business One\Conf\b1-local-machine-template.xml"
"%%d:\Program Files (x86)\SAP\SAP Business One DI API\Conf\b1-local-machine.xml"
"%%d:\Program Files (x86)\SAP\SAP Business One DI API\Conf\b1-local-machine-template.xml"
) do (
if exist "%%~fF" (
powershell -Command "(Get-Content '%%~fF') | Foreach-Object {$_ -replace '!A!', '!B!'} | Set-Content '%%~fF'"
set /a "modifiedFiles+=1"
set "modifiedFileList=!modifiedFileList!%%~fF" & echo %%~fF
) else (
set /a "unmodifiedFiles+=1"
)
)
)
echo.
echo. 替换完成!
echo.
echo.
:end
pause