存档

‘日常’ 分类的存档

那些年,我们用过的电脑

2012年6月20日 没有评论

上周的时候,电脑突然不能用了。一开机发现硬盘灯都不亮了。

把我给急死了。

一来是因为半夜呀,电脑不能开机影响第二天工作。二是因为正准备玩游戏的。电脑都是次要的,大不了再咬牙分个期换个机器好了,主要是数据重要嘛。

反复尝试很久都不行,每次都强制关机的。后来突然想到 olay 的机器,于是把我的硬盘换上,可以正常开机了,看来不是我硬盘的问题。那么接下来就是主板或者屏幕的问题,不过这个不是我简单地拆开就可以解决的。

想到周末的人会很多,周五的下午我就抽时间跑了一趟中关村。电脑自然是要放那里检测的,把硬盘带回来了,我可不想因为任何原因火。

因为恰逢是个周末,在家用 macbook,这悲催的电脑总是提示“WI-FI硬件未找到”,上不了网,各种物理的、软件的、暴力的方式都试过了,都没有效果。要怎么形容这个macbook 呢~

看时间才4点不到呢,于是先把自己的散热板给拆掉了,清理里面的灰尘。安装完后发现有点噪音,开始的时候那么多灰运行时都安静的很,被我一打扫,反而有声音了。

然后又把于总的 T43 拿出来折腾了,这个机器已经很久没有用了。刚开始的时候都开不了机了,充了会电才好,说是系统反应太慢,还有一个bug 就是莫名其妙地失去响应,那就重新安装一个系统吧。

安装完系统后发现问题还是没有解决,在网上搜索了下拆机图,把 T43 给拆开了,里面好多灰。正在清理的时候,olay 跑过来凑热闹,一脚把地上的螺丝给踢不见了几个。

安装回去后发现系统开不了机,就算开机进入桌面有时候触控板也无法响应。后来发现如果使劲按着掌托区域,就正常的。可是老要使劲按着也不是办法,后来发现在右下角垫个东西例如螺丝刀什么的,就可以了。

后来有反复拆装过,终于面板被我给弄裂了一处。

受到影响的莫过于糗事的不能正常更新,用户的反馈让我有点内疚呀。好在周末的时候通知我可以去取机器了,大中午的时候跑过去把机器给拿回来,说是换了块主板。

这周一的时候,晚上机器特别的烫,散热板不是有开着的嘛,后来发现散热板根本就没有运行,我还以为是上次拆散热板给弄坏的,把线插到别的插口又可以了,换手机充电也没有反应,看来是那个 USB 接口坏了。我在拆后盖的时候,散热风扇一下子掉了出来,我那个去,不拧风扇螺丝。

周二的下午又跑了一次中关村,感觉真扯呀。

他们又说把机器给留下来,我坚持要等一等,让跑一下看结果什么情况。等待了一个半小时候,终于有结果了,原来是上次给我换主板的时候,USB 的那一小块电路板在集成的时候没有插紧。我的大脑里就剩下一个英语单词,你们懂的。

按说这次拿回家了应该没有什么问题吧。发现无线不能用了,找不到热点,但是设备管理器里是有这个硬件的。网上搜了下,一看是无线硬件开关没有打开,好吧,给打开后还是无效。禁用重新打开也无效,网上有人说也有同样的问题,说 Fn+F5 也没效果,我试了下这个功能,终于发现原因了,把这里无线的软开关打开后,终于可以上网了。

回家后正在吊儿郎当地看网页,突然发现少了个东西。有的同学可能知道,在读卡器插槽那里在不用的时候是有个塑料卡片放在里面的,现在就是那个卡片没有了。今天给客服打电话,后来说是给我再找一个,然后快递过来。

看明天情况吧,不知道会是什么样的杯具。求安慰呀~

分类: 日常 标签: ,

让Visual Studio 支持Zen Coding

2012年5月15日 2 条评论

不得不说的是 zen coding 很火,这个工具大大减少了前端攻城师的时间,提高了效率。虽然我用到的也就那么一个功能,还没有接触的朋友们可以去看看。

