又到了和大家分享程序员工作日常的周六啦~上一次和大家分享的是如何写开发需求,按照项目的正常流程,接下来应该是如何制定接口和实现需求。可是因为不同场景的应用,接口采用的方式也不同,需求的不同,实现的方式也不同,所以我跳过这一环节。给大家分享《踩坑小札》。
大家有没有注意过安装软件时那些默认的安装路径?一般来说,安装客户端时,可能会有以下几种默认路径:
1、C:\Program Files\xxx;
2、C:\ProgramData\xxx;
3、C:\Users\name\AppData\Roaming\xxx;
这些路径看着区别不大,在实际中区别大了去了。这些路径里我最讨厌的默认路径就是(1),为什么呢?因为它几乎是系统里需要权限最高的一个路径了。我给大家科普一下,平时我们的客户端启动可以以不同的权限身份来启动,最高的是管理员权限,其余的是普通用户权限。用win10系统的亲们估计注意过,安装程序后,某些客户端的图标上会多出一个小盾牌的样式,如果点击,屏幕会弹出框,询问是否确定打开。这就是需要管理员权限的标志。如果是没有小盾牌,就只需要普通用户就能启动了,双击后就会直接打开,没有任何弹框。路径(1)就是一个要求权限较高的一个路径,如果你想在这个路径下记录一些日志啊,或者写一些数据库,改一些注册表配置,分分钟会告诉你“抱歉,亲,你没有权限哟”。那有的读者就说了,既然这样,我就搞个管理员身份运行呗!是的,作为开发,我们可以提升客户端权限,但是每次双击,每次弹框,很影响用户的体验。而且如果客户端涉及到开机自启动,放在这个路径下的客户端也分分钟启动不起来。所以,尽量避免默认路径为这个路径,可以使用(2)作为安装路径,使用(3)来记录日志。毕竟大部分的用户是不会翻到AppData里面去看每个文档是什么,也就不会把安装目录写的到处都是日志。
说实话,我是很不喜欢开机自启动这个功能的。奈何产品经理喜欢,我不喜欢也得实现。万一碰上安装路径在C:\Program Files\xxx这里面的,开机怎么也启动不起来。其实这个和第一个坑有点类似,主要还是权限问题。win7的权限管控不太严格,但win10的权限那是相当严格啊。
开机自启动实现可以采用两种方式。第一种是修改注册表@“SOFTWARE\Microsoft\Windows\CurrentVersion\Run”。然后将相应的键值写为Ture即可。另一种是可以将快捷方式写入到启动菜单栏中。具体的实现方法每种语言都不一样,但大致脱离不了这两个方向。当然碰上其他奇怪需求的,可能还需要另外写一个启动程序,专门负责启动我们的客户端的。
需求实现哪有那么容易,每个坑都有它的脾气。世上本没有坑,需求多了,就有了坑。最后希望大家在开发中能够顺利,少遇到坑。
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8