因此,我有一个Windows msi安装程序,该安装程序是通过golang程序进行交叉编译而创建的,并安装在客户端Windows机器上。该程序将数据从Windows计算机上的文件夹发送到Kinesis流。该程序对于本地C:\驱动器上的所有文件和文件夹都可以正常运行。
我的问题是,当客户端使用已安装的NTFS驱动器(“ I://,J://,D://”)时,出现
level=info msg="Ignoring target I:\\xml with invalid stat: open I:\\xml: The system cannot find the path specified."
无论已安装的驱动器(E,F,G等),我都会收到相同的错误消息。 我已经在多个客户端上尝试过此操作,并且收到了相同的错误。
所以仅出于背景考虑-我正在使用wine编译程序,以便在构建时将其转换为msi。该程序扮演SYSTEM USER角色,我已经检查了已挂载目录的权限(并使它们完全打开-仍然没有运气)。我的头在墙上撞了一段时间,所以问题是:还有其他人遇到过这样的问题吗?
不知道这有多大帮助,但这是我正在使用的GO代码的特定部分:
p, err := filepath.Abs(t.Path)
if err != nil {
Logger.Infof("Ignoring invalid target path: %s, error: %s", t.Path, err)
continue
}
_, err = os.Lstat(t.Path)
if err != nil {
Logger.Infof("Ignoring target %s with invalid stat: %s", t.Path, err)
continue
}
c.targets = append(c.targets, site.WatchTarget{p, t.SrcTag})
我尝试了os.Stat,Lstat甚至os.Open无济于事。就在这条线的结尾处。
理想的结果是建议您进行任何更改,以使交叉编译的go程序中的系统用户可以查看安装的网络驱动器。