你好我想弄清楚如何从networking运行一个文件,基本上它位于\ 10.18.xx.xx \ installers \ install.bat,所以是的这将提示用户名和密码,当我find它手动。
我应该在bat文件中使用哪些代码来确定计算机具有哪个版本的MS Outlook,从特定的共享文件夹运行install.bat。 例如:MS Outlook是32位版本,那么它会从32位文件夹运行install.bat,而对于MS Outlook 64位版本,则会从64位文件夹运行install.bat。 TIA!
对不起,愚蠢的问题,我新批处理命令..计算机使用微软Outlook 2013.无论如何,我试图做到这一点,从桌面运行这个bat文件,它运行后立即closures,就像什么都没有发生。
CheckOS IF EXIST "%PROGRAMFILES(X86)%" (GOTO 64BIT) ELSE (GOTO 32BIT) :64BIT \\10.18.xx.xx\Shared_Installers\PhishingOutlookPluginPH\64bit\install.bat -u myuser -p mypass GOTO END :32BIT \\10.18.xx.xx\Shared_Installers\PhishingOutlookPluginPH\32bit\install.bat -u myuser -p mypass GOTO END :END
在debugging批处理脚本时,不要通过单击图标启动它们,而是从命令行( cmd.exe )启动它们。 否则,您将无法看到错误消息。 现在,对于实际的问题…
可能有这个错误:
UNC path are not supported. Defaulting to Windows directory.
您无法在.bat批处理脚本中使用UNCpath引用共享。 选项:
将脚本重命名为.cmd以启用UNC支持。
使用pushd (和popd )临时映射networking驱动器,例如:
pushd \\10.18.xx.xx\Shared_Installers\PhishingOutlookPluginPH\64bit\ install.bat -u popd
您不能在脚本中input新行的用户名和密码! 选项:
使用networking映射networking驱动器,并将凭据作为参数。 但是,您将不会再有使用pushd或UNC的优势,您最终将在脚本中显示密码。
只有包含软件更新的共享没有任何秘密。 (我相信你的Shared_Installers是这样的一个共享)。 只需将读取权限添加到每个人 ,问题就解决了。
只是一个提示…随着IF EXIST "%PROGRAMFILES(X86)%"你只检查如果操作系统是64位。 这不能告诉你Office安装是否也是64位。 在你的环境中,这可能永远是真的,但不能一概而论。 此外, 有时甚至在x64操作系统上使用x86 Office也会更好。
您可以在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\XX.0\Outlook ( XX是Office版本)中使用HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\XX.0\Outlook的值来确定安装的版本。 如果每个人都有相同的主版本,应该很容易编写脚本,即使他们不这样做也是可能的。