标题:关于连接远程服务器的问题
只看楼主
fanjinyu9108
Rank: 2
等 级:论坛游民
帖 子:644
专家分:20
注 册:2014-1-16
结帖率:88.5%
已结贴  问题点数:20 回复次数:13 
关于连接远程服务器的问题
我建立了一个SQL数据服务器,有接近200个部门访问,在远程访问的时候,会出现有的能访问,有的不行,不能访问的拼IP地址又能拼通,我怀疑是远程连接的代码
有问题,师傅们能否帮我看下,连接代码如下:
WAIT "请稍等,正在连接远程数据" WINDOW AT 25,85 nowait  
           SQLSETPROP(0,"DispLogin" ,3)   &&不显示任何对话框
           nhandle=SQLSTRINGCONNECT(&qf_str)   
           IF  nhandle<=0    &&连接不成功
                       wait clear
                       MESSAGEBOX("远程连接失败!!!",0,"错误信息")
                       
           ELSE    &&连接成功
               wait clear  
               
           ENDIF   
           
           RETURN nhandle
           
        
               
搜索更多相关主题的帖子: 连接 WAIT 服务器 远程 访问 
2020-05-07 17:15
wcx_cc
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:52
帖 子:352
专家分:1152
注 册:2015-10-2
得分:7 
楼主可以换换连接方式看看(连接一定保证是共享模式 vfp 6.0 没有,vfp 9.0 有)。
2020-05-07 21:57
fanjinyu9108
Rank: 2
等 级:论坛游民
帖 子:644
专家分:20
注 册:2014-1-16
得分:0 
我是用的9.0啊
2020-05-07 22:47
wcx_cc
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:52
帖 子:352
专家分:1152
注 册:2015-10-2
得分:0 
如果 &qf_str 里面没有包含 .T.,需要加上,即: nhandle=SQLSTRINGCONNECT(&qf_str,.T.) ,试试看看,再不行,就要改连接模式。(假如因为是连接有问题时)。
2020-05-08 01:36
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:7 
以下是引用fanjinyu9108在2020-5-7 17:15:52的发言:

我建立了一个SQL数据服务器,有接近200个部门访问,在远程访问的时候,会出现有的能访问,有的不行,不能访问的拼IP地址又能拼通,我怀疑是远程连接的代码
有问题,师傅们能否帮我看下,连接代码如下:
WAIT "请稍等,正在连接远程数据" WINDOW AT 25,85 nowait  
           SQLSETPROP(0,"DispLogin" ,3)   &&不显示任何对话框
           nhandle=SQLSTRINGCONNECT(&qf_str)   
           IF  nhandle<=0    &&连接不成功
                       wait clear
                       MESSAGEBOX("远程连接失败!!!",0,"错误信息")
                       
           ELSE    &&连接成功
               wait clear  
               
           ENDIF   
           
           RETURN nhandle
           
        
               

有的能访问?有的不能?是同一台机器吗
2020-05-08 08:24
fanjinyu9108
Rank: 2
等 级:论坛游民
帖 子:644
专家分:20
注 册:2014-1-16
得分:0 
不是同一台机器
2020-05-08 09:39
fanjinyu9108
Rank: 2
等 级:论坛游民
帖 子:644
专家分:20
注 册:2014-1-16
得分:0 
PUBLIC nhandle,qf_str    &&生成字符串
     SELECT dztab  &&IP地址表
    ip=alltrim(dz)
    qf_str='"'+'DRIVER=SQL Server;SERVER='+ip+';UID=sa;PWD=Wjh6552907;APP=Microsoft Visual FoxPro;WSID=JLS10;DATABASE=ykcx'+'"'
         thisform.Enabled=.f.  &&查询期间不能再点击
         
          WAIT "请稍等,正在连接远程数据" WINDOW AT 25,85 nowait  
           SQLSETPROP(0,"DispLogin" ,3)   &&不显示任何对话框
           nhandle=SQLSTRINGCONNECT(&qf_str,.t.)   
           IF  nhandle<=0    &&连接不成功
                       wait clear
                       MESSAGEBOX("远程连接失败!!!",0,"错误信息")
                       
           ELSE    &&连接成功
               wait clear  
               
             mydwbh=UPPER(ALLTRIM(thisform.text1.value))  &&用户名称
             Ac=SQLEXEC(nhandle,"Select * from dbo.yh where dwbh=?mydwbh ","denglu")  && 产生登录表
             thisform.Enabled=.t.  &&恢复正常状态
               IF  Ac<0
                   = SQLDISCONNECT(nhandle)
                   MESSAGEBOX("读取数据错误!",0,"错误信息")
               ELSE
                   =SQLDISCONNECT(nhandle)
                   SELECT denglu
                   IF UPPER(ALLTRIM(thisform.text2.value))=UPPER(ALLTRIM(mm)) AND LEN(mydwbh)>0
                     PUBLIC dw_mc,dw_id,dw_bh
                     dw_mc=dw  &&这个是下个表单需要用的
                     dw_bh=dwbh
                     dw_id=id
                     myjs=js
                     thisform.zt=2     &&zt=2,关闭表单的时候,没有 clear events
                     DO case
                       case myjs="管理"
                          RELEASE thisform
                          DO FORM JUSTPATH(LCFILE)+"\管理" NAME f0_main1
                       case myjs="操作" OR myjs="其他"
                          RELEASE thisform
                          DO FORM JUSTPATH(LCFILE)+"\铅封" NAME f0_main1
                     endcase         
                        
                   ELSE
                      =messagebox("用户名或者密码录入有误",0,"注意")
                   endif
                  
               ENDIF
         
          endif  &&远程连接结束
2020-05-08 09:42
fanjinyu9108
Rank: 2
等 级:论坛游民
帖 子:644
专家分:20
注 册:2014-1-16
得分:0 
这是全部代码,还是没有成功,好着急啊,有点原因了,各个站点都能访问,唯独机关部门不能访问,我怀疑是机关部门安装了防护系统造成的,可是机关拼服务器的IP是能拼通的啊,另外,服务器是安装在分站点的


[此贴子已经被作者于2020-5-8 10:08编辑过]

2020-05-08 09:43
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:190
帖 子:3125
专家分:8340
注 册:2015-3-25
得分:0 
有个方法,可以测试出,是什么问题
就是,你用1台本本,在别的地方测试,能正常的,然后,你拿到不能的地方,用他们的网络看看。
防火墙,端口,默认是1433
2020-05-08 10:54
fanjinyu9108
Rank: 2
等 级:论坛游民
帖 子:644
专家分:20
注 册:2014-1-16
得分:0 
用笔记本怎么测呢?
2020-05-08 12:21



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-501477-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.095059 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved