‘Dev’ 分类的存档
最近还算有点个人时间,决定看点Web相关的东西。嗯,就是Google Maps API了(至于ArcGIS Server,以后再说吧)。 准备做一个类似Google Fusion Tables和Geocommons Maker的东西,大概描述一下这两者的功能。 首先用户上传一个csv文件,里面包括N多属性+制定地理位置的字段(一般是经纬度,如果没有的话有两种解决方法,GeoCommons是让你自己去找GeoCoding的服务处理一下你的csv,而Google则制定一个文本字段自动Geocoding得到地理位置)。 接下来就是标准的地图符号化了,Google的比较简单,就只有地标+分层设色两种,剩下的就是些饼图了之类的图表显示。见下图 GeoCommons的功能则强大的多,你看下面几张图就知道有多淫荡了。。。也不知道是用Actionscript还是Flex搭建起来的,不过这UI真赞。 准备用把这个Demo架在GAE上,至于语言么心理预期是Python,估计还得用点Javascript。 刚开始学习Web开发,一步一步来,最终做成啥样就不知道了。不出意外的话应该很挫。。。
DM2是个好东西,占用资源少,而且功能相当实用。比如说最小化窗口到浮动图标、切换窗口总在最上层、最小化窗口到托盘等等等等。 与此同时他还有好多强大的插件,我最喜欢的是它的虚拟桌面插件。理由也挺简单,资源占用小,切换迅速。不过这个插件有一个小小的缺点,就是无法设置哪些窗口在所有虚拟桌面上都存在。就比方说FastIcons,这个类似于Dock的小东西是我的标准系统常驻软件。在切换虚拟桌面的时候我就一直想让这个软件永久保留,要不然实在是太不方便了,如下图。 还好DM2和它的插件都是开源的,再加上今天刚好有点时间,就顺便改改吧。最终成果如下:手动配置DM2目录下的dm2.ini文件,用文本编辑器在[Plugins_VirtualDesktop_Settings]这一节的最后加上如下几行。然后就这些程序就可以逍遥法外,置桌面切换而不顾了,haha。 1: ExcudeCount=1 //你要过滤的程序个数 2: Excude0=D:\Program Files\Tools\FastIcons\FastIcons.exe 3: Excude1=。。。。//每个程序的完整路径。编号为Excude+数字 4: Excude2=。。。。 5: Excude3=。。。。 原本以为这小功能花不了几分钟时间,可一写下来才发现原来俺的C基础已经废了,调Bug的时候发现误删野指针无数,唉。最郁闷的是在VS下运行一切没问题,然后直接双击exe运行切换虚拟桌面是毫无反应,sigh….. 经多方查证才发现问题在程序的权限上,VS下编译运行的程序是以Debug的权限运行的,比Windows的管理员权限还高。而我为了通过窗口的句柄获得其对应程序的路径,在代码里用了几个Tlhelp32里的API,在以管理员权限运行这个程序的时候是得不到结果的。没办法,只能手动提升进程的权限(利用AdjustTokenPrivileges这个API就行了)。 现在终于是能运行了,不过还有一个更郁闷的事,就是Debug下一切正常的程序到了Release下就又出问题了。估计原因有两种可能,一是提升权限没成功,二是VC编译器优化的问题。先不搞了,等下次有空再来看。反正Debug下编译的Dll能用,先用着再说。 附 DLL + 很挫的修改代码,其实也就增加了四五个函数(Debug下出来的Dll有点大,这是没办法的事): DLL下载 插件源码

