lvrxy 发表于 2016-6-8 15:27:54

pb操作局域网共享文件(有用户名和密码)

pb9下测试Ok,希望能帮助到大家
使用到的结构体:
global type netresource from structure
        long                dwscope
        long                dwtype
        long                dwdisplaytype
        long                dwusage
        string                lplocalname
        string                lpremotename
        string                lpcomment
        string                lpprovider
end type


1.声明外部Api函数:
//增加网络共享映射
Function ULong WNetAddConnection2A(Ref netresource lnet,Ref String pass,Ref String username,ULong dwflags) Library "mpr.dll"
//断开网络共享映射
Function ULong WNetCancelConnection2A(Ref String lpName,ULong dwflags,boolean fForce) Library "mpr.dll"


2.建立网络共享映射,虚拟个盘符出来(如:'K:'盘)从而对文件进行读写
【】实例:
ULong              ll_flag
netresource   ln_lnet

ll_flag = 1 // 0表示建立永久连接
ln_lnet.lplocalname = "k:"                                                   // 虚拟盘符
ln_lnet.lpremotename = "\\192.168.10.158\share"             // 实际共享路径
ls_username = "administrator"    // 访问共享文件的用户名
ls_pass = "123456"                  //访问共享文件的密码
li_ret = WNetAddConnection2A(Ref ln_lnet,Ref ls_pass,Ref ls_username, ll_flag) // 共享映射

If li_ret <> 0 Then
    Messagebox('','共享映射创建失败!')
End If

// 这时本地虚拟的K盘就可以随便读写了(=读写共享的目标文件夹)
li_ret = MessageBox("Tips","Delete file?",Question!,OKCancel!,2)
If li_ret = 1 Then
        If Not FileExists (ls_file) Then Goto Label
        If FileDelete(ls_file) Then
                MessageBox('Tips','Success!')
        Else
                MessageBox('Tips','Fail!')
        End If
End If


// 使用完成,记得断开共享映射哦
WNetCancelConnection2A("K:",1,True)      // 断开网络共享映射

surachai43 发表于 2016-6-20 22:05:05

thanks for sharing
页: [1]
查看完整版本: pb操作局域网共享文件(有用户名和密码)

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com