gpt4 book ai didi

Golang - smb2 模块 + 对 Golang 的基本了解

转载 作者:行者123 更新时间:2023-12-01 22:23:50 26 4
gpt4 key购买 nike

我一直在尝试使用该模块:
https://godoc.org/github.com/hirochachacha/go-smb2#RemoteFile.ReadAt
为了在 Windows 机器上对我的 smb2 进行身份验证,
身份验证过程进展顺利,但那里没有很多示例脚本..

我的功能:

func connect_client(host string, port string, share string) {
//Checks for a connection on port

conn, err := net.Dial("tcp", host+":"+port)
if err != nil {
panic(err)
}
defer conn.Close()

//smb auth
d := &smb2.Dialer{
Initiator: &smb2.NTLMInitiator{
User: "Testing",
Password: "password123",
Domain: "win10",
},
}
client, err := d.Dial(conn)
if err != nil {
fmt.Println("Connection failed")
} else {
fmt.Println("Connection Succeeded")
}
defer client.Logoff()
//escape the liternal strings
host = `\\` + host + `\` + share
fmt.Println(host)
fs, err := client.Mount(host)
if err != nil {
panic(err)
}
defer fs.Umount()
fmt.Println(fs)
}

一旦我打印出 fs (*RemoteFileSystem) 我试图理解它的含义以及我如何返回它的值,这样我就可以在其他函数中使用它,除了这个可以识别“fs”的本地函数..

最终,我想要列出所有可用的目录(例如 smbclient)并检查它们的权限。

从上面的语法中,我得到如下输出:
&{0xc000048650 0xc0000160d8}

谁能向我解释这意味着什么以及如何使用该值将其返回给其他功能?

谢谢!

最佳答案

因此,根据评论,我想做的是让函数返回一个指针值,我用以下方法做到了:

func connect_client(host string, port string, share string) *smb2.RemoteFileSystem {
(function from above)
return fs
}

现在我可以在其他函数中使用这个指针,以使其他模块函数使用它

关于Golang - smb2 模块 + 对 Golang 的基本了解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61238653/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com