zen coding 支持很多编辑器,例如 editor plus 、notepad ++,后来流行的 Sublime Text 编辑器也有对它的支持。我用的最多的还是 visual studio ,遗憾的是并不支持 zen coding ,今天终于让我发现了让 visual studio 支持zen coding的方法。

首先,让我们来这里下载一个插件安装包并安装。接下来,打开 VS,工具-选项,左边找到“键盘”,右边“显示命令包含”输入框里输入“zen”,然后下拉列表里就出来了,不出意外的话会有2条记录。选择中意的,再输入快捷键,最后确定就可以了。

经过实验发现,输出的是 <html lang=”en-us”> ,不太符合我们的国情,于是我修改了下配置文件,改为输出  lang=”zh-cn” ,同时觉得 html:5  这样的麻烦了,添加了 html5 的扩展。

Web Browser控件强制以IE 9 模式渲染

2012年5月14日 没有评论

其实一直一来我都认为 web browser  控件是和系统的 IE 版本保持一致的。以前在写某一个 Windows Gadget 的时候,发现系统用的是 IE 7 的模式进行渲染,而我的机器上明明安装的是 IE 9,当时感觉这个现象简直颠覆了我以往的概念,于是大惊小怪的@屈屈同学。

然后再另外的一个项目里又使用了web browser  控件,把 userAgent 打印出来,一样地显示 IE7 ,很是不甘心呀。

今天终于发现了原因。其实 web browser 和 IE 并非完全一样。如果应用里使用了 web browser 控件,系统会默认使用 IE 7,也就是 IE 8的兼容模式来渲染页面,即使当前 IE 版本已经到了 9。

如果想要强制使用最新的渲染模式的话,需要修改注册表,在 FEATURE_BROWSER_EMULATION 下面添加自己的键值。我这里以实际的思路举例,需要说明的是,由于工作的原因,我这里只需要关注最新版本的 IE,当前最新的是 IE 9。

1、安装包在安装的时候,先从注册表里获取到系统的IE 版本号,如果是 IE 8 以下,就跳过本逻辑。版本号的获取可以从这里读取:
32位系统:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer
64位系统:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer

键 svcVersion 对应的值即为 IE 的版本号

2、在注册表对应的位置创建键值,键为用到 web browser 控件的程序的名称,例如 LenovoProductQuery.exe (不需要完整的路径,带扩展名的完整文件名就可以了),值为第一步获取到的版本值。MSDN 上显示一共有 5 个枚举值,可以根据实际情况来设置,例如 十进制的9。注册表的位置为:
32位系统:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION
64位系统:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION

4、卸载的时候移除对应的键值即可。

======枚举说明======
9999 (0x270F)
Windows Internet Explorer 9. Webpages are displayed in IE9 Standards mode, regardless of the !DOCTYPE directive.

9000 (0x2328)
Internet Explorer 9. Webpages containing standards-based !DOCTYPE directives are displayed in IE9 mode.

8888 (0x22B8)
Webpages are displayed in IE8 Standards mode, regardless of the !DOCTYPE directive.

8000 (0x1F40)
Webpages containing standards-based !DOCTYPE directives are displayed in IE8 mode.

7000 (0x1B58)
Webpages containing standards-based !DOCTYPE directives are displayed in IE7 Standards mode.

就眼下的技术来说,要用到的是 9999 和 9000。我英文不好,也不知道是否翻译的正确,9999 是说所有的页面都会以 IE 9 标准模式渲染;而9000 是说只有以标准写法的才会以IE 9方式渲染。要在这2个值间如何取值大家自己衡量好了。

更多具体的枚举,请参考微软的定义。

分类: 日常 标签: , ,

java.lang.ClassNotFoundException 错误

2012年5月5日 没有评论

这个事情其实持续了有好几个月了,发生在 Android SDK 更新后,Eclipse 项目可以编译成功,但是运行时会崩溃,无论是模拟器还是真机,跟踪输出的记录为  Caused by: java.lang.ClassNotFoundException 。崩溃的地点是第三方的库。

