--类似这样试一试declare @sql char(100)
set @sql = 'net use \\202.192.0.120\c ' + '''' + 'Password' + '''' + ' /User:UserName'
print @sql
EXEC master..xp_cmdshell  @sql

解决方案 »

  1.   

    1、你要保证在dos下执行你的语句没有问题
    2、@sql <<==里面的dos命令不要加任何的回车!
    3、你有权限吗?我是说windows权限
      

  2.   

    在DOS提示符下执行都没问题
    在另一台电脑上运行时第一次可以,以后都是相同的出错提示
    我用Administrator登录
      

  3.   

    更改你的MSSQLSERVER SERVICE的启动帐户.将LOCAL SYSTEM改为一个域用户,并且对\\\192.168.0.1\public 有写死亡权限!我用Administrator登录这和你所用的用户LOGIN没有关系!
      

  4.   

    public 要是一个共享名,看样子你是没有在192.168.0.1机器开这样的一个共享。
      

  5.   

    我在两台机子上进行了测试
    都是Win2000 Server SP3 + SQL 2000 SP3,没有设置域
    并且两台机子的Administrator密码是一样的,SQL Server都是用Windows身份认证
    在DOS提示符下直接Copy也可以
    但在SQL 查询分析器里还是不行,一样的提示
      

  6.   

    快烦死了!!!!
    还是不行,实在是找不到原因了,在DOS提示符下操作都没问题
    在SQL查询分析器里就是不行
      

  7.   

    楼主,你看了我的提示么?你LOGIN到MSSQLSERVER的用户和你访问\\XXX.XXX.XXX.XXX\PUBLIC的用户是不一样的,如果你在SQL查询分析器里执行,那么就是已MSSQLSERVER SERVICE启动的帐户来访问\\XXX.XXX.XXX.XXX\PUBLIC,所以我建议你一定要改变MSSQLSERVER SERVICE的启动帐户,使该帐户有访问\\XXX.XXX.XXX.XXX\PUBLIC的权限即可!!
      

  8.   

    最简单..
    1.你将DOMIAN ADMINISTRATOR的一个USER,加入到本地的ADMINISTRATOR组.
    2.改变MSSQLSERVER SERVICE的启动帐户为该用户(一定要作).
    3.RUN THE T-SQL SCRIPT