关于运行实例的问题——在线等待,高手请帮忙

江山易改 2003-06-30 09:32:58
在运行程序的时候,为了进行版本控制和其他的一些原因,需要在局域网内限制程序运行的数目,但又不能写数据库,不知各位有何办法。目前我知道已经实现了的是,虚拟光驱。在D版虚拟光驱运行时,会对网络上的运行实例进行检查,如果检测到网络上已达到最大用户数则退出本实例。请各位帮忙,很急很急.....................
...全文
46 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
李_军 2003-07-02
  • 打赏
  • 举报
回复
没问题的,QQ都是用udp的
lonsen 2003-07-01
  • 打赏
  • 举报
回复
用不用udp还是考虑清楚,我看你的系统好像不是小系统,通常大的系统中要充分考虑到系统集成的问题,如果你的服务器和客户机不在一个网段,通过带路由功能的交换机能使两个网段通讯,但不能进行广播,所以,建议你写一个服务端程序,每个客户机在隔一定的时间就通过TCP发送消息到服务器,这样的话服务器就知道你的客户端数量了,但缺点就是必须在各个客户端安装时设好服务器的IP。
李_军 2003-07-01
  • 打赏
  • 举报
回复
不过代码已经丢了,所以只能教你用这种方法肯定能实现
李_军 2003-07-01
  • 打赏
  • 举报
回复
代码我以前做过一个局域网中的木马,就是这样来知道有谁的机子上运行了我的木马
李_军 2003-07-01
  • 打赏
  • 举报
回复
当然可以,只要是在局域网中,就可以,你只要通过广播的方式就行了
江山易改 2003-07-01
  • 打赏
  • 举报
回复
: Kakyo(高桥)兄欠做的那个东东只能在单机上用, 好象不能在局域网内使用
江山易改 2003-07-01
  • 打赏
  • 举报
回复
过客兄,能不能来两行代码?
假如,在自己的局域网所定义的网段IP地址为61.168.1.1这样也可以吗?
江山易改 2003-06-30
  • 打赏
  • 举报
回复
yuhouyangguang(雨后阳光)
能不能给点源代码,你说得这么高深,我看不太懂耶
雨后阳光2000 2003-06-30
  • 打赏
  • 举报
回复
建一个用户登陆服务器,记录登陆用户。
用户在运行程序前,要创建远程数据模块实例,由此记录登陆用户的数量,当超过一定的数量时就不能创建远程数据模块,也就不能运行程序!
李_军 2003-06-30
  • 打赏
  • 举报
回复
留个端口,用于监测
李_军 2003-06-30
  • 打赏
  • 举报
回复
就是你自己发送个命令到你的udp的端口,你自己在udp的接收里面,根据收到的命令返回个信息,然后你登陆的那个程序,就可以根据返回的信息,个数来判断运行的实例个数,发送到广播地址,最后的ip是255
李_军 2003-06-30
  • 打赏
  • 举报
回复
我教你,用udp控件,每次一登陆的时候,发送192。168。0。255广播地址,看看有多少个会返回你自己定义的文字之类,就知道有几个实例在运行,这样就可以判断了,
Kakyo 2003-06-30
  • 打赏
  • 举报
回复
用内存映射文件可以解决这个问题。
具体一点就是程序启动时先读取映射文件,数量大于某值时,终止运行;
如果小于规定值,则将其值加1。如果无映射文件则创建,并使值为1。
江山易改 2003-06-30
  • 打赏
  • 举报
回复
天呀,真的有哪位高人帮我一下,还有那些星级人物帮帮忙吧

1,184

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