我有在项目里添加了一些统计、广告、语音相关的SDK,移除掉这些 jar 包后就正常,所以问题可能还是和这些有点关系。

奇怪的是,这项目以前是可以运行的,在反复卸载和安装 Eclipse 和 SDK 都没有效果后,我暂时把这事情给放下来,去琢磨 唠叨下 的代码。后来网上有人给出的解决方案是把项目里的 lib 文件夹修改名称为 libs ,就可以了。有问过其它专门做 java 开发的同事,无论是 lib 还是 libs 对项目来说都无所谓的。但是心里对一定要该名字总觉得是怪怪的。

心里还是有点不死心,继续在网上找线索,后来发现了另外的一个解决方法,看原文可以移步到这里。个人觉得第二种方案比较好,我们来看是怎么解决的哈。

在项目点右键,选择 Build Path ,再选择 Configure Build Path ,然后切换到  Libraries 选项卡,把第三方的 jar 引用全部移动到项目的顶部,然后 clean 一下项目,重新编译就可以通过了。

出错的项目是以前的项目,在 Android SDK 和 Eclipse 升级后出现,所以估计 Google 方面是不是做了一些修改导致项目前后不一样。对于文中提及的2个解决方法,各位看官可以根据自己的爱好和实际情况来选择好了。如果是在升级后新建的项目貌似就没有问题。

 

题外话:

在使用第三方 SDK 库的时候,我都是按照他们提供的文档,使用 Add External JARs 来添加。但是遇到了一个问题,项目通过版本控制在我的小Y和 Mac 上同步,绝对路径 Cover 不住 2 台电脑的项目设置,后来发现改用 Add JARs 可以解决,用的是项目的相对路径,这个真心不错。总感觉自己出东西真慢的样子,问题拖了这么久才解决。

分类: Android, 日常 标签:

获取 apk 安装包文件清单信息

2012年4月20日 没有评论

aapt dump badging

分类: 一句话, 日常 标签:

开始工作咯

2012年4月9日 没有评论

清明节放了几天假,再加上又请了2天假,休息咯一个星期呢。感觉还没有玩够呢,明天开始上班咯。

加油!

分类: 日常 标签:

windows 8 消费者预览版初印象

2012年3月1日 没有评论

微软在昨天的时候发布了 windows 8 消费者预览版,当时衣服自己洗就在服务器上下载了。

早上到单位想把镜像从服务器上移动到电脑上,由于速度太慢给放弃了。装了QQ旋风,重新下载看看,好在代理今天没有封锁QQ旋风,果断下载镜像以及 VS 安装包。

本来是想安装在虚拟机里的,但是虚拟机貌似版本太低了,安装有问题。更新了新版本后,又提示 Product Key 有问题,于是把硬盘给整理了一下,做双系统安装。

安装过程不表,下面说一下感受。

创建账号的时候发现可以使用 Live 账号来代替本地帐户,这个简直和苹果的 Apple ID 太像了。

按照习惯,进入系统做的第一件事情就是激活 Administrator 账号。发现这个账号居然无法使用应用商店,好吧,我切换到普通用户下面。安装 Visual Studio 时候弹出了用户权限的提示,点击确定后,再取消安装,然后程序崩溃了。正儿八经地一路确定下来,到蛮正常的。

点击进入应用商店,以为和模拟器一样可以按着鼠标不松左右来滑动屏幕,发现不行,仔细一看在底部看到了滚动条。昨天有看新闻说QQ是第一个在 App Store 里上线的,去下载一个看看。点击安装,系统提示无法购买。不知道是不是因为我机器上网是需要代理的原因,什么软件都安装不了,太悲催了。

接下来要说的是关机、重启的操作,这个可能还是习惯的问题。衣服自己洗能找到的一个方式是,注销账号后,点击屏幕右下方的电源按钮,即可实现关机或者重启。或许还有别的方式吧。

嗯,输入法,系统安装好后会有一个英文输入法和一个中文输入法。他们之间通过 Shift 按键来切换,嗯衣服自己洗想说的是这个习惯我在以前的 windows 上面没有怎么注意过,在苹果上面用的蛮多的。

Visual Studio 安装完后我又继续安装中文语言包,安装到最后出现了一个错误,Microsoft Visual Studio 11 IntelliTraceLoc 无法使用服务(503)。不知道是什么情况。

比较赞的是,IE 10 的关于里,自动安装新版本默认是选中的,这是一个很大的进步。如果可以后台静默强制更新就好了。不晓得以后的前端会不会根据 IE 10 不同的小版本做 hack,如果会有这个影响的话,那么前端就更值钱了。

任务管理器也很符合开发者的口味,可以显示简略信息也可以显示详细信息。如果你做开发的话,那么不需要衣服自己洗来说明,好处么你懂的。

想登陆新浪微博看一看,要么就是验证码不显示,要么就是验证码不好识别,反正最后的结果就是告诉我登陆异常,切换回 win 7 的系统,就正常了,再切换回来又是说登陆频繁啊什么的,反正不让用,手机客户端也不可以操作。

给客服打电话,等了10多分钟,话说我的话费估计又没有了,这个月你不晓得我口袋紧张,早饭要不要加杯豆浆都要犹豫半天的。回到正题,那客服mm到是蛮专业的,提供资料后她反馈说他那边验证是没有问题的。然后我说我用的是最新的 win 8 系统做的测试,她说你稍等,我又等待了5分钟后,mm告诉我说他们的技术部门测试了没有问题,还特别告诉我,新浪微博在电脑上一般用的是 XP 系统(我突然觉得新浪微博的FE好苦逼呀)。我说我这用的是 IE 10,对方说用的内核都是一样的。那一刻我陷入了沉思,这IE 6 和 IE 10 两者到底算不算一样的内核呢?

其实这里有个问题,衣服自己洗需要和大家一起讨论,就是客服在系统验证的时候,是需要你提供账号和密码前3位。我就在想,那么在架构上,新浪微博的密码是如何保存的呢?密码的加密算法是可逆的,或者密码是明文保存,又或者是数据库中有一个字段保存了密码的前3位?

接着说,我对客服mm说,那你帮我转一下客户端吧,我客户端也登陆不了。客户端那边是一个GG,问我要账号和密码,我就迷惑了,这个密码一定是需要的么,他说是的这样才可以做验证嘛。我说那算了,我没有问题了。

所以到最后,我还是不知道新浪微博登陆不上到底是哪里出问题了。

分类: 日常 标签: , ,

Ubuntu系统Apache反向代理设置

2012年2月23日 没有评论

先说一点题外话,糗事的android、windows phone 7、iOS 版本都有一点点眉目了,android  的版本都开始进行第二版了,但是网站一直都没有动静。

网站部分我是打算分为2块,一块是给mobile html5的那部分,给那些 java 和 诺基亚 Sysmain 的用户访问的;另外一部分是传统网页,打算用 javascript 和 php 好好地写一下,然后看看能不能找一个前端方面的职位。

在这里,要非常地感谢一个人,就是我的好朋友ququ同学,他给与我太多太多的帮助,事无巨细,我为有这样的一个好朋友而骄傲。

本来空间是在国外的,平时都是自己在用,糗事的web版本我担心大家使用速度可能会有点慢,可是用国内的话备案就简直是一个杯具,要现场照相不说,还有个人信息泄漏的风险。衣服自己洗就曾经踩了一个坑,现在简直是非常地排斥备案,于是最终就用的新浪的SAE空间。

网上看了很多教程,说的是打开apache 的重写功能,虽然看的头晕晕的,半按照网上的方法修改半自己揣摩着,期间还给ququ连发了2封邮件呢。下班时最后的效果就是访问网站的时候,虽然会显示期望的内容,但是地址栏的url会变化,还是会显示真实的地址,我用工具查看了下,确实会有 http 304 请求。

这不是我想要的。在吃过晚饭后,觉得这样也不是办法,ququ还木有回邮件,于是就自己琢磨呗,网上又看了一些帖子,最终整理如下。

第一步,首先是要打开apache的相关功能。

sudo a2enmod rewrite 打开 url 重写,虽然反向代理用不上,但是程序的其它地方是需要的,这里就一并给打开了。
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_balancer

这里一共有3个命令,我开始的时候按照网上的教程只打开了第一个,后面的2个没有打开,总是报服务器500 内部错误,后来添加了后面的2个后就解决了。如果你在配置的时候,日志里提示“proxy: No protocol handler was valid for the URL /. If you are using a DSO version of mod_proxy, make sure the proxy sub”,那么你应该和我一样,添加后面的2个功能。

第二步,设置网站的配置文件,在ubuntu的apache里,每个网站的配置文件是放在单独的文件里,找到 sites-available 文件夹里对应的文件并修改,修改后的配置文件差不多是下面的样子。
ServerName www.a.com
DocumentRoot “/var/site/www/”
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://host.com/
ProxyPassReverse / http://host.com/
ErrorLog “/var/log/apache2/www.log”
CustomLog “/var/log/apache2/www_accesses.log” common

ProxyRequests 是代理的类型,如果是 on 呢就表示正向代理,我们这里需要的是反向代理,就设置为off。ProxyPassReverse / http://host.com/  呢就表示把所有的来自根目录的请求都代理到 http://host.com/ 的根目录下。

第三步呢,就是重启 apache。使用 sudo /etc/init.d/apache2 restart 命令,然后刷新页面就大功告成了。

最后回想起来,虽然很简单,是真的折腾了好久。另外在今天知道了一个小技巧,博客本来是 www.withonly.com,我是想直接输入 withonly.com 也可以直接访问的,但一直不知道要如何设置。总不至于需要新设置一个虚拟目录吧,按照 IIS 里的操作来看,应该是个很简单的,这个也一直没有好意思问ququ。

好在今天晓得了,在配置文件里设置 ServerAlias 就可以了。好吧,这里接受你们尽情的鄙视。

文字写到这里基本上就算是完事了,剩下要考虑的就是如何尽快地渲染页面,我刚才看了下效果,一个请求从国外再到国内,速度还是慢了许多,这个优化我还是放在前端去解决吧。

夜深了,祝大家好梦。                –2012-02-23   1:23

分类: 日常 标签: ,

清空数据库表

2012年2月18日 没有评论

最近在不断地清空数据库的表,人工操作起来稍显的麻烦了点,放上SQL语句,以备后用。

–/第1步**********删除所有表的外键约束*************************/

DECLARE c1 cursor for select ‘alter table [‘+ object_name(parent_obj) + ‘] drop constraint [‘+name+’]; ‘ from sysobjects where xtype = ‘F’ open c1 declare @c1 varchar(8000) fetch next from c1 into @c1 while(@@fetch_status=0) begin exec(@c1) fetch next from c1 into @c1 end close c1 deallocate c1

–/第2步**********删除所有表*************************/

declare @sql varchar(8000) while (select count(*) from sysobjects where type=’U’)>0 begin SELECT @sql=’drop table ‘ + name FROM sysobjects WHERE (type = ‘U’) ORDER BY ‘drop table ‘ + name exec(@sql) end

分类: 日常 标签: ,

cnBeta上的一个美美的信息

2012年2月13日 2 条评论

今天看cnBeta上面的新闻,这新闻说的是魅族在准备 android 4.0 的事情,文章里同时提供了一些照片和截图,这个新闻可以移步到这里查看详细内容。

你们猜衣服自己洗发现了什么?

真相在第5张图片。这张图片显示的是手机里安装的软件,第一个就是衣服自己洗发布的那个“手电筒”软件呀。顿时把我给美的呀,虽然这说起来也算不上什么,但是心里还是会很舒坦,这个“手电筒”软件不光魅族可以使用,其它的 android 手机也可以用的,有兴趣的同学可以到这里去下载

诶哟喂,现在想一想心里还是很美。这个算是免费的推广么?