首页 新闻 会员 周边

C#客户端程序:主程序与子程序的权限设置

0
悬赏园豆:50 [已关闭问题] 解决于 2015-03-04 11:02

如题,有一个工具箱主程序,工具箱中嵌入多个子程序,用户只需打开对应程序的按钮就可以了,已经实现

  //不存在
                    Process p = new Process();
                    p.StartInfo.FileName = Environment.CurrentDirectory + @"\SubroutineList\1\MJRanking_Tool.exe";
                 
                    //設定程序名
                    p.StartInfo.Arguments = "123";
                    p.StartInfo.UseShellExecute = false;        //關閉Shell的使用
                    p.StartInfo.WorkingDirectory = Environment.CurrentDirectory + @"\SubroutineList\1";//关键一步
                    p.StartInfo.RedirectStandardInput = true;   //重定向標準輸入
                    p.StartInfo.RedirectStandardOutput = true;  //重定向標準輸出
                    p.StartInfo.RedirectStandardError = true;   //重定向錯誤輸出
                    p.StartInfo.CreateNoWindow = true;          //設置不顯示窗口 
                    p.Start();   //啟動

现有一需求:子程序只能通过工具箱打开,如果单独从目录中打开子程序则提示无法打开,求实现思路与解决方案

赶猪上架的主页 赶猪上架 | 初学一级 | 园豆:6
提问于:2015-03-03 09:42
< >
分享
其他回答(4)
0

子程序是独立的exe文件吧?怎么不能直接打开呢?不可能呀???可否说清楚一点。

XiaoFaye | 园豆:3087 (老鸟四级) | 2015-03-03 10:20

看好了,那是需求,需要完成这个功能

支持(0) 反对(0) 赶猪上架 | 园豆:6 (初学一级) | 2015-03-03 10:22

@赶猪上架: 

直接检查自己的父窗口就行了嘛。如果父进程不存在,就直接退出。

从工具箱打开程序时,记得关联好父窗口就行了。

支持(0) 反对(0) XiaoFaye | 园豆:3087 (老鸟四级) | 2015-03-03 10:27

@赶猪上架: 

看这个文章吧,说得很清楚了。

http://www.fluxbytes.com/csharp/host-a-process-window-inside-your-applications-window/

支持(0) 反对(0) XiaoFaye | 园豆:3087 (老鸟四级) | 2015-03-03 10:29
0

1、设置一个启动参数

2、主程序开放一个通信端口,子程序启动时去请求确认下

3、子程序验证主程序进程

4、标识。

幻天芒 | 园豆:37175 (高人七级) | 2015-03-03 10:47
1

添加启动参数,在你的子程序中启动时判断启动参数,如果有则启动,如果没有则退出进程。

Launcher | 园豆:45045 (高人七级) | 2015-03-03 11:48
0

进程间通讯

小彬 | 园豆:947 (小虾三级) | 2015-03-05 13:22
0

 每个exe文件都是以Main函数来执行的,可以为Main函数设置参数, 这是常用的方法。

.NET快速开发框架 | 园豆:946 (小虾三级) | 2015-03-09 09:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册