C#如何限制同一台机器多次打开同一个项目
2010-11-18 21:55
686 查看
C#开发的一个程序,其包含有一个配置节表示项目ID。项目复制后该项目ID就可以作为另外项目运行。不过两者运行的进程名称一致。
我现在想限制的是:针对一台机器,相同项目ID的该程序只能运行一个实例,谁有好办法请指点一下。
不知道描述的是否准确,如有不明白的请指出。谢谢
运行前 先去读一下 查下process有没该进程 有了 激活
不过这样还是可以通过不同的用户角色运行多个实例的
谢谢大家,以上是判断同一进程名不能重复,我想完成的和这个还有点区别
针对一台机器,相同项目ID的该程序只能运行一个实例,就如QQ同一台机器允许多个QQ号码登录,却不会允许同一个QQ多次登录我这个代码,根据配置节不一样允许作为两个项目的客户端,我想完成的是每个项目的客户端都可以开启,但针对同一个项目最多开启一个客户端。可以用上面的方法,你在打开一个项目的时候,做一个标记,如果标记相同的,则表示是打开同一个项目
呵呵,上面是使用的进程名判断的,不知道如何做标记呢。
最笨的方法,就用这个项目ID来做标记
可能没有明白我的意思,项目ID和进程名如何关联呢?也就是检查的就是进程名,如何用项目ID标记
我现在想限制的是:针对一台机器,相同项目ID的该程序只能运行一个实例,谁有好办法请指点一下。
不知道描述的是否准确,如有不明白的请指出。谢谢
运行前 先去读一下 查下process有没该进程 有了 激活
不过这样还是可以通过不同的用户角色运行多个实例的
谢谢大家,以上是判断同一进程名不能重复,我想完成的和这个还有点区别
针对一台机器,相同项目ID的该程序只能运行一个实例,就如QQ同一台机器允许多个QQ号码登录,却不会允许同一个QQ多次登录我这个代码,根据配置节不一样允许作为两个项目的客户端,我想完成的是每个项目的客户端都可以开启,但针对同一个项目最多开启一个客户端。可以用上面的方法,你在打开一个项目的时候,做一个标记,如果标记相同的,则表示是打开同一个项目
呵呵,上面是使用的进程名判断的,不知道如何做标记呢。
最笨的方法,就用这个项目ID来做标记
可能没有明白我的意思,项目ID和进程名如何关联呢?也就是检查的就是进程名,如何用项目ID标记
你制作一个c#windows窗体程序,如果项目名称假如是Text的话,运行的时候,进程名称不就是:Text.exe嘛? 遍历进程,查找这个进程名不行么? 注册表中标记一下项目行了。关闭项目时移除标记。 其它的自己处理,象非正常退出之类的。 SVN有SVN的好处,我以前也想搞SVN的。但这个的目的不在于版本管理,更多地是在于每个人自己的代码库可以随时随地地用,也可以搜索别人的代码库,从而实现了更多人来共享。在使用了别人收藏的代码的同时,自己也贡献代码出来供别人使用。 再说了,从使用上,这个还是挺方便的。不需要开SVN从这个往那个拷什么的。另外就是不是每个人都有SVN服务器-_-!,你如果要说SourceForge和codeplex这些的话。。我觉得也不方便 倒。。不至于吧,我自己用还有给同事用,都完全没问题呀 最好加个本地导入导出的功能吧!首先得让用户感觉放心才行啊。 想法不错,集合大家的代码,尤其是单元功能类型的代码 LZ 赶紧将这个做强大了 没准微软的 VS2012 将你这功能就买下来了! 是啊,导出到本地的功能肯定是要做的!之后从本地导入也就顺势能做了 绝对支持,这个是个非常好的东西。楼上有的人说不想把代码给出去,是怕别人使用对吧,的确有的代码非常重要不能给别人尤其是竞争对手知道。针对这个问题你可以不把认为重要的代码传上去就行了。而一些公开的,不重要的对大家有用的代码都传上去,就省得满世界去搜索了 目的不纯啊,LZ想收集代码出售啊,或者做个网站卖钱? 想法跟病毒一样,让 别人把代码存在你的服务器上? 安全性怎么办?毕竟如果在公司开发的代码是 工作发明,在未得到公司同意的情况发布出去是要承担法律责任的,你的网站也会有 连带责任。如果是个人构建自己的代码库,就应该存在本地。 想分享做开源有很多正规的渠道。 哈哈,LZ的工具大部分职业程序员也不可能用,比如我们这里都是内外网分离的, 工作机严格不允许上外网的。 来源:nba直播 |
相关文章推荐
- C#.NET常见问题(FAQ)-想要另存一个项目,sln文件丢了怎么办,如何打开高版本的项目
- 如何从Eclipse当中打开一个存在的项目?
- C#中如何打开一个未知编码的文本文件。
- (转) c#中如何设计一个窗体关闭,另一个窗体打开?
- C# winform 程序中如何限制一个文本框中只输入数字和字母(撤消键可以用)
- C# 程序只能运行一次(多次运行只能打开同一个程序) 并激活第一个实例,使其获得焦点,并在最前端显示.
- qici引擎如何打开一个项目进入场景
- 如何在一个机器上针对不同的项目需求使用不同的pyhon版本和包
- 如何限制一台电脑只能登陆一个QQ帐号
- vs2010 如何在一个工作区打开两个项目
- 限制同一台机器上只能运行一个实体(.NET中VB语言)
- 如何在C#下利用RichTextBox打开一个有文字格式和图片的Word文档
- c#中如何打开一个文件夹
- 如何在项目中用一台机器进行简单性能测试
- C#.NET常见问题(FAQ)-想要另存一个项目,sln文件丢了怎么办,如何打开高版本的项目
- c# 程序只能运行一次(多次运行只能打开同一个程序) 并激活第一个实例,使其获得焦点,并在最前端显示.
- c# 程序只能运行一次(多次运行只能打开同一个程序) 并激活第一个实例,使其获得焦点,并在最前端显示.
- [iPhone-Sqlite3]如何为项目添加一个SqliteHelper,打开,插入,查询等
- 禁止一个应用程序的实例在同一台机器上运行多个(C#源码)
- 如何在不注销的情况下用另外一个帐号登录网上邻居的同一台机器。