从.bat文件执行时,无法识别用作函数的返回类型的自定义类型。
我有一个PS v2.0脚本,可以按类实现继承。
基类包含一个类似getSessionOption的方法,该方法返回一个WinScp.SessionOption
对象。这是一个实用程序脚本,可将sftp文件发送到远程服务器。现在,服务器凭据根据组件而有所不同,例如我必须传输服务器A,B或C的文件。但是所有脚本都相同。
只是为了使凭证逻辑在服务器之间分开,我使用了多个派生类,它们继承了所提到的基类。像ASessionOption
,BSessionOption
等都是自己的getSessionOption
方法版本。
问题:
当我从Poweshell命令运行脚本时,它将产生正确的结果。但是,当尝试通过批处理文件(.bat)执行脚本时,无法识别对WinScp.SessionOption
的引用。
尽管我已经使用App-Path加载正确的程序集引用,这就是为什么从Powershell命令窗口执行时没有发现问题。