以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 网络连接的问题请教 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=79023) |
-- 作者:ljh29206 -- 发布时间:2015/12/23 8:45:00 -- 网络连接的问题请教 BeforeOpenProject 事件 Dim str As String = System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) & "\\FoxTable(狐表)" If FileSys.DirectoryExists(str) Then filesys.DeleteDirectory(str,2,2) End If shell( "net use \\\\192.168.44.202\\e TBFCfs.2109 /user:Administrator",0) If FileSys.FileExists("\\\\192.168.44.202\\e\\空滤数据库\\空滤数据库.mdb") = False Then MessageBox.Show("数据库连接失败,准备启动备用系统!,该情况请联系班长") E.Cancel = True End If ----------------------------------------------------------------------------- 我把数据库放置在服务器(该主机常年不关机)共享文件里, 客户端的电脑设置了,开机自动启动编译好的客户端, 代码如上, 用的是固态硬盘 ,快到 居然会 出现 FileSys.FileExists("\\\\192.168.44.202\\e\\空滤数据库\\空滤数据库.mdb") = False 的情况,而且是每一次。 重新 在开启 客户端 就没问题了。 用机械硬盘的时候 ,没出现过这个问题! 求助如何解决! [此贴子已经被作者于2015/12/23 8:46:26编辑过]
|
-- 作者:大红袍 -- 发布时间:2015/12/23 9:23:00 -- 等候执行完毕再弹出提示。
Dim p As new Process() \'msgbox(strRst) |
-- 作者:ljh29206 -- 发布时间:2015/12/23 9:37:00 -- 老师不懂 这段代码的作用是什么! 这样写 就能确保 网络 连通后在启动 系统吗
Dim str As String = System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) & "\\FoxTable(狐表)" If FileSys.DirectoryExists(str) Then filesys.DeleteDirectory(str,2,2) End If Dim p As new Process() p.StartInfo.FileName = "cmd.exe" p.StartInfo.UseShellExecute = False \'关闭Shell的使用 p.StartInfo.RedirectStandardInput = True \'重定向标准输入 p.StartInfo.RedirectStandardOutput = True \'重定向标准输出 p.StartInfo.RedirectStandardError = True \'重定向错误输出 p.StartInfo.CreateNoWindow = True \'设置不显示窗口 p.Start() p.StandardInput.WriteLine( "net use \\\\192.168.44.202\\e TBFCfs.2109 /user:Administrator",0) p.StandardInput.WriteLine("exit") If FileSys.FileExists("\\\\192.168.44.202\\e\\空滤数据库\\空滤数据库.mdb") = False Then MessageBox.Show("数据库连接失败,准备启动备用系统!,该情况请联系班长") E.Cancel = True End If 改成这样对吗? [此贴子已经被作者于2015/12/23 9:48:56编辑过]
|
-- 作者:大红袍 -- 发布时间:2015/12/23 10:06:00 -- 这样写
p.StandardInput.WriteLine("net use \\\\192.168.44.202\\e TBFCfs.2109 /user:Administrator") |
-- 作者:ljh29206 -- 发布时间:2015/12/23 10:20:00 -- 老师,看不到代码 问下 这段代码的思路是什么 , 能保证使网卡有效运行后 再 判断,网络的情况吗
|
-- 作者:大红袍 -- 发布时间:2015/12/23 10:22:00 -- 意思是,先执行完命令 net use \\\\192.168.44.202\\e TBFCfs.2109 /user:Administrator
再,继续下面的代码。1楼的代码,是异步执行的,不一定执行结束就运行下面的代码了。 |
-- 作者:大红袍 -- 发布时间:2015/12/23 10:23:00 -- Dim str As String = System.Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) & "\\FoxTable(狐表)" If FileSys.DirectoryExists(str) Then filesys.DeleteDirectory(str,2,2) End If Dim p As new Process() p.StartInfo.FileName = "cmd.exe" p.StartInfo.UseShellExecute = False \'关闭Shell的使用 p.StartInfo.RedirectStandardInput = True \'重定向标准输入 p.StartInfo.RedirectStandardOutput = True \'重定向标准输出 p.StartInfo.RedirectStandardError = True \'重定向错误输出 p.StartInfo.CreateNoWindow = True \'设置不显示窗口 p.Start() p.StandardInput.WriteLine( "net use \\\\192.168.44.202\\e TBFCfs.2109 /user:Administrator") p.StandardInput.WriteLine("exit") If FileSys.FileExists("\\\\192.168.44.202\\e\\空滤数据库\\空滤数据库.mdb") = False Then MessageBox.Show("数据库连接失败,准备启动备用系统!,该情况请联系班长") E.Cancel = True End If |