ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 63248|回复: 128

【分享】 VB+ACCESS 轻松升级为网络版应用程序 (C/S架构)

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2008-10-27 21:11 | 显示全部楼层 |阅读模式
通常在局域网中建立基于ACCESS数据库的程序时,都要将服务器磁盘共享,这样很不安全,比如MDB被复制或恶意替换等。现在可以实现不共享磁盘,仅用一个控件即可实现数据库连接,原单机版程序修改2 行代码即可升级为多用户网络版。
————————————————————————————————————————————————————        

这里用到的是 NetData_Server.ocx 控件(附件下载)

第一步,建立服务器端。
    新建一个窗体,引用NetData_Server后,在窗体中放入一个NetDataServer1
  1. 在Form_Load事件中加入:
                NetDataServer1.Start "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DATA.mdb;", "8080"(8080为端口号,可以随意修改成您需要的)
2. 在Form_Unload事件中加入:
   NetDataServer1.Down  '关闭服务,释放内存...
这样服务端就完成了!!很简单吧。。。。
————————————————————————————————————————————————————
第二步,修改客户端。
   单机版中的连接字串符:
取消:CONN.OPEN "provider=Microsoft.jet.OLEDB.4.0;data source=D:\sys\data\data.mdb"
改成:NetDataClient1 .Start "192.168.0.1", "8080"  
把CONN.Close 改成 NetDataClient1.Down
其他代码保持不变,这样就完成了客服端的升级!!!
————————————————————————————————————————————————————
要点:
1.服务器端,把数据库文件MDB放到与服务端程序同一文件夹里。
2.客户端如果有多个窗体,连接时要加窗体名如:Form1.NetDataClient1 .Start "192.168.0.1", "8080"
   (NetDataClient1 .Start "服务器IP地址", "端口号")也可放到模块里定义成共用的。
3.开启服务器端后,客户端方可正常工作

[ 本帖最后由 jilijun 于 2009-4-8 12:25 编辑 ]

NetData_Server.rar

26.49 KB, 下载次数: 1943

原版程序(单机版).rar

20.62 KB, 下载次数: 1723

修改为网络版.rar

26.32 KB, 下载次数: 1787

评分

3

查看全部评分

TA的精华主题

TA的得分主题

发表于 2008-10-27 23:20 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
学习了,一直以为ACCESS不能用成C/S模式呢,所以我编的都是用SQL SERVER用数据后台

TA的精华主题

TA的得分主题

发表于 2008-10-28 17:00 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
先收藏了,持续学习中.
做个记号先

TA的精华主题

TA的得分主题

发表于 2008-12-3 08:46 | 显示全部楼层

很好的例子,问题是又如何做对数据的查询

用NetDataClient1.SendQuery.Open 怎写?谢谢

TA的精华主题

TA的得分主题

发表于 2009-3-16 09:35 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
但始终ACC都不如SQL2000快,也不够大
不过一定更方便

TA的精华主题

TA的得分主题

发表于 2009-3-17 17:02 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-4-7 15:27 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-4-7 16:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
哈哈,学习应用一下.

TA的精华主题

TA的得分主题

发表于 2009-4-7 16:42 | 显示全部楼层
谢谢楼主的大力分享

TA的精华主题

TA的得分主题

发表于 2009-4-7 16:50 | 显示全部楼层

回复 1楼 jilijun 的帖子

楼主:您好!
      详细点好吗????
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 20:50 , Processed in 0.043006 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表