首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • winform中app.config配置问题
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:00:33 楼主
    原配置文件:
    <add key="connstr" value="Data Source=.;Initial Catalog=huitao;User ID=sa;Password=sa"/>
    程序正常.如果一换成:
    <add key="connstr" value="Data Source=192.168.1.100;Initial Catalog=huitao;User ID=sa;Password=sa"/>

    程序就出错.
    想问下是什么原因,下边这个改过的配置文件的数据源IP是本机IP地址
    我还准备放到服务器上去给服务器的IP地址呢?现在本机的IP地址都不能访问了只能用点(.)来访问并且没有任何错误.到底是什么原因呢有谁知道的麻烦说下
    50  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:09:121楼 得分:0
    你的IP地址是动态的还是固定的呢?还有防火墙或者端口什么的也看下!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:09:242楼 得分:0
    看看C:\WINDOWS\system32\drivers\etc\hosts文件的配置
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • badtank
    • 等级:
    发表于:2008-05-06 14:12:303楼 得分:0
    配置下sql server的服务器端配置为ip访问。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cancerser
    • 等级:
    发表于:2008-05-06 14:13:444楼 得分:0
    data source=\"机器名 ¦IP ¦localhost ¦127.0.0.1\";

    试下都
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jinjazz
    • 等级:
    发表于:2008-05-06 14:14:575楼 得分:0
    现保证在sqlserver中用ip地址能够连接数据库

    用server=ip;uid=sa;pwd=sa;database=huitao试试

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:33:246楼 得分:0
    改成:
    <add key="connstr" value="Data Source=server=192.168.1.100;database=huitao;User ID=sa;Password=sa"/>
    后提示在建立与服务器的连接时出错,连接到SQL2005时,在默认的设置下SQL不允许进行远程连接可能会导致失败.
    为什么要提示连接到SQL2005呢?我装的是SQL2000+VS.NET2005啊.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • badtank
    • 等级:
    发表于:2008-05-06 14:35:567楼 得分:0
    是不是连接到sql2005express上了?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jinjazz
    • 等级:
    发表于:2008-05-06 14:37:258楼 得分:0
    你用sqlserver客户端能连上该服务器吗
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:52:419楼 得分:0
    引用 2 楼 hegang888888888 的回复:
    看看C:\WINDOWS\system32\drivers\etc\hosts文件的配置

    一般机子都是:127.0.0.1       localhost
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:53:4210楼 得分:0
    这个地址是我本地机器的IP地址.在SQL2000里用这个地址新建注册向导都可以连接成功.连127.0.0.1都不行.只有用点才可以正常使用.用server等于IP地址的话直接就直接出以上我打出来的那个错误.如果就datasource等于机身IP地址的话我估计是连上了的,但是一进去执行线程的时候报的一个错.但用点的话所有的都正常.......................快昏了!!!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 14:55:0611楼 得分:0
    是的,hosts文件配置里显示的是127.0.0.1   localhost
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yh95
    • 等级:
    发表于:2008-05-06 14:55:2412楼 得分:0
    你要是IP都访问不了 那可能被防火墙给挡回去了(如果查询分析器能用的话),
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:03:1313楼 得分:0
    我防火墙都关掉了,用的eset NOD32
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jinjazz
    • 等级:
    发表于:2008-05-06 15:09:2514楼 得分:0
    telnet 192.168.1.100 1433
    能否连上?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:13:0515楼 得分:0
    后面再加个端口号???
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:16:1416楼 得分:0
    还是不行,提示在建立与服务器的连接时出错,连接到SQL2005时,在默认的设置下SQL不允许进行远程连接可能会导致失败

    同时我在SQL2005外围应用配置器里边将远程连接改为了可以同时使用TCP/IP和名称访问都不行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:19:2217楼 得分:0
    该回复于2008-05-06 16:55:32被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:20:3518楼 得分:0
    PatrickPan
    建议加密一下,然后调用Microsoft.Data.ConnectionUI.Dialog,可以配置连接字符串。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:30:3819楼 得分:0
    还有没有人知道是怎么回事啊,急死了都.从来没遇到过这种问题
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:30:5720楼 得分:0
    验证方式用的什么? <authentication mode="Windows" />
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yh95
    • 等级:
    发表于:2008-05-06 15:36:0621楼 得分:0
    程序连接的默认DB该是2000,而非提示中的2005,而这在之前的程序访问DB时,是不会出现的情况,虽然PC上同时安装了这两个服务。

    Community Server中的连接信息:

       <connectionStrings>
         <add name="SiteSqlServer" connectionString="Data Source=(local);Initial Catalog=CommunityServer;Integrated Security=SSPI" />
       </connectionStrings>
       <appSettings>
         <add key="SiteSqlServer" value="Data Source=(local);Initial Catalog=CommunityServer;Integrated Security=SSPI" />

    可以看到上面的数据源链接的是(local),这在单独的2000服务端时是可以的,包括localhost等

    但是在PC上共同安装了 数据库的服务端时,这样就通不过了,即便我们的SQLServer 2000和2005已安装为了两个实例。

    解决方法:

    将(local)修改为本地服务器的名称即可。

    关于链接串,这里要补充一点的是我们页可以采用127.0.0.1的方式来组合连接串,这在我们的PC可以连接互联网的情况下是可以的,但如果脱离网络,127.0.0.1的方式就有可能不会正常的工作,我想这看可能是IP的解析问题,所以链接不上时多试试其他的方法

    PS:下面为链接SQLServer 2005的几行串,大家可以参考下
    <connectionStrings>
             <add name="Personal" connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename= ¦DataDirectory ¦Personal.mdf" providerName="System.Data.SqlClient"/>
             <remove name="LocalSqlServer"/>
             <add name="LocalSqlServer" connectionString="Data Source=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename= ¦DataDirectory ¦aspnetdb.mdf"/>
         </connectionStrings>
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yh95
    • 等级:
    发表于:2008-05-06 15:43:5122楼 得分:0
    也可能事你机器SQL SERVER 2000没打SP4的原因,只是猜测也遇到过
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:45:4423楼 得分:0
    HTML code
    <add key="connstr" value="server=ip;database=huitao;User ID=sa;Password=sa"/>

    试一试
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:45:5824楼 得分:0
    <add key="connstr" value="server=192.168.1.100;database=huitao;User ID=sa;Password=sa"/> 这样试下,
    App.Config有内置的connectionString的,可以用那个
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 15:46:2625楼 得分:0
    1433端口开放了吗?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jzywh
    • 等级:
    发表于:2008-05-06 16:19:5426楼 得分:0
    Data Source=(local)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jzywh
    • 等级:
    发表于:2008-05-06 16:22:1827楼 得分:0
    localhost also be correct, but (local) is better than localhost.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zuo_hy
    • 等级:
    发表于:2008-05-06 19:36:3528楼 得分:0
    先以配制结信息用查询分析器直接连数据库看能否成功,如果不能连说明数据库有问题,
    再新建一个简单的工程,直接拖一个DataSource,VS2005会自动在config文件加连接信息.再拷过来试试.
    PS:我一般碰到问题都是把有问题的部份提出来,模拟一个能正常RUN的情景,再比较之间的别或者把OK的直接COPY过来.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 22:37:1629楼 得分:0
    我也遇到过这个问题,怀疑是SDK的bug(SqlConnection类)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-06 23:35:0730楼 得分:0
    如果用IP,计算机不能是自动获取IP
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-07 08:56:3931楼 得分:0
    不懂,请指点
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-07 09:04:2532楼 得分:0
    两个数据库服务器的话,一定是有一个默认在IP下的也就是说,IP是2005的话,IP/SqlServerName才是2000.
    另外你看看数据库服务器是不是允许IP访问
    我的机器也是2k,2k5并存的.每次都这样访问很麻烦.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-07 13:19:3833楼 得分:0
    用固定的ip
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-07 16:18:3534楼 得分:0
    把端口加起
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • bjsun
    • 等级:
    发表于:2008-05-08 09:06:1335楼 得分:0
    该回复于2008-05-08 09:13:05被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-08 14:16:1936楼 得分:0
    引用 4 楼 cancerser 的回复:
    data source=\"机器名 ¦IP ¦localhost ¦127.0.0.1\"; 

    试下都


    在局域网中可以使用机器名或者IP,但是必须保证IP是固定的,如果不能保证,建议使用机器名(在局域网中的机器名)。
    大部分局域网中IP地址都设置成了自动获取,这样就有可能机器重启之后IP地址发生变化。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天