我有一个 PDQ 安装程序,它注册了 2 个 DLL 文件并将结果记录到网络共享。如果我在 1 台机器上运行 PDQ,它会正确显示计算机名称,但是如果我在多台机器上运行安装程序,它只会显示第一个名称,而不会显示其余名称。
批处理文件如下;
回显 %computername% >> “\\\servershare\software\Admin\IT_Support_Utilities\PDQ Deployment\Logs\agent_logs.log” C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe /codebase /tlb “Agent.dll”>> “\\\servershare\software\Admin\IT_Support_Utilities\PDQ Deployment\Logs\agent_logs.log” C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe /codebase /tlb “MySql.Data.dll”>> “\\\servershare\software\Admin\IT_Support_Utilities\PDQ Deployment\Logs\agent_logs.log”
下面是在 2 台机器上运行的输出;WRCREC274
是第一台机器的名称。水平线分隔下一个批处理文件的开始位置
WRCREC274 Microsoft (R) .NET Framework 程序集注册实用程序 4.0.30319.1 版权所有 (C) Microsoft Corporation 1998-2004。保留所有权利。 类型注册成功 程序集导出至 'C:\WINDOWS\system32\Agent.tlb',并且类型库已成功注册 Microsoft (R) .NET Framework 程序集注册实用程序 4.0.30319.1 版权所有 (C) Microsoft Corporation 1998-2004。保留所有权利。 程序集导出至 'C:\WINDOWS\system32\MySql.Data.tlb',并且类型库已成功注册 ----------
Microsoft (R) .NET Framework 程序集注册实用程序 4.0.30319.1 版权所有 (C) Microsoft Corporation 1998-2004。保留所有权利。 类型注册成功 程序集导出至 'C:\WINDOWS\system32\Agent.tlb',并且类型库已成功注册 Microsoft (R) .NET Framework 程序集注册实用程序 4.0.30319.1 版权所有 (C) Microsoft Corporation 1998-2004。保留所有权利。 程序集导出至 'C:\WINDOWS\system32\MySql.Data.tlb',并且类型库已成功注册 ----------
有人能解释为什么%computername%
只出现在运行它的第一台计算机上而不出现在其余的计算机上吗?
答案1
谢谢大家的帮助,我现在可以正常工作了。我只需让批处理文件先在每台机器上本地保存信息,而不是直接将其记录到服务器上,然后我就可以使用 TYPE 命令将信息附加到我的服务器共享中。
C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe /codebase /tlb "Agent.dll" >> c:\agent_logs.log
Type c:\agent_logs.log >> "\\servershare\software\Admin\IT_Support_Utilities\PDQ Deployment\agent_logs.log"