• 天津宣讲十九大:津沽大地舞春风,小康路上添豪情 2019-05-21
  • 酱香酒为什么要在端午时节制曲微生物 酒曲 2019-05-20
  • 回复@艾鸣1:你看强坛除了小寻子这种跟你一样老蚕的人之外,有人会有人敢支持你么? 2019-05-15
  • 中国经济稳中向好的发展态势没有变 2019-05-14
  • 私扫码付不加控制党政和人行国有银行国有企业自动退出历史舞台 2019-05-11
  • 你真没一点脑子,文字是哪个人的,你到说说啊 2019-05-04
  • 黎明华丽转身成监制 他给四川金丝猴拍了部动画片 2019-05-04
  • 候选案例:爱在华住滇西北宿改工程 2019-05-02
  • 山西寿阳:竹马戏演员的台前幕后 2019-04-26
  • 96次航拍峨眉 换个角度看巴蜀名山 中国国家地理网 2019-04-23
  • 俄罗斯电影《最后一球》定档落魄球星遇上菜鸟球队 2019-04-21
  • 【理上网来·辉煌十九大】缅甸资深媒体人高度评价习近平十九大报告:立意高远 内涵丰富 2019-04-21
  • 特朗普和金正恩先后抵达嘉佩乐酒店 会晤即将开始 2019-04-17
  • 中国侨联直属机关党委举办党务干部培训班 2019-04-17
  • 上海合作组织青岛峰会举行 2019-04-07
  • 福建体彩31选7今天开奖: 提笔写忧伤 exe传参启动

    38
    回复
    4759
    查看
    打印 上一主题 下一主题
    [ 复制链接 ]
    排名
    672
    昨日变化

    福建36选7和值走势图 www.00-na.com 19

    主题

    1181

    帖子

    3557

    积分

    Rank: 9Rank: 9Rank: 9

    UID
    68430
    好友
    13
    蛮牛币
    18416
    威望
    0
    注册时间
    2015-1-14
    在线时间
    979 小时
    最后登录
    2019-5-21

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    您需要 登录 才可以下载或查看,没有帐号?注册帐号

    x
        最近刚刚换了个公司,项目端游,定位海外市场,进公司首先安排些launcher 登录器启动unity exe 程序,使用MFC编写,写了花大概近2个月,各种趟坑,现在总算主要功能,以及他们的要求作完了。其实写这篇文章是想写一个unity的exe 程序结合 launcher 登录器,或者 dos命令行传参启动的,外部传参接受存储,提取功能。   好了转正文:
    unity的exe 启动接受参数的关键函数是:System.Environment.GetCommandLineArgs();函数返回  string[] 数组;
    解释以下这个数组:下标0为我们的exe 程序的全路径,下标1往后面的为我们的启动传入的参数,但是通常我的设计是不会让它下标超过2个的,因为对于我的解析来说现对于那样使用不是很方便。因此我的设计下标只要0,1
    说道这里其实使用一个string存储下标1 就完事了,要讲的也就讲完了!
    其实不然??!那么下面是我如何存储解析这个参数的,使用一个全局脚本CommandLineMgr 来管理存储参数,静态接口,方便游戏内其他??樗媸狈梦侍崛?,好了代码如下:
    1> 接受参数就是使用上面说道关键函数
    [AppleScript] 纯文本查看 复制代码
        /// <summary>
        /// 接受方法
        /// </summary>
        /// <returns></returns>
        public static void Accept()
        {
            try
            {
                string[] args = System.Environment.GetCommandLineArgs();
                if (args.Length > 1)
                {
                    string rcom = args[1];
                    AnalyticalParameter(rcom);
                }
            }
            catch (Exception e)
            {
                Debug.Log("获取命令行参数失败!");
            }
        }



    然后我定义了参数类型 使用了一个枚举
    [AppleScript] 纯文本查看 复制代码
        public enum CommandLineType
        {
            Account,                                            //账号
            Password,                                          //密码
        }



    然后存储,提取都会是根据枚举,得到想要得到的数据


    好了,以下是解析函数就是对于 刚才说到的下标1 的string解析,存储到枚举值对应到的容器内
    注:参数间使用 ; 分号分割,当然你如果喜欢其他符号分割也是可以的。
    [AppleScript] 纯文本查看 复制代码
        /// <summary>
        /// 解析参数
        /// </summary>
        /// <param name="Command">参数字符</param>
        /// <returns></returns>
        private static void AnalyticalParameter(string Command)
        {
            string[] paramArray = Command.Split(';');
            for (int i = 0 ; i < paramArray.Length; i ++)
            {
                string param = paramArray[i];
                string[] pair = param.Split('=');
    
                if(pair.Length != 2)
                    continue;
    
                string key = pair[0];
                string value = pair[1];
    
                CommandLineType type = (CommandLineType)Enum.Parse(typeof(CommandLineType), key);
                CommandLineParameter.Add(type, value);
            }
        }




    好了到关键了,这时参数都存储到容器内了,怎么在需要??槟谔崛〉叫畔⒛??有人说了,简单!既然我上面都说了,枚举就是数据的key ,直接取出来就完了!不是不行,我是觉得这样子不太方便,看我是如何做的
    [AppleScript] 纯文本查看 复制代码
    public static T GetParam<T>(CommandLineType ctype)
        {
            System.Object obj = default(T);
    
            Type type = typeof(T);
    
            if(CommandLineParameter.ContainsKey(ctype))
            {
                string valueStr = CommandLineParameter[ctype];
                if (!string.IsNullOrEmpty(valueStr))
                {
                    if (type == typeof(int))
                    {
                        int n = -1;
                        if (int.TryParse(valueStr, out n))
                            obj = n;
                    }
                    if (type == typeof(float))
                    {
                        float n = -1;
                        if (float.TryParse(valueStr, out n))
                            obj = n;
                    }
                    if (type == typeof(double))
                    {
                        double n = -1;
                        if (double.TryParse(valueStr, out n))
                            obj = n;
                    }
                    if (type == typeof(string))
                    {
                        obj = valueStr;
                    }
                    if (type == typeof(bool))
                    {
                        bool boolValue;
                        if (!bool.TryParse(valueStr, out boolValue) && valueStr != "否" && valueStr != "0")
                        {
                            boolValue = true;
                        }
                        obj = boolValue;
                    }
                }
            }
            return (T)obj;
        }




    我是根据想要的这个枚举数据,你认为它是什么基础类型,就传入对应 T,就输出对应类型,比如我提供了2个测试数据,账号跟密码,我都可以以为它们是数字类型,也可以是string 类型,看你的应用需求而定


    好了,有点基础的人都能看得懂这部分代码,其实简单~主要想申明的是一种“懒人”的思想~,??槟芊庾暗木×糠庾俺龇奖闶褂玫姆椒ɑ蛘呓涌?,便于使用,便于扩展,对于维护量,bug 率的效果都是有很好的体现


    下面放出测试工程,要学习的附件提取哦~
    另外如果想测试效果,将他们打成EXE,使用命令行启动(由于你们没有launcher启动,命令行启动也是可以的) 输入例子: CommandLine.zip (4.71 KB, 下载次数: 367)















    参与人数 1鲜花 +2 收起 理由
    镜月之言 + 2 很给力!

    查看全部评分总评分 : 鲜花 +2

    2初来乍到
    128/150
    排名
    15584
    昨日变化

    0

    主题

    22

    帖子

    128

    积分

    Rank: 2Rank: 2

    UID
    224263
    好友
    0
    蛮牛币
    19
    威望
    0
    注册时间
    2017-5-30
    在线时间
    58 小时
    最后登录
    2019-5-19
    沙发
    2018-8-17 20:20:54 只看该作者
    学习了!
    7日久生情
    1587/5000
    排名
    2091
    昨日变化

    1

    主题

    519

    帖子

    1587

    积分

    Rank: 7Rank: 7Rank: 7Rank: 7

    UID
    56245
    好友
    1
    蛮牛币
    4255
    威望
    0
    注册时间
    2014-11-18
    在线时间
    405 小时
    最后登录
    2019-5-21
    板凳
    2018-8-17 22:40:05 只看该作者
    难得的经验,好好学学习一下
    3偶尔光临
    298/300
    排名
    6931
    昨日变化

    0

    主题

    47

    帖子

    298

    积分

    Rank: 3Rank: 3Rank: 3

    UID
    292147
    好友
    0
    蛮牛币
    917
    威望
    0
    注册时间
    2018-8-1
    在线时间
    61 小时
    最后登录
    2018-12-19
    地板
    2018-8-18 07:59:52 只看该作者
    66666666666666
    7日久生情
    1752/5000
    排名
    1989
    昨日变化

    6

    主题

    530

    帖子

    1752

    积分

    Rank: 7Rank: 7Rank: 7Rank: 7

    UID
    54335
    好友
    2
    蛮牛币
    5454
    威望
    0
    注册时间
    2014-11-9
    在线时间
    534 小时
    最后登录
    2019-5-21
    5#
    2018-8-18 10:39:51 只看该作者
    多谢楼主分享
    6蛮牛粉丝
    1109/1500
    排名
    1668
    昨日变化

    0

    主题

    9

    帖子

    1109

    积分

    Rank: 6Rank: 6Rank: 6

    UID
    152977
    好友
    0
    蛮牛币
    2563
    威望
    0
    注册时间
    2016-6-21
    在线时间
    324 小时
    最后登录
    2019-5-19
    6#
    2018-8-18 11:22:44 只看该作者
    我一般都直接传个json进去,简单通用
    6蛮牛粉丝
    1363/1500
    排名
    1479
    昨日变化

    1

    主题

    245

    帖子

    1363

    积分

    Rank: 6Rank: 6Rank: 6

    UID
    2627
    好友
    0
    蛮牛币
    1034
    威望
    0
    注册时间
    2013-8-26
    在线时间
    261 小时
    最后登录
    2019-5-18
    7#
    2018-8-18 16:01:01 只看该作者
    我一般都直接传个json进去,简单通用
    6蛮牛粉丝
    1302/1500
    排名
    2342
    昨日变化

    0

    主题

    312

    帖子

    1302

    积分

    Rank: 6Rank: 6Rank: 6

    UID
    119648
    好友
    3
    蛮牛币
    1801
    威望
    0
    注册时间
    2015-8-25
    在线时间
    384 小时
    最后登录
    2019-5-14
    QQ
    8#
    2018-8-20 09:07:32 只看该作者
    学习了!
    7日久生情
    1532/5000
    排名
    3443
    昨日变化

    0

    主题

    893

    帖子

    1532

    积分

    Rank: 7Rank: 7Rank: 7Rank: 7

    UID
    210390
    好友
    0
    蛮牛币
    1827
    威望
    0
    注册时间
    2017-3-7
    在线时间
    205 小时
    最后登录
    2019-5-16
    9#
    2018-8-20 10:24:08 只看该作者
    6蛮牛粉丝
    1474/1500
    排名
    1701
    昨日变化

    0

    主题

    228

    帖子

    1474

    积分

    Rank: 6Rank: 6Rank: 6

    UID
    224749
    好友
    1
    蛮牛币
    2298
    威望
    0
    注册时间
    2017-6-2
    在线时间
    478 小时
    最后登录
    2019-5-21
    10#
    2018-8-21 09:35:50 只看该作者
    学习学习
    7日久生情
    2320/5000
    排名
    1612
    昨日变化

    72

    主题

    476

    帖子

    2320

    积分

    Rank: 7Rank: 7Rank: 7Rank: 7

    UID
    71862
    好友
    28
    蛮牛币
    4168
    威望
    0
    注册时间
    2015-1-29
    在线时间
    744 小时
    最后登录
    2019-1-16

    专栏作家蛮牛译员

    11#
    2018-8-21 13:39:32 只看该作者
    谢谢楼主分享,学习了
    5熟悉之中
    876/1000
    排名
    2502
    昨日变化

    0

    主题

    66

    帖子

    876

    积分

    Rank: 5Rank: 5

    UID
    231194
    好友
    0
    蛮牛币
    2843
    威望
    0
    注册时间
    2017-7-10
    在线时间
    226 小时
    最后登录
    2019-3-12
    12#
    2018-8-24 08:23:23 只看该作者
    多谢楼主分享
    5熟悉之中
    616/1000
    排名
    6774
    昨日变化

    0

    主题

    286

    帖子

    616

    积分

    Rank: 5Rank: 5

    UID
    250350
    好友
    2
    蛮牛币
    619
    威望
    0
    注册时间
    2017-10-23
    在线时间
    134 小时
    最后登录
    2019-5-11
    13#
    2018-8-25 14:07:40 只看该作者
    多谢楼主分享
    5熟悉之中
    991/1000
    排名
    2332
    昨日变化

    7

    主题

    111

    帖子

    991

    积分

    Rank: 5Rank: 5

    UID
    31690
    好友
    5
    蛮牛币
    17228
    威望
    0
    注册时间
    2014-6-28
    在线时间
    265 小时
    最后登录
    2019-5-21
    14#
    2018-8-27 10:04:21 只看该作者
    学习学习
    6蛮牛粉丝
    1042/1500
    排名
    3329
    昨日变化

    3

    主题

    189

    帖子

    1042

    积分

    Rank: 6Rank: 6Rank: 6

    UID
    62741
    好友
    1
    蛮牛币
    1434
    威望
    0
    注册时间
    2014-12-21
    在线时间
    406 小时
    最后登录
    2019-3-28
    15#
    2018-8-28 16:06:39 只看该作者
    给力........................
    您需要登录后才可以回帖 登录 | 注册帐号

    本版积分规则

  • 天津宣讲十九大:津沽大地舞春风,小康路上添豪情 2019-05-21
  • 酱香酒为什么要在端午时节制曲微生物 酒曲 2019-05-20
  • 回复@艾鸣1:你看强坛除了小寻子这种跟你一样老蚕的人之外,有人会有人敢支持你么? 2019-05-15
  • 中国经济稳中向好的发展态势没有变 2019-05-14
  • 私扫码付不加控制党政和人行国有银行国有企业自动退出历史舞台 2019-05-11
  • 你真没一点脑子,文字是哪个人的,你到说说啊 2019-05-04
  • 黎明华丽转身成监制 他给四川金丝猴拍了部动画片 2019-05-04
  • 候选案例:爱在华住滇西北宿改工程 2019-05-02
  • 山西寿阳:竹马戏演员的台前幕后 2019-04-26
  • 96次航拍峨眉 换个角度看巴蜀名山 中国国家地理网 2019-04-23
  • 俄罗斯电影《最后一球》定档落魄球星遇上菜鸟球队 2019-04-21
  • 【理上网来·辉煌十九大】缅甸资深媒体人高度评价习近平十九大报告:立意高远 内涵丰富 2019-04-21
  • 特朗普和金正恩先后抵达嘉佩乐酒店 会晤即将开始 2019-04-17
  • 中国侨联直属机关党委举办党务干部培训班 2019-04-17
  • 上海合作组织青岛峰会举行 2019-04-07