软硬件使用

Xcode 6导出ipa时必须登入开发账号的绕过方法

Xcode 6正式版Version 6.0.1 (6A317)已经放出Mac AppStore,之前为了体验swift也安装过beta版,但是并没有注意到6系Xcode对于导出ipa的变化,更新正式版后经友人提醒才发现新版本在Archive中导出ipa时会要求登入并选择相关的Apple开发账号,像这样:

Xcode6

而不是像之前只要有对应App ID的开发证书及描述文件就可以了,这样就会导致合作发布App时的不便,因为一般都是只提供开发证书带私钥导出p12及相关的开发生产环境的Provisioning Profile,共享开发账号密码的话会带来诸多不便,这个在Apple开发论坛上也看到有人问到,最后终于找到了绕过这步的方法,其实就是通过Xcode命令行操作的方式导出,具体操作如下:

Continue reading…

Perforce (P4)的文本换行处理设置

CJ过后看到同事拿来的Perforce国内代理商的宣传单,发现已经把有很多游戏开发公司用P4这点作为一个宣传了,再看看目前现在svn项目中的.svn信息所占空间比正式资源还大的情况,决定体验一下这个很多游戏公司都在用的P4

其实从上学再到工作这些年也接触了不少VCS(或者叫SCM),从VSS,CVS再到SVN,GIT,每次尝试一种新的系统时总会看到很多介绍和之前用的系统比的优势的文章(这点Perforce最是夸张,直接在官网上给出了和其它VCS比较的详细PDF文档,如http://www.perforce.com/sites/default/files/pdf/perforce-cvs-comparison.pdf还有http://www.perforce.com/sites/default/files/pdf/perforce-subversion-comparison.pdfhttp://www.perforce.com/sites/default/files/pdf/perforce-git-comparison.pdf看出来商业软件确实是做的比较到位!),虽然很多描述在亲身体会过后感觉并不尽然,不过还是希望P4能带来更多的“然”。

费了这么多话,还是写点正题吧,目前P4也没用的多么深入,更算不上多精通,所以比较之类的话题还是算了吧,记一下关于文本换行处理设置的心得吧。

Continue reading…

发现一款基于OllyDbg的Android ARM调试工具

最近研究Android平台的原生代码so保护时找到了一款很好用的汇编级调试工具:基于OllyDbg的GikDbg,传送门:http://www.gikir.com/product.php

上学时学习汇编曾经接触过OllyDbg,用起来很是顺手,结合着IDA的静态分析,学到了不少底层的知识。

最开始研究Android原生代码逆向时用的是IDA Pro,明显看到最近的版本中,IDA一直在强化动态调试能力以及对移动平台的支持,不过实际测试时发现,虽然的arm elf可以反汇编以及分析代码,但是动态调试时其自带的android_server远程调试服务器不能很好地支持Android 2.3.3以上的系统,网上搜索看到有人说可以使用gdb server来远程调试,但是试了几次都没有成功。android_server据说在IDA 6.3版以后就可以很好地支持4.0+的系统了,无奈没有资源…

后来很幸运的找到了这个GikDbg,显示抱着试一试的想法,用4.0.3的模拟器测试了一下,发现很好用,Attach,断点等一切正常,就是反应速度稍慢,这应该是gdb远程调试的通病吧…

最开始看官网上的Android版名字叫GikDbg.ART还以为只有开启ART运行时模式才行,后来实测DVM也没有问题,而且连模拟器都能很好的支持,当然物理设备的话需要root,否则push不过去gdbserver。

使用说明在这里:http://gikir.com/blog/?p=115,Android 4.0.3模拟器DVM运行时一次成功!

Realtek HD Audio前面板插口没反应的一个解决方法

主板是微星的770T-C35,机箱是一款世纪之星的不知道什么型号的,HD Audio前面板连接线已经接好主板,有防呆也不可能插反,但是耳机接入前面板3.5插口后就是没反应,查看了HD Audio控制面板,显示如下:

QQ截图20140328120922

前面板显示没有插入,也没有声音,检查了前面板接线盒主板说明书后意识到一个问题:可能接线或插口并没有按有sensor的方式连接,也就是说前面板的插口不能像后面板载的那样实时显示插头插入拔出情况,所以前面板接口一直没有声音,于是关闭掉了检测: Continue reading…

Win8的Hyper-V导致视频硬件解码DXVA失效的问题

在使用TMT,完美解码的PotPlayer, MPC HC, KMP等播放器看蓝光原盘和1080P mkv等视频时发现如果开启硬解的话,会出现“绿屏”的问题!出现问题的机器是AMD X2 245的U和HD4850显卡,Win8 64位系统,查了下资料这块显卡对视频硬解是支持的,于是第一反应是显卡驱动,试遍了amd官网的各种legacy驱动(HD4000系列已经被列入legacy了)和guru3d上的各种第三方修改,增强驱动后,均没有解决,不是绿屏就是卡死,DXVA Checker也检查了显示没问题的,然后一度以为legacy了后amd的新系统64位驱动就渣掉了,快要放弃的时候发现guru3d论坛上有人提到Win8的Hyper-V会导致硬件出问题,于是恍然大悟,之前为了玩WinPhone8的SDK和模拟器,开启了Win8自带Hyper-V虚拟机组件,于是果断卸掉,重启后再用各种播放器硬件一切恢复正常,看到CPU占用率下降,应用不卡真是一件非常舒心的事…

解决Chrome浏览器在Mac下开启新标签后出现404的问题

可能不是只在Mac下才会出这个问题,现象就是打开Chrome后新标签页原本应该显示的常用网站和搜索页面显示不出来了,而是个这样的404页面:
10dfa9ec8a13632789b4c96b938fa0ec08fac709

用开发者工具看了一下,是这个地址报404: www.google.com/_/chrome/newtab?espv=210&ie=UTF-8,而且非常奇怪的是如果先“科学上网”的话,就不会出这个404,一切正常…

Continue reading…

记录最近折腾eSATA外置硬盘的经历

之前由于实在受不了用USB2.0的小优盘从HTPC下载机上来回搬东西的又慢又要分批的痛苦之处,购入了ORICO 6518SUS3 这款eSATA+USB3.0的硬盘座:http://www.orico.com.cn/product/16_1874.html

IMG_0341a

之所以选择了这款eSATAUSB3.0双接口的硬盘座,是因为要在没有USB3.0eSATA的老P45电脑和有USB3.0有eSATAB75M HTPC之间共同使用。

到货之后先试了一下USB3.0,顺利识别出并且速度也比较满意,配合ST31000528AS硬盘复制文件能达到硬盘80MB/S左右。接着试eSATA时却遇到各种问题: Continue reading…

关于Office 2013安装后每次打开Word Excel等都提示正在配置的问题

今天把一台PC的系统从Win 8升级到了Win 8.1,由于第一次升级安装的时候选择了保留设置和应用后重启几次快完成时报了个错又回滚了回去,看到有同学说可能是升级保留应用存在的兼容问题,建议只保留设置,于是又来了一边只保留设置的升级,这回虽然成功升级了,但是桌面的那堆软件图标和硬盘上装好的软件文件基本上就都报废了,于是又开始重装!

到Office的时候遇到点小问题,本来之前Win 8的时候装的是2013的普通版,后来升级后换了个VOL版,发现安装好后,每次启动Word Excel等都会有个一段时间的正在配置的提示,即耽误时间,又烦人,于是开始想办法解决。
Continue reading…

github克隆项目中的子模块submodule时遇到的问题

GitHub真是个开源大宝库,不只能学习代码,还能学习git的使用!

最近在研究Off-the-Record-iOS项目(https://github.com/chrisballinger/Off-the-Record-iOS)时,学习实践了git submodule的用法!

这个项目中有一个Submodules文件夹,包含了该项目所引用到的其他GitHub上的开源项目,最开始没注意到,直接Download ZIP拿下来的,发现XCode项目中一堆红色文件名,才发现原来还有很多依赖项目,仔细看了一下还挺不少,于是果断放弃手动挨个下载…

搜索了一下,发现项目的issue #87有人问到了类似的问题:https://github.com/chrisballinger/Off-the-Record-iOS/issues/87,按照下面的回答,重新git clone了项目,并使用git submodule init && git submodule update(1.6以后版本也可以直接用git clone –recursive代替)来更新项目中的依赖子模块,更了前几个之后又出现了新的错误:

Submodule path ‘Submodules/DAKeyboardControl’: checked out ‘5352d1ff2d1131d974d94406ed8fcf8eb068aa72’
Cloning into ‘Submodules/LibOrange’…
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Clone of ‘git@github.com:ChatSecure/LibOrange.git’ into submodule path ‘Submodules/LibOrange’ failed
Continue reading…