代码改变世界

第一次ClickOnce

2006-01-11 20:33 by 菌哥, ... 阅读, ... 评论, 收藏, 编辑
  项目刚部署完毕,在部署(ClickOnce)中出现的问题,我总结一下.
        由于我在项目中引用的第三方控件,在安装时老是提示缺少第三方控件的assbemly,到发布的虚拟目录中一查,确实没有第三方控件的deploy文件.问了一下CSDN的"冰戈",解决方法原来是这样的:第一,将第三方控件的.dll放到项目中的bin文件夹下,然后见下图,第二,copy Local 改为True



      总以为问题解决了,但新的问题又出现了:
An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) 

    我的机器上装有两个版本的SQL Server(2000和2005Express),我只用了SQL Server 2000.但提示老是连接SQL Server2005出错,要我检查远程连接和默认设置,那就查吧.于是换了N次连接字符串,将2000和2005的网络实用工具又查了N次,问题依然得不到解决.我被SQL2005给迷惑了,其实问题不在2005上面,在于XP(SP2)的防火墙,大家肯定笑话我,为什么不先查防火墙,唉,一切都是提示信息惹的祸!






     这下问题总解决了吧,不,新的问题又来了,瞧:
用户'(null)'登陆失败。原因:未与信任SQL SERVER连接相关联
     大家这回一定以为是我的数据库配置有问题,错!


图中标出的setting文件中1和2有可能是不同的,我的就是这样,1是Windows身份验证,2是SQL身份验证,请大家在保存数据库连接默认值的时候要注意.
        问题终于搞定,其实这些问题不能算作问题,像我这样不细心的人经常会这样的错误.