所以,我一直在研究一个批处理文件来收集特定的系统信息,我已经在网络安装中打开一个INI文件进入路块。因此获得的路径是:批处理文件读取来自UNC路径的INI文件
for /f "tokens=2*" %%a in ('REG Query "HKCU\SOFTWARE\Zephyr Associates, Inc." /v StyleDir 2^>nul') do set "StyleDir=%%~b"
for /f "tokens=2*" %%a in ('REG Query "HKLM\SOFTWARE\Zephyr Associates, Inc." /v StyleDir 2^>nul') do set "StyleDir=%%~b"
for /f "tokens=2*" %%a in ('REG Query "HKLM\SOFTWARE\Wow6432Node\Zephyr Associates, Inc." /v StyleDir 2^>nul') do set "StyleDir=%%~b"
cd %StyleDir%
所以在这种情况下,假设%StyleDir%是//服务器/ StyleDir/
后来在我们阅读Style.ini与以下文件中的脚本:
for /f "tokens=2 delims==" %%a in ('findstr SQLiteHome style.ini') do set SQLiteHome=%%a
for /f "tokens=2 delims==" %%a in ('findstr Server style.ini') do set SQL=%%a
for /f "tokens=2 delims==" %%a in ('findstr DataHome style.ini') do set DataHome=%%a
在这一点上,我收到一个错误,说我们无法阅读Style.ini。在Style.ini中我有以下内容:
[Default]
DataHome=C:\ProgramData\Zephyr\Data\
SQLiteHome=C:\ProgramData\Zephyr\Data\
[DataBaseList]
Tons of other lines I don't need to read Right now....
后来我填充了一个记录信息的txt文件。该脚本如下:
::Output
echo StyleDir: %StyleDir% >> SystemInformation.txt
echo SQLiteHome: %SQLiteHome% >> SystemInformation.txt
echo SQL Server: %SQL% >> SystemInformation.txt
echo DataHome: %DataHome% >> SystemInformation.txt
那么是否有一种特殊的方式,我可以从INI文件中记录此信息?我有关于临时映射网络驱动器的想法,但问题在于知道哪些网络驱动器已经映射,以便我不会破坏已有的网络驱动器。我甚至不能100%确定这与UNC路径有关,我只知道当INI本地位于C:\可以读取,但在网络上它不能。有什么建议尝试?
我注意到的另一件事是,我可以从批处理文件中打开Style.ini,无论位置如何。由于某种原因,我无法阅读它。
\\ SERVERNAME \ SHARENAME \目录可能是\\ ALFRED \ C $ \目录 – lit
@Emacs用户 错误是如下: '\\服务器\文件夹\导演\' 'CMD不支持UNC路径,当前directories.' 'FINDSTR:无法打开style.ini' 'FINDSTR:无法打开style.ini ' 'FINDSTR:Can not open style.ini' – Pyrometheous
@Paul所以你说因为我使用的是UNC路径,所以这根本不起作用?我不能总是使用驱动器盘符路径,因为根据原始安装人员的设置,它可能会有所不同。有没有办法解决这个问题? – Pyrometheous