<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>王永杰的Blog(博客)</title>
	<atom:link href="http://wyj.zhuwo.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://wyj.zhuwo.info</link>
	<description>Keep thinking, seeking and practicing!</description>
	<lastBuildDate>Thu, 26 Jan 2012 11:41:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>News: filesystem upgrade &#8211; manual intervention required(ZZ)</title>
		<link>http://wyj.zhuwo.info/2012/01/news-filesystem-upgrade-manual-intervention-requiredzz/</link>
		<comments>http://wyj.zhuwo.info/2012/01/news-filesystem-upgrade-manual-intervention-requiredzz/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 11:41:13 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=346</guid>
		<description><![CDATA[最近用上了archlinux，挺不错，不过升级系统的时候，出现错误，mtab有冲突，如果删除，又会出现空间不够的错误。google到了解决方法，如下： When upgrading to filesystem-2011.12 there will be a conflict with /etc/mtab. Install the package as follows: pacman -S filesystem --force It is strongly advised to avoid the --force or -f switch as it is not safe. However, in this &#8230; <a href="http://wyj.zhuwo.info/2012/01/news-filesystem-upgrade-manual-intervention-requiredzz/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div>
<p>最近用上了archlinux，挺不错，不过升级系统的时候，出现错误，mtab有冲突，如果删除，又会出现空间不够的错误。google到了解决方法，如下：</p>
<p>When upgrading to <code>filesystem-2011.12</code> there will be a conflict with <code>/etc/mtab</code>.</p>
<p>Install the package as follows:</p>
<p><code>pacman -S filesystem --force</code></p>
<p>It is strongly advised to avoid the <code>--force</code> or <code>-f</code> switch as it is not safe. However, in this particular case it is needed as deleting <code>/etc/mtab</code> manually would break pacman.<span id="more-346"></span></p>
<p>The reason for the conflict is that the file used to be generated at  boot and hence not owned by any package. Now it is a symlink to <code>/proc/self/mounts</code> owned by <code>filesystem</code>. This change means that <code>initscripts</code> no longer requires write access to the rootfs (though other packages might).</p>
<p>原文地址：<a href="http://www.archlinux.org/news/filesystem-upgrade-manual-intervention-required/">http://www.archlinux.org/news/filesystem-upgrade-manual-intervention-required/</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2012/01/news-filesystem-upgrade-manual-intervention-requiredzz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>aptitude update &#8211; Error: Connection failed [IP: 127.0.0.1 8080]</title>
		<link>http://wyj.zhuwo.info/2011/10/aptitude-update-error-connection-failed-ip-127-0-0-1-8080/</link>
		<comments>http://wyj.zhuwo.info/2011/10/aptitude-update-error-connection-failed-ip-127-0-0-1-8080/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 03:46:31 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=343</guid>
		<description><![CDATA[最近ubuntu一直无法更新，开始也没注意，过去很久了一直不能更新。今天抽空看了一下，原来是proxy的问题。 错误提示是：Connection failed [IP: 127.0.0.1 8080] 解决办法是： 将/etc/apt/apt.conf文件里面有关代理的设置删掉。 OK。]]></description>
			<content:encoded><![CDATA[<p>最近ubuntu一直无法更新，开始也没注意，过去很久了一直不能更新。今天抽空看了一下，原来是proxy的问题。</p>
<p>错误提示是：Connection failed [IP: 127.0.0.1 8080]</p>
<p>解决办法是：</p>
<p>将/etc/apt/apt.conf文件里面有关代理的设置删掉。</p>
<p>OK。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/10/aptitude-update-error-connection-failed-ip-127-0-0-1-8080/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to get Serial Number, Mac, or ANDROID ID of an Android Device(ZZ)</title>
		<link>http://wyj.zhuwo.info/2011/08/how-to-get-serial-number-mac-or-android-id-of-an-android-devicezz/</link>
		<comments>http://wyj.zhuwo.info/2011/08/how-to-get-serial-number-mac-or-android-id-of-an-android-devicezz/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 08:42:00 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[技术为本]]></category>
		<category><![CDATA[文摘转贴]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=339</guid>
		<description><![CDATA[Hi, I think many of you thought which is best to retrieve from the Android Device, so that you can be sure the device will not trick you and the identifier you asked is unique and unchangeable. For example we &#8230; <a href="http://wyj.zhuwo.info/2011/08/how-to-get-serial-number-mac-or-android-id-of-an-android-devicezz/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Hi,<br />
I think many of you thought which is best to retrieve from the Android  Device, so that you can be sure the device will not trick you and the  identifier you asked is unique and unchangeable.<br />
For example we can get the IMEI code but users would became suspicious  because you will need to set a permission to use this, and beside this  IMEI have only phones, not tablets.<br />
You may choose to retrive ANDROID_ID with the following code:<span id="more-339"></span></p>
<div>
<div>
<pre>String deviceId = Settings.System.getString(getContentResolver(),
                                Settings.System.ANDROID_ID);</pre>
</div>
</div>
<p>But this is documented to be changeable at the factory reset and unpredictive changeable on rooted phones.<br />
Other option would be to get a Serial Number:</p>
<div>
<div>
<pre>TelephonyManager manager= (TelephonyManager)myActivity.getSystemService(Context.TELEPHONY_SERVICE);
String serial= manager.getDeviceId();</pre>
</div>
</div>
<p>This will need permission: android.permission.READ_PHONE_STATE</p>
<p>getDeviceID() will return the MDN or MEID of the device depending on which radio the phone uses (GSM or CDMA).</p>
<p>As you already guess this option have the same disadvantage(DON’ T WORK FOR TABLETS ).<br />
We have one last solution and maybe it’ s the best, since over 95% of Android Powered Devices have a wireless card.<br />
So we will retrieve the MAC address:</p>
<div>
<div>
<pre>WifiManager wimanager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
String address= wimanager.getConnectionInfo().getMacAddress();</pre>
</div>
</div>
<p>This will need permission: android.permission.ACCESS_WIFI_STATE<br />
WiFi MAC address can be easily faked  on rooted phones, so we have another unique serial number on Bluetooth.<br />
Code for retrieving Bluetooth unique identifier:</p>
<div>
<div>
<pre>BluetoothAdapter btAdapt= null;
    	btAdapt = BluetoothAdapter.getDefaultAdapter();
    	String address= btAdapt.getAddress();</pre>
</div>
</div>
<p>This code will need permission: android.permission.BLUETOOTH</p>
<p>转自：<a href="http://androidgenuine.com/?tag=get-mac-address-android">http://androidgenuine.com/?tag=get-mac-address-android</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/08/how-to-get-serial-number-mac-or-android-id-of-an-android-devicezz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>关于waitForCondition导致死锁的问题(zz)</title>
		<link>http://wyj.zhuwo.info/2011/08/%e5%85%b3%e4%ba%8ewaitforcondition%e5%af%bc%e8%87%b4%e6%ad%bb%e9%94%81%e7%9a%84%e9%97%ae%e9%a2%98zz/</link>
		<comments>http://wyj.zhuwo.info/2011/08/%e5%85%b3%e4%ba%8ewaitforcondition%e5%af%bc%e8%87%b4%e6%ad%bb%e9%94%81%e7%9a%84%e9%97%ae%e9%a2%98zz/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 07:26:37 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[技术为本]]></category>
		<category><![CDATA[文摘转贴]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=336</guid>
		<description><![CDATA[waitForCondition 基本都出现在继承了类 GLSurfaceView 的情况下 , 出现死锁的位置一般是引用 egl.eglCreateWindowSurface(&#8230;) 或者 mEgl.eglSwapBuffers(&#8230;) 这两个方法的时候 . 避免出现 waitForCondition 的方法总结 : 在绘制线程中必须先合法的获取Surface 才能开始绘制内容，在SurfaceHolder.Callback.surfaceCreated() 和SurfaceHolder.Callback.surfaceDestroyed() 之间的状态为合法的，另外在Surface 类型为 SURFACE_TYPE_PUSH_BUFFERS 时候是不合法的. 由于绘制是由绘制线程处理的，所以当主进程在调用surfaceCreated ，surfaceDestroyed ，onPause ，onResume ，onWindowFocusChanged ，onWindowResize ，requestExitAndWait ，queueEvent ，getEvent 时，都会访问绘制线程，所以这些方法需要使用同步关键字synchronized 锁定绘制线程, 主线程必需要等待绘制线程执行完相应的方法后，再 继续执行。 尽量将与 buffer 有关的操作放在 synchronized 同步块内 , &#8230; <a href="http://wyj.zhuwo.info/2011/08/%e5%85%b3%e4%ba%8ewaitforcondition%e5%af%bc%e8%87%b4%e6%ad%bb%e9%94%81%e7%9a%84%e9%97%ae%e9%a2%98zz/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p lang="zh-CN">waitForCondition    基本都出现在继承了类  GLSurfaceView    的情况下  ,     出现死锁的位置一般是引用  egl.eglCreateWindowSurface(&#8230;)     或者   mEgl.eglSwapBuffers(&#8230;)     这两个方法的时候  .</p>
<p><strong>避免出现</strong> <strong>waitForCondition</strong> <strong>的方法总结</strong> <strong>:</strong></p>
<ol>
<li>在绘制线程中必须先合法的获取Surface  才能开始绘制内容，在SurfaceHolder.Callback.surfaceCreated() 	  和SurfaceHolder.Callback.surfaceDestroyed()  之间的状态为合法的，另外在Surface  类型为 	SURFACE_TYPE_PUSH_BUFFERS  时候是不合法的.<span id="more-336"></span></li>
<li>由于绘制是由绘制线程处理的，所以当主进程在调用surfaceCreated  ，surfaceDestroyed  ，onPause  ，onResume  ，onWindowFocusChanged  ，onWindowResize  ，requestExitAndWait  ，queueEvent  ，getEvent  时，都会访问绘制线程，所以这些方法需要使用同步关键字synchronized  锁定绘制线程,  主线程必需要等待绘制线程执行完相应的方法后，再  继续执行。</li>
<li>尽量将与  buffer  有关的操作放在  synchronized 同步块内 , 比如刷新缓冲区的操作glFinish()和   glSwapBuffer() 	.</li>
</ol>
<p>注  : <em>SURFACE_TYPE_PUSH_BUFFERS</em> ：表明该Surface  不包含原生数据，Surface  用到的数据由其他对象提供，在 Camera  图像预览中就使用该类型的Surface  ，有Camera  负责提供给预览Surface  数据，这样图像预览会比较流畅。如果设置这种类型则就 不能调用lockCanvas  来获取Canvas  对象了。</p>
<p lang="zh-CN"><strong>出现</strong> <strong>waitForCondition</strong> <strong>后可尝试的调试方法:</strong></p>
<p lang="zh-CN"><strong>如果问题是可复现的:</strong></p>
<ol>
<li>查看是否在  surfaceCreated()  和  surfaceDestroyed()  方法之外对  surface  进行了绘制及  lockCanvas  等操作  . 	  查看是否在  surfaceCreate()  方法成功创建  surface  之前就开始了绘制工作  .</li>
<li>重点检查窗口改变状态时的代码  , 	  比如窗口大小改变  , 	  由横屏变竖屏等情况  , 	  此时对某一帧的渲染可能与窗口的销毁  /  重建同时进行  , 	  从而导致  waitForCondition. 	  用  synchronized  关键字对  Surface  等资源进行同步  .</li>
<li>注意  GLSurfaceView  中的  onPause()  方法  . 	  在执行  pause  动作时确保绘制线程已经停止绘制  ,可使用线程类的join()方法.</li>
</ol>
<p lang="zh-CN"><strong>如果问题是无规律随机出现的(一般很难彻底解决)</strong> <strong>:</strong></p>
<ol>
<li>注意主线程和绘制线程的同步. 	  使绘制线程最大限度的  做到线程安全. 	  尽量  对onDrawFrame    () 	  方法中接触到的变量加锁同步  .</li>
<li>尝试  在绘制结束后及时刷新帧缓冲区, 	  强制buffer  内的内容刷新至屏幕, 	  即强制SharedBufferClient/SharedBufferServer      做到同步  . 	   在onDrawFrame()   方法中  , 	  绘制结束时可尝试  利用glFinish() 	, glWaitGL()  或 glSwapBuffer() 	  等  刷新缓冲区. 	  这样做会降低帧率, 	  使性能下降.使用这种方法也有可能使问题更加恶化&#8230;</li>
</ol>
<p>转自：<a href="http://blog.csdn.net/liuxu0703/article/details/6128842">http://blog.csdn.net/liuxu0703/article/details/6128842</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/08/%e5%85%b3%e4%ba%8ewaitforcondition%e5%af%bc%e8%87%b4%e6%ad%bb%e9%94%81%e7%9a%84%e9%97%ae%e9%a2%98zz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MD5 算法 (The MD5 Message-Digest Algorithm)</title>
		<link>http://wyj.zhuwo.info/2011/06/the-md5-message-digest-algorithm/</link>
		<comments>http://wyj.zhuwo.info/2011/06/the-md5-message-digest-algorithm/#comments</comments>
		<pubDate>Thu, 09 Jun 2011 03:13:44 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[C&C++]]></category>
		<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=333</guid>
		<description><![CDATA[MD5即Message-Digest Algorithm 5（信息-摘要算法 5），用于确保信息传输完整一致。是计算机广泛使用的雜湊算法之一（又译摘要算法、哈希算法），主流编程语言普遍已有MD5实现。 在维基百科上有详细介绍，在各种语言上也都已有相应实现。 http://www.ietf.org/rfc/rfc1321.txt 上给出了算法介绍和C语言的实现。 我们在使用过程中发现一个问题，就是计算出来的MD5值有误。 经过调查，并非算法有问题，而是因为机器是64位系统导致的，在32位系统上就没问题。 为了通用性，只要把md5.h中的41行，修改一下就可以了。 typedef unsigned int UINT4;]]></description>
			<content:encoded><![CDATA[<p><strong>MD5</strong>即Message-Digest Algorithm 5（信息-摘要<a title="算法" href="http://zh.wikipedia.org/wiki/%E7%AE%97%E6%B3%95">算法</a> 5），用于确保信息传输完整一致。是计算机广泛使用的雜湊算法之一（又译<strong><a title="摘要算法" href="http://zh.wikipedia.org/w/index.php?title=%E6%91%98%E8%A6%81%E7%AE%97%E6%B3%95&amp;action=edit&amp;redlink=1">摘要算法</a></strong>、哈希算法），主流编程语言普遍已有MD5实现。</p>
<p>在维基百科上有详细介绍，在各种语言上也都已有相应实现。<br />
<a href="http://www.ietf.org/rfc/rfc1321.txt">http://www.ietf.org/rfc/rfc1321.txt</a> 上给出了算法介绍和C语言的实现。<br />
我们在使用过程中发现一个问题，就是计算出来的MD5值有误。<br />
经过调查，并非算法有问题，而是因为机器是64位系统导致的，在32位系统上就没问题。<br />
为了通用性，只要把md5.h中的41行，修改一下就可以了。<br />
typedef unsigned int UINT4;</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/06/the-md5-message-digest-algorithm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>一个简单的 makefile 模板</title>
		<link>http://wyj.zhuwo.info/2011/05/a-simple-makefile-template/</link>
		<comments>http://wyj.zhuwo.info/2011/05/a-simple-makefile-template/#comments</comments>
		<pubDate>Mon, 23 May 2011 09:03:27 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[C&C++]]></category>
		<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=330</guid>
		<description><![CDATA[一个简单的 makefile 模板， CC = gcc CFLAGS+=-c -Wall -I[include_path] LDFLAGS+= -lm SOURCES= \ main.c \ OBJECTS=$(SOURCES:.c=.o) EXECUTABLE=test all: $(SOURCES) $(EXECUTABLE) $(EXECUTABLE): $(OBJECTS) $(CC) $(LDFLAGS) $(OBJECTS) -o $@ .c.o: $(CC) $(CFLAGS) $&#60; -o $@ .PHONY: clean clean: rm -f $(EXECUTABLE) $(OBJECTS)]]></description>
			<content:encoded><![CDATA[<p>一个简单的 makefile 模板，</p>
<pre>CC = gcc

CFLAGS+=-c -Wall -I[include_path]
LDFLAGS+= -lm

SOURCES= \
		 main.c \

OBJECTS=$(SOURCES:.c=.o)

EXECUTABLE=test

all: $(SOURCES) $(EXECUTABLE) 

$(EXECUTABLE): $(OBJECTS)
	$(CC) $(LDFLAGS) $(OBJECTS) -o $@

.c.o:
	$(CC) $(CFLAGS) $&lt; -o $@

.PHONY: clean
clean:
	rm -f $(EXECUTABLE) $(OBJECTS)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/05/a-simple-makefile-template/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Undefined reference to &#8216;pow()&#8217; using  (ZZ)</title>
		<link>http://wyj.zhuwo.info/2011/05/undefined-reference-to-pow-using-zz/</link>
		<comments>http://wyj.zhuwo.info/2011/05/undefined-reference-to-pow-using-zz/#comments</comments>
		<pubDate>Mon, 23 May 2011 08:59:03 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[C&C++]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=328</guid>
		<description><![CDATA[加上 flag -lm 即可。]]></description>
			<content:encoded><![CDATA[<p>加上 flag -lm 即可。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/05/undefined-reference-to-pow-using-zz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extra Keyboard Keys</title>
		<link>http://wyj.zhuwo.info/2011/05/extra-keyboard-keys/</link>
		<comments>http://wyj.zhuwo.info/2011/05/extra-keyboard-keys/#comments</comments>
		<pubDate>Tue, 17 May 2011 03:04:35 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=325</guid>
		<description><![CDATA[简介 许多键盘都有一些&#8221;特殊按键&#8221;(也叫热键)，用于执行某个应用程序或者输入那些不被包含在标准键盘映射表中的特殊字符。由于没有相应的规格标准，内核无法知道如何处处理它们，这也是为什么我们需要(手工的)将这些按键映射到特定的动作。我们有两种方法来实现： 通用的做法，使用HAL和Xorg提供的工具 (最终被桌面环境工具利用到) 更快的方式，使用第三方程序在图形界面中完成所有配置 也许出乎你的想象，第一种方法更受亲睐，因为HAL和Xorg较之任何第三方程序都更加通用和普适。 如果你赶时间只想让按键工作，这里有2种情况： 你使用Gnome： 所有配置都可以在控制中心完成。 你使用KDE或其他不支持内核级别的额外按键侦测： 使用第三方程序，推荐keytouch。 Arch的方式 前言 开始之前，你需要学习一些(新)词汇&#8230; scancode是一个键的最小识别ID。如果一个键没有scancode值，我们无法做任何事，因为内核看不到它。 keycode是一个键的第二级识别ID，对应到一个函数。 symbol是一个键的第三级识别ID，Xorg通过该ID引用按键。 第一步： 映射scancode 如果你使用HAL那么你的大部分按键应该已经有keycode了。如果没有，请想着帮助社区扩充(按键)数据库。 诊断 使用showkey 通常来说，使用showkey程序可以知道你的按键是否拥有一个keycode。使用showkey程序后，你可以按下 一个按键来查看屏幕上的输出，如果什么都不做，程序将在10秒后退出，这也是退出showkey程序的唯一方法。你需要在一个真正的控制台下执行 showkey程序，就是说你得切出图形界面，用ctrl+alt+F1组合键就能回到命令行的界面了。 $ showkey 尝试按下你的按键。如果有keycode输出则说明这个键是被映射了的。如果没有，啊，真是一个悲剧。这说明内核认不出这个键或者是这个按键还没被映射。 Using xev Another way to get the keycodes of your keys is &#8230; <a href="http://wyj.zhuwo.info/2011/05/extra-keyboard-keys/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h1>简介</h1>
<p>许多键盘都有一些&#8221;特殊按键&#8221;(也叫热键)，用于执行某个应用程序或者输入那些不被包含在标准键盘映射表中的特殊字符。由于没有相应的规格标准，内核无法知道如何处处理它们，这也是为什么我们需要(手工的)将这些按键映射到特定的动作。我们有两种方法来实现：</p>
<ul>
<li>通用的做法，使用<a title="HAL" href="https://wiki.archlinux.org/index.php/HAL">HAL</a>和<a title="Xorg" href="https://wiki.archlinux.org/index.php/Xorg">Xorg</a>提供的工具 (最终被桌面环境工具利用到)</li>
<li>更快的方式，使用第三方程序在图形界面中完成所有配置</li>
</ul>
<p>也许出乎你的想象，第一种方法更受亲睐，因为<a title="HAL" href="https://wiki.archlinux.org/index.php/HAL">HAL</a>和<a title="Xorg" href="https://wiki.archlinux.org/index.php/Xorg">Xorg</a>较之任何第三方程序都更加通用和普适。<span id="more-325"></span></p>
<p><strong>如果你赶时间</strong>只想让按键工作，这里有2种情况：</p>
<ul>
<li>你使用Gnome：</li>
</ul>
<p>所有配置都可以在控制中心完成。</p>
<ul>
<li>你使用KDE或其他不支持内核级别的额外按键侦测：</li>
</ul>
<p>使用第三方程序，推荐<a title="Keytouch" href="https://wiki.archlinux.org/index.php/Keytouch">keytouch</a>。</p>
<h1>Arch的方式</h1>
<h2>前言</h2>
<p>开始之前，你需要学习一些(新)词汇&#8230;</p>
<p><strong>scancode</strong>是一个键的最小识别ID。如果一个键没有scancode值，我们无法做任何事，因为内核看不到它。</p>
<p><strong>keycode</strong>是一个键的第二级识别ID，对应到一个函数。</p>
<p><strong>symbol</strong>是一个键的第三级识别ID，Xorg通过该ID引用按键。</p>
<h2>第一步： 映射scancode</h2>
<p>如果你使用<a title="HAL" href="https://wiki.archlinux.org/index.php/HAL">HAL</a>那么你的大部分按键应该已经有keycode了。如果没有，请想着帮助社区扩充(按键)数据库。</p>
<h3>诊断</h3>
<h4>使用showkey</h4>
<p>通常来说，使用<code>showkey</code>程序可以知道你的按键是否拥有一个keycode。使用showkey程序后，你可以按下 一个按键来查看屏幕上的输出，如果什么都不做，程序将在10秒后退出，这也是退出showkey程序的唯一方法。你需要在一个真正的控制台下执行 showkey程序，就是说你得切出图形界面，用ctrl+alt+F1组合键就能回到命令行的界面了。</p>
<pre> $ showkey
</pre>
<p>尝试按下你的按键。如果有keycode输出则说明这个键是被映射了的。如果没有，啊，真是一个悲剧。这说明内核认不出这个键或者是这个按键还没被映射。</p>
<h4>Using xev</h4>
<p>Another way to get the keycodes of your keys is to use the graphical X  program &#8220;xev&#8221; (without having to switch to a console environment). With  the following line you can start xev and directly grep the important  parts:</p>
<pre>$ xev | grep -A2 --line-buffered '^KeyRelease' | sed -n '/keycode /s/^.*keycode \([0-9]*\).* (.*, \(.*\)).*$/\1 \2/p'
</pre>
<p>In the example below I pressed the &#8220;a&#8221;, &#8220;r&#8221;, &#8220;c&#8221; and &#8220;h&#8221; keys and two  of the media keys on my Dell keyboard. This gives me the following  output:</p>
<pre>38 a
27 r
54 c
43 h
153 NoSymbol
144 NoSymbol
</pre>
<p>This means that the &#8220;a&#8221;, &#8220;r&#8221;, &#8220;c&#8221; and &#8220;h&#8221; keys have the keycodes 38,  27, 54 and 43 and are properly bound while the media keys with the  keycodes 153 and 144 have no function yet, which is indicated by  &#8220;NoSymbol&#8221;. If you press a key and nothing appears in the terminal, this  means that the kernel doesn&#8217;t see that key or that it is not mapped.</p>
<h4>2.6 kernels</h4>
<p>According to the keymap man page:</p>
<div><strong> Note: </strong>In   2.6  kernels  raw  mode, or scancode mode, is not very raw at all.   Scan codes are first translated to key codes, and when scancodes are  desired the key codes are translated  back. Various transformations are  involved, and there is no guarantee at all that the final result  corresponds to what the keyboard hardware did send.</div>
<p>This is relevant if the keymaps obtained from showkey and the ones set by <a title="Setkeycodes" href="https://wiki.archlinux.org/index.php/Setkeycodes">setkeycodes</a> differ from the ones obtained by xev in X. Keep this in mind when translating the keymaps into keysyms using xmodmap (See <a title="Extra Keyboard Keys in Xorg" href="https://wiki.archlinux.org/index.php/Extra_Keyboard_Keys_in_Xorg">Extra Keyboard Keys in Xorg</a>).</p>
<h4>Conclusion</h4>
<p>If all your keys have a keycode you can go directly to the second step.</p>
<p>If not keep reading below:</p>
<h3>Know if a key has a scancode</h3>
<p>If a key doesn&#8217;t have a keycode you can know if it has a scancode by looking at the kernel log using the dmesg command:</p>
<pre>$ dmesg|tail -5
</pre>
<p>If when you press the key something like that appears:</p>
<pre>atkbd.c: Unknown key pressed (translated set 2, code 0xf1 on isa0060/serio0).
atkbd.c: Use 'setkeycodes e071 &lt;keycode&gt;' to make it known.
</pre>
<p>then your key has a scancode which can be mapped to a keycode. See <a title="Map scancodes to keycodes" href="https://wiki.archlinux.org/index.php/Map_scancodes_to_keycodes">Map scancodes to keycodes</a>.</p>
<p>If nothing new appears in dmesg then your key doesn&#8217;t have a  scancode which means that it is not recognized by the kernel so it  cannot be used.</p>
<h3>Map scancodes to keycodes</h3>
<p><em>See the detailed article: <a title="Map scancodes to keycodes" href="https://wiki.archlinux.org/index.php/Map_scancodes_to_keycodes">Map scancodes to keycodes</a>.</em></p>
<h2>Step 2: Map keycodes</h2>
<h3>In Console</h3>
<p>When we are in console, we can use our hotkeys to print a certain  character. Moreover we can also print a sequence of characters and some  escape sequences. Thus, if we print the sequence of characters  constituting a command and afterwards an escape character for a new  line, that command will be executed!</p>
<p><em>See the detailed article: <a title="Extra Keyboard Keys in Console" href="https://wiki.archlinux.org/index.php/Extra_Keyboard_Keys_in_Console">Extra Keyboard Keys in Console</a>.</em></p>
<h3>In Xorg</h3>
<p>When we are in a graphical environment we may want a key to print a  special character or execute a command. There are many ways of doing  that and they are covered in a dedicated article: <a title="Extra Keyboard Keys in Xorg" href="https://wiki.archlinux.org/index.php/Extra_Keyboard_Keys_in_Xorg">Extra Keyboard Keys in Xorg</a>.</p>
<h1>The quick way</h1>
<h2>In Gnome</h2>
<p>If you use Gnome everything can be done from the Control Center.  However if you decide to change for another Desktop Environment you&#8217;ll  have to re-configure your keys.</p>
<h2>In Xmonad</h2>
<p>If you use Xmonad as a stand alone window manager, you can edit the  xmonad.hs to add unbinded keyboard keys. You just need to find the Xf86  name of the key (such as XF86PowerDown) and look it up in  /usr/include/X11/XF86keysym.h it will give you a keycode like  0x1008FF2A. than using that keycode you can just add a line like the  following in the keybindings section of your xmonad.hs</p>
<pre>((0,               0x1008FF2A), spawn "sudo pm-suspend")
</pre>
<h2>In other desktops environments</h2>
<p>In desktop environments that can&#8217;t read scancodes and/or keycodes you can use one of the following third-party softwares:</p>
<h3>keytouch</h3>
<p>KeyTouch is a program which allows you to easily configure the extra  function keys of your keyboard. This means that you can define, for  every individual function key, what to do if it is pressed.</p>
<p><em>See the detailed article: <a title="Keytouch" href="https://wiki.archlinux.org/index.php/Keytouch">keytouch</a>.</em></p>
<h3>lineak</h3>
<div><strong> Note: </strong>Lineak is not really an active project. If you really want to use a third-party program you are encouraged to use <a title="Keytouch" href="https://wiki.archlinux.org/index.php/Keytouch">keytouch</a> instead.</div>
<p>Lineak is a utility designed to enable the use and configuration of internet, easy access and multimedia keys.</p>
<h1>Laptops</h1>
<h2>Asus M series</h2>
<p>I think it&#8217;ll be work in another series with Asus product of laptops.  How to make work multimedia keys on Arch? And disable light sensor?  It&#8217;s very simple, login as root, edit:</p>
<pre>$ /etc/rc.local
</pre>
<p>add only one line:</p>
<pre>$ echo 0 &gt; /sys/devices/platform/asus-laptop/ls_switch
</pre>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/05/extra-keyboard-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Keyboard scancode and keycode</title>
		<link>http://wyj.zhuwo.info/2011/05/keyboard-scancode-and-keycode/</link>
		<comments>http://wyj.zhuwo.info/2011/05/keyboard-scancode-and-keycode/#comments</comments>
		<pubDate>Mon, 16 May 2011 09:13:52 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=323</guid>
		<description><![CDATA[列举几个有关scancode和keycode的资源，备用，还没有仔细研究。 http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html https://bbs.archlinux.org/viewtopic.php?id=43662 http://www.comptechdoc.org/os/linux/howlinuxworks/linux_hlkeycodes.html]]></description>
			<content:encoded><![CDATA[<p>列举几个有关scancode和keycode的资源，备用，还没有仔细研究。</p>
<p>http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html</p>
<p>https://bbs.archlinux.org/viewtopic.php?id=43662</p>
<p>http://www.comptechdoc.org/os/linux/howlinuxworks/linux_hlkeycodes.html</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/05/keyboard-scancode-and-keycode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>merge Android 的 kernel 代码 by Git-Rebase</title>
		<link>http://wyj.zhuwo.info/2011/04/merge-android-kernel-by-git-rebase%e3%80%82/</link>
		<comments>http://wyj.zhuwo.info/2011/04/merge-android-kernel-by-git-rebase%e3%80%82/#comments</comments>
		<pubDate>Sat, 23 Apr 2011 09:32:36 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Git]]></category>
		<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>
		<category><![CDATA[配置管理]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=320</guid>
		<description><![CDATA[為了玩 Android，學會了 git 的初步使用。不過僅止於基本的 git checkout、git log、git diff、git status、git commit 等。 這幾天為了協助同事將 Android 移植到廠商的板子上，必須將廠商提供的 kernel 與 Android kernel 做結合。為此請教一些 git 高手。經過一番練習，總算對 git rebase 的使用有了初步的掌握。也漸漸了解了 git 的強大威力，為什麼高手都愛用… 特別將這段經驗記載在這邊，給有興趣的人參考。 有兩個 git repositories 要做合併。一個是廠商提供的 kernel： git://git.kernel.org/pub/scm/linux/kernel/git/kki_ap/samsung-ap-2.6.git 另一個是 Android 的 kernel： git://android.git.kernel.org/kernel/common.git 首先，先建立一個工作目錄 $ mkdir &#8230; <a href="http://wyj.zhuwo.info/2011/04/merge-android-kernel-by-git-rebase%e3%80%82/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>為了玩 Android，學會了 <a href="http://www.git-scm.org/">git</a> 的初步使用。不過僅止於基本的 git checkout、git log、git diff、git status、git commit 等。</p>
<p>這幾天為了協助同事將 Android 移植到廠商的板子上，必須將廠商提供的 kernel 與 Android kernel 做結合。為此請教一些 git 高手。經過一番練習，總算對 git rebase 的使用有了初步的掌握。也漸漸了解了 git 的強大威力，為什麼高手都愛用… 特別將這段經驗記載在這邊，給有興趣的人參考。<span id="more-320"></span></p>
<p>有兩個 git repositories 要做合併。一個是廠商提供的 kernel：</p>
<blockquote><p>git://git.kernel.org/pub/scm/linux/kernel/git/kki_ap/samsung-ap-2.6.git</p></blockquote>
<p>另一個是 Android 的 kernel：</p>
<blockquote><p>git://android.git.kernel.org/kernel/common.git</p></blockquote>
<p>首先，先建立一個工作目錄</p>
<table>
<tbody>
<tr>
<td>
<pre>$ mkdir kernel-git
$ cd kernel-git
$ git init
Initialized empty Git repository in /home/cwhuang/git/kernel-git/.git/
</pre>
</td>
</tr>
</tbody>
</table>
<p>然後加入兩個遠端的 repositories：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git remote add samsung git://git.kernel.org/pub/scm/linux/kernel/git/kki_ap/samsung-ap-2.6.git
$ git remote add android git://android.git.kernel.org/kernel/common.git
</pre>
</td>
</tr>
</tbody>
</table>
<p>將遠端 repositories 的資料取回：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git fetch samsung
remote: Counting objects: 11677, done.
remote: Compressing objects: 100% (2462/2462), done.
remote: Total 10383 (delta 7976), reused 10138 (delta 7743)
Receiving objects: 100% (10383/10383), 5.04 MiB, done.
Resolving deltas: 100% (7976/7976), completed with 324 local objects.
From git://git.kernel.org/pub/scm/linux/kernel/git/kki_ap/samsung-ap-2.6.git
 * [new branch]      master     -&gt; samsung/master
 * [new tag]         v2.6.28.6-samsung-v1 -&gt; v2.6.28.6-samsung-v1
From git://git.kernel.org/pub/scm/linux/kernel/git/kki_ap/samsung-ap-2.6.git
 * [new tag]         v2.6.28-rc4-s3c64xx -&gt; v2.6.28-rc4-s3c64xx
 * [new tag]         v2.6.28-rc4-s5pc1xx -&gt; v2.6.28-rc4-s5pc1xx
 * [new tag]         v2.6.28-rc5-s3c64xx -&gt; v2.6.28-rc5-s3c64xx
 * [new tag]         v2.6.28-rc5-s5pc1xx -&gt; v2.6.28-rc5-s5pc1xx
 * [new tag]         v2.6.28-rc6-s3c64xx -&gt; v2.6.28-rc6-s3c64xx
 * [new tag]         v2.6.28-rc6-s5pc1xx -&gt; v2.6.28-rc6-s5pc1xx
 * [new tag]         v2.6.28-rc7-s3c64xx -&gt; v2.6.28-rc7-s3c64xx
 * [new tag]         v2.6.28-rc7-s5pc1xx -&gt; v2.6.28-rc7-s5pc1xx
 * [new tag]         v2.6.28-rc8-s3c64xx -&gt; v2.6.28-rc8-s3c64xx
 * [new tag]         v2.6.28-rc8-s5pc1xx -&gt; v2.6.28-rc8-s5pc1xx
 * [new tag]         v2.6.28-rc8-s5pc1xx-v1 -&gt; v2.6.28-rc8-s5pc1xx-v1
 * [new tag]         v2.6.28.6-samsung -&gt; v2.6.28.6-samsung

$ git fetch android
remote: Counting objects: 1077412, done.
remote: Compressing objects: 100% (176782/176782), done.
Receiving objects: 100% (1077412/1077412), 263.30 MiB | 28369 KiB/s, done.
remote: Total 1077412 (delta 896526), reused 1076403 (delta 895639)
Resolving deltas: 100% (896526/896526), done.
From git://android.git.kernel.org/kernel/common.git
 * [new branch]      2.6.27     -&gt; android/2.6.27
 * [new branch]      2.6.29     -&gt; android/2.6.29
From git://android.git.kernel.org/kernel/common.git
 * [new tag]         v2.6.12    -&gt; v2.6.12
 * [new tag]         v2.6.12-rc2 -&gt; v2.6.12-rc2
(skipped...)
 * [new tag]         v2.6.29-rc8 -&gt; v2.6.29-rc8
</pre>
</td>
</tr>
</tbody>
</table>
<p>看看有哪些 branches?</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git branch -a
  android/2.6.27
  android/2.6.29
  samsung/master
</pre>
</td>
</tr>
</tbody>
</table>
<p>在合併之前，先了解一下已存在的 branches。我們可以先看看這些 branches 的共同祖先(common ancestor)：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git merge-base samsung/master android/2.6.27
3fa8749e584b55f1180411ab1b51117190bac1e5

$ git show 3fa8749e584b55f1180411ab1b51117190bac1e5
commit 3fa8749e584b55f1180411ab1b51117190bac1e5
Author: Linus Torvalds
Date:   Thu Oct 9 15:13:53 2008 -0700

    Linux 2.6.27

diff --git a/Makefile b/Makefile
index ce9eceb..16e3fbb 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 6
 SUBLEVEL = 27
-EXTRAVERSION = -rc9
+EXTRAVERSION =
 NAME = Rotary Wombat

 # *DOCUMENTATION*

$ git merge-base samsung/master android/2.6.29
4a6908a3a050aacc9c3a2f36b276b46c0629ad91

$ git show 4a6908a3a050aacc9c3a2f36b276b46c0629ad91
commit 4a6908a3a050aacc9c3a2f36b276b46c0629ad91
Author: Linus Torvalds
Date:   Wed Dec 24 15:26:37 2008 -0800

    Linux 2.6.28

    Happy holidays..

diff --git a/Makefile b/Makefile
index 4c8d797..71e98e9 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 VERSION = 2
 PATCHLEVEL = 6
 SUBLEVEL = 28
-EXTRAVERSION = -rc9
+EXTRAVERSION =
 NAME = Erotic Pickled Herring

 # *DOCUMENTATION*
</pre>
</td>
</tr>
</tbody>
</table>
<p>因此 branch samsung/master 和 android/2.6.27 都是從 v2.6.27 來的，而 samsung/master 和 android/2.6.29 則從 v2.6.28 而來。事實上，不難驗證 samsung/master 是從 v2.6.28.6 改來的。</p>
<p>可以用 gitk 這個圖形化工具來看看從 v2.6.27 到 android/2.6.27 的變化：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ gitk v2.6.27..android/2.6.27
</pre>
</td>
</tr>
</tbody>
</table>
<p>同樣的，samsung/master 的變化是：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ gitk v2.6.28..samsung/master
</pre>
</td>
</tr>
</tbody>
</table>
<p>我們要決定如何進行合併。可以將 samsung 的修改合併到 Android kernel，也可以將 Android 的修改合併到 samsung kernel。我決定選擇後者，因為從 gitk 可以看出 Android 的變化相當簡單而清楚，就是單線發展而已。相對的，samsung kernel 就併來併去，線條亂七八糟，看得眼花瞭亂。因此將 Android 的修改併到 samsung kernel，應該比較簡單而容易成功。</p>
<p>可以用 git rebase 來進行合併。首先，建立一個新的本地 branch 來保存合併結果：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git branch --track samsung-android samsung/master
</pre>
</td>
</tr>
</tbody>
</table>
<p>然後用 git rebase 指令，將 v2.6.27 到 android/2.6.27 的修改，一個一個的 apply 到 samsung-android 這個 branch 中：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git rebase --whitespace=fix --onto samsung-android v2.6.27 android/2.6.27
First, rewinding head to replay your work on top of it...
Applying: PM: Add wake lock api.
Applying: PM: Add early suspend api.
Applying: PM: Implement wakelock api.
Applying: PM: Implement early suspend api
Applying: PM: Enable early suspend through /sys/power/state
Applying: PM: Add user-space wake lock api.
Applying: PM: wakelock: Abort task freezing if a wake lock is held.
Applying: PM: earlysuspend: Add console switch when user requested sleep state changes.
Applying: PM: earlysuspend: Removing dependence on console.
Applying: rtc: Add android alarm driver.
Applying: rtc: Try to prevent RTC errors from accumulating.
Applying: ledtrig-sleep: Add led trigger for sleep debugging.
error: patch failed: drivers/leds/Makefile:29
error: drivers/leds/Makefile: patch does not apply
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
Auto-merged drivers/leds/Kconfig
Auto-merged drivers/leds/Makefile
Applying: PM: Wait for console in resume.
Applying: PM: Fix suspend_console/resume_console use only one semaphore.
Applying: switch: switch class and GPIO drivers.
Applying: lowmemorykiller: Initial support for 2.6.27
error: patch failed: drivers/misc/Kconfig:475
error: drivers/misc/Kconfig: patch does not apply
error: patch failed: drivers/misc/Makefile:30
error: drivers/misc/Makefile: patch does not apply
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
Auto-merged drivers/misc/Kconfig
CONFLICT (content): Merge conflict in drivers/misc/Kconfig
Auto-merged drivers/misc/Makefile
CONFLICT (content): Merge conflict in drivers/misc/Makefile
Failed to merge in the changes.
Patch failed at 0016.
</pre>
</td>
</tr>
</tbody>
</table>
<p>由這些訊息可看出，前 15 個修改被成功的 apply 上去，但第 16 個產生 conflicts。先用 git status 看看問題出在哪裡：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git status
drivers/misc/Kconfig: needs merge
drivers/misc/Makefile: needs merge
# Not currently on any branch.
# Changes to be committed:
#   (use "git reset HEAD ..." to unstage)
#
#	new file:   drivers/misc/lowmemorykiller.c
#
# Changed but not updated:
#   (use "git add ..." to update what will be committed)
#
#	unmerged:   drivers/misc/Kconfig
#	unmerged:   drivers/misc/Makefile
#
</pre>
</td>
</tr>
</tbody>
</table>
<p>可以看出有兩個檔案有 conflicts，必須手動修改。例如，在 drivers/misc/Makefile 裡 conflicts 大約在 35 至 39 行：</p>
<table>
<tbody>
<tr>
<td>
<pre>&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD:drivers/misc/Makefile
obj-$(CONFIG_C2PORT)            += c2port/
=======
obj-$(CONFIG_LOW_MEMORY_KILLER) += lowmemorykiller.o
&gt;&gt;&gt;&gt;&gt;&gt;&gt; lowmemorykiller: Initial support for 2.6.27:drivers/misc/Makefile
</pre>
</td>
</tr>
</tbody>
</table>
<p>不難看出，這兩行都要加到 Makefile 中。因此我改成：</p>
<table>
<tbody>
<tr>
<td>
<pre>obj-$(CONFIG_C2PORT)            += c2port/
obj-$(CONFIG_LOW_MEMORY_KILLER) += lowmemorykiller.o
</pre>
</td>
</tr>
</tbody>
</table>
<p>接著</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git add drivers/misc/Makefile
</pre>
</td>
</tr>
</tbody>
</table>
<p>用同樣的方法修改 drivers/misc/Kconfig，然後</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git rebase --continue
</pre>
</td>
</tr>
</tbody>
</table>
<p>如此會繼續合併的過程。當然可能產生其它的 conflicts，都用類似的方法修正，直到 rebase 完成。</p>
<p>如果覺得某個產生 conflicts 的修改是不必要的，可以跳過：</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git rebase --skip
</pre>
</td>
</tr>
</tbody>
</table>
<p>如果覺得 conflicts 太複雜了，不知要麼修改，想要放棄，可以</p>
<table>
<tbody>
<tr>
<td>
<pre>$ git rebase --abort
</pre>
</td>
</tr>
</tbody>
</table>
<p>如此會放棄所有的合併結果，而將 source tree 回到合併前的狀態。</p>
<p>原文链接：<a href="http://cwhuang.info/2009/06/an-experience-of-git-rebase">http://cwhuang.info/2009/06/an-experience-of-git-rebase</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/04/merge-android-kernel-by-git-rebase%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Git cherry-pick 和 rebase 的混合用法</title>
		<link>http://wyj.zhuwo.info/2011/04/git-cherry-pick-rebase/</link>
		<comments>http://wyj.zhuwo.info/2011/04/git-cherry-pick-rebase/#comments</comments>
		<pubDate>Sat, 23 Apr 2011 08:13:33 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>
		<category><![CDATA[配置管理]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=316</guid>
		<description><![CDATA[之前在 git 上遇過一個問題 A-B master \ C-D-E-F-G topic 問題是，我只想把 D,F 加到 master ，其他的留在 topic ，而且又不想把 history 搞得很亂，最好就變成這個樣子： A-B-D-F master \ C-E-G topic 有甚麼好的作法？ 原來答案相當簡單。 $ git checkout master $ git cherry-pick D $ git cherry-pick F $ git checkout topic &#8230; <a href="http://wyj.zhuwo.info/2011/04/git-cherry-pick-rebase/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>之前在 git 上遇過一個問題</p>
<pre>A-B  master
   \
    C-D-E-F-G topic
</pre>
<p>問題是，我只想把 D,F 加到 master ，其他的留在 topic ，而且又不想把 history 搞得很亂，<span id="more-316"></span>最好就變成這個樣子：</p>
<pre>A-B-D-F  master
       \
        C-E-G topic
</pre>
<p>有甚麼好的作法？</p>
<p>原來答案相當簡單。</p>
<pre>$ git checkout master
$ git cherry-pick D
$ git cherry-pick F
$ git checkout topic
$ git rebase master
</pre>
<p>就這樣。</p>
<p>原文链接：http://blog.luzi82.com/2010/08/git-cherry-pick-rebase.html</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/04/git-cherry-pick-rebase/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>git merge vs rebase vs cherry-pick (ZZ)</title>
		<link>http://wyj.zhuwo.info/2011/04/git-cherry-pick-merge-rebase/</link>
		<comments>http://wyj.zhuwo.info/2011/04/git-cherry-pick-merge-rebase/#comments</comments>
		<pubDate>Sat, 23 Apr 2011 04:50:42 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>
		<category><![CDATA[配置管理]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=313</guid>
		<description><![CDATA[git merge是用来合并两个分支的。 1 2 # 将b分支合并到当前分支 git merge b git cherry-pick可以选择某一个分支中的一个或几个commit(s)来进行操作。例如，假设我 们有个稳定版本的分支，叫v2.0，另外还有个开发版本的分支v3.0，我们不能直接把两个分支合并，这样会导致稳定版本混乱，但是又想增加一个v3.0 中的功能到v2.0中，这里就可以使用cherry-pick了。 1 2 3 4 5 6 7 8 9 # 先在v3.0中查看要合并的commit的commit id git log # 假设是 commit f79b0b1ffe445cab6e531260743fa4e08fb4048b # 切到v2.0中 git check v2.0 # 合并commit git cherry-pick &#8230; <a href="http://wyj.zhuwo.info/2011/04/git-cherry-pick-merge-rebase/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>git merge</strong>是用来合并两个分支的。</p>
<div>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<div>1<br />
2</div>
</td>
<td>
<div># 将b分支合并到当前分支<br />
git merge b</div>
</td>
</tr>
</tbody>
</table>
</div>
<p><strong><span id="more-313"></span>git cherry-pick</strong>可以选择某一个分支中的一个或几个commit(s)来进行操作。例如，假设我 们有个稳定版本的分支，叫v2.0，另外还有个开发版本的分支v3.0，我们不能直接把两个分支合并，这样会导致稳定版本混乱，但是又想增加一个v3.0 中的功能到v2.0中，这里就可以使用cherry-pick了。</p>
<div>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<div>1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9</div>
</td>
<td>
<div># 先在v3.0中查看要合并的commit的commit id<br />
git log<br />
# 假设是 commit f79b0b1ffe445cab6e531260743fa4e08fb4048b</p>
<p># 切到v2.0中<br />
git check v2.0</p>
<p># 合并commit<br />
git cherry-pick f79b0b1ffe445cab6e531260743fa4e08fb4048b</p>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<p><strong>git rebase</strong>有点类似git  merge，但是两者又有不同，打个比方，你有两个抽屉A和B，里面都装了衣服，现在想把B中的衣服放到A中，git  merge是那种横冲直撞型的，拿起B就倒入A里面，如果满了（冲突）再一并整理；而git  rebase就很持家了，它会一件一件的从B往A中加，会根据一开始放入的时间顺序的来加，如果满了你可以处理这一件，你可以继续加，或者跳过这一件，又 或者不加了，把A还原。所以merge适合那种比较琐碎的，简单的合并，系统级的合并还是用rebase吧。</p>
<p>专业的区别请移步到这里<a href="http://progit.org/book/zh/ch3-6.html">合并和衍合</a></p>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td>
<div>1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11</div>
</td>
<td>
<div># 合并b<br />
git rebase b</p>
<p># 处理完冲突继续合并<br />
git rebase &#8211;continue</p>
<p># 跳过<br />
git rebase &#8211;skip</p>
<p># 取消合并<br />
git rebase &#8211;abort</p>
</div>
</td>
</tr>
</tbody>
</table>
<p>转载自：<a title="http://zires.info/tag/git-cherry-pick/" href="http://zires.info/tag/git-cherry-pick/">http://zires.info/tag/git-cherry-pick/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/04/git-cherry-pick-merge-rebase/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>招行网银常见问题汇总(ZZ)</title>
		<link>http://wyj.zhuwo.info/2011/04/zhaohang-qa-zz/</link>
		<comments>http://wyj.zhuwo.info/2011/04/zhaohang-qa-zz/#comments</comments>
		<pubDate>Sun, 10 Apr 2011 14:26:58 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[五味人生]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=309</guid>
		<description><![CDATA[问题分类目录 1. 目录 2. 个人专业版问题集① 3. 个人专业版问题集② 4. 个人专业版问题集③ 5. 个人专业版问题集④ 6. 证书问题集① 7. 证书问题集② 8. 大众版问题集 9. 网上支付问题集① 10. 网上支付问题集② 11. 证券系统问题集 12. 外汇问题集 14. 掌上银行问题集 15. 企业银行问题集 16. 信用卡问题集 17. 财富账户问题集 19. 其他 个人专业版问题区① 1. 我在安装专业版时，出现错误提示“External Exception XXXXXXXX”，请问怎么处理？ &#8230; <a href="http://wyj.zhuwo.info/2011/04/zhaohang-qa-zz/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>问题分类目录<br />
1. 目录<br />
2. 个人专业版问题集①<br />
3. 个人专业版问题集②<br />
4. 个人专业版问题集③<br />
5. 个人专业版问题集④<br />
6. 证书问题集①<br />
7. 证书问题集②<br />
8. 大众版问题集<br />
9. 网上支付问题集①<br />
10. 网上支付问题集②<br />
11. 证券系统问题集<br />
12. 外汇问题集<br />
14. 掌上银行问题集<br />
15. 企业银行问题集<br />
16. 信用卡问题集<br />
17. 财富账户问题集<br />
19. 其他<span id="more-309"></span></p>
<p>个人专业版问题区①</p>
<p>1. 我在安装专业版时，出现错误提示“External Exception XXXXXXXX”，请问怎么处理？</p>
<p>A: X为6位的数字，出现这种错误提示的原因是专业版安装时取操作系统内的信息出错。<br />
您可以尝试做以下操作：<br />
（1） 请重启电脑后再安装一次。<br />
（2） 假如不行，请卸载专业版，重启电脑后再安装一次。<br />
（3） 假如还是不行，就可能是操作系统的问题，请尝试重装操作系统，然后再安装。</p>
<p>2. 我登录专业版时出现“调用DLL，register server”的错误，为什么？我应该怎么解决呢？</p>
<p>A: 这种情况是电脑操作系统的某些原因造成的。<br />
您可尝试采取以下步骤解决：<br />
（1） 先退出其它所有应用程序，再登录。<br />
（2） 如不行，请重启电脑，开机后尽量先不要使用其它程序，直接登录。<br />
（3） 如仍不行，请先卸载专业版，重启电脑后重新安装专业版程序，再登录。（假如您使用的是文件数字证书，在此操作前，请先确认该证书已做过证书备份，以便重装专业版后进行证书恢复。）<br />
（4） 假如还是不行，就可能是操作系统的问题，您可以尝试重装操作系统或换用另一台电脑再登录。</p>
<p>3. 在专业版软件中“一卡通交易查询”里点击“保存”账务信息时，提示“无法创造文件? 路径出错”，是什么错误造成？</p>
<p>A: 这个问题是由于电脑的操作系统或IE浏览器出现了错误造成的。<br />
建议您进入我行网站下载安装最新版本的专业版程序，在电脑桌面生成专业版登录图标，通过直接点击此图标来登录专业版，再进行操作。</p>
<p>4. 在登录专业版时提示“通讯故障＃12*5”，如何检查电脑设置?</p>
<p>A: 请先使用专业版“系统检测”，检测电脑的通讯情况，根据结果判定“通讯故障”的原因，根据不同情况您可采取以下几种方法进行设置：<br />
方法一：检查是否安装了SSL安全代理，假如安装了，就卸载该程序,请在浏览器里设置：<br />
工具-》internet选项-》连接-》局域网设置-》去掉代理服务器下面的勾；<br />
工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；<br />
工具-》internet选项-》高级-》点击“恢复默认设置”。　<br />
方法二：检查是否有“网页防火墙”（如：金山毒霸，瑞星等杀毒软件），如有，请暂时先关闭“网页防火墙”或者关闭“禁止打开网页上广告窗口”部分。<br />
方法三：请联系系统治理员，我们的通讯是HTTPS(SSL 3.0)协议，需要开放443号端口，请他们测试是否答应通过HTTPS。<br />
方法四：您可以使用拨号上网的接入方式试一下，一般的拨号接入都是支持HTTPS的。<br />
方法五：也有可能是电脑的问题，您可换一台试试。</p>
<p>5. 我在英文版和其它非简体中文版本的操作系统上使用专业版，都是乱码，怎么办呢？</p>
<p>A: 这种情况您可以采取以下步骤进行设置：<br />
（1） 请在IE浏览器里设置：工具-》internet选项-》常规-》语言-》添加中文（中国）或GB2312，并将中文（中国）上移至第一栏。<br />
（2） 再进入控制面板-》区域和语言选项-》区域选项-》标准和格式-》选择中文（中国）或GB2312，确认设置后，按照要求重新启用电脑，再使用专业版。</p>
<p>6. 我的电脑操作系统是WINDOWS Server 2003 ，使用专业版总是出现“通讯故障#12”，应该怎么解决？</p>
<p>A: 出现这种情况的原因一般是windows server 2003内置的Internet Explorer增强的安全配置：“Internet Explorer Enhanced Security”影响到专业版的通讯。<br />
您可以通过以下步骤暂时停用该功能：<br />
在控制面板－－添加/删除程序－－添加或删除Windows组件中卸载“Internet Explorer增强的安全配置”（Internet Explorer Enhanced Security）。</p>
<p>7. 我在使用专业版的“同城转账”功能时，为什么会看不到“确定”的按钮，怎么解决？</p>
<p>A: 请在电脑桌面进入“属性” （一般可点击鼠标右键进入），在“设置”里将分辨率改为800&#215;600，再进入“外观”将“字体大小”改为“正常”。<br />
假如电脑暂时无法改动，您可以在输完所有资料以后直接按键盘上的TAB键，再按enter键来确定。</p>
<p>8. 我在专业版上做支付功能申请时，最后提交完成后，错误提示“提交失败：[网上支付卡申请] 提交失败：FIS9999RPS0222 对不起，交易因故未完成，请联系客服中心。（5710909005）”，请问是什么地方出错！怎么办？</p>
<p>A: 这个代码是指您的证件号码不符，请检查证件号码填写是否正确，这里所填写的证件号码需与您开立一卡通时的证件号码相符，非凡要请您注重的是：假如证件号码中含有字母，字母一般要大写。</p>
<p>9. 我在操作个人银行专业版时提示“无效用户请求，请重新登录”是为什么呢？怎么办？</p>
<p>A: 此种情况有以下三种情况：<br />
（1） 登录后超过30分钟未使用专业版，为了您的安全使用，银行自动关闭了您的操作权限，请直接退出专业版然后再重新登录就可以了。<br />
（2） 假如总是出现该错误，则是您使用的局域网使用了“动态地址转换”技术，IP地址变换过快。请联系局域网的网络治理员，尽量固定IP地址通讯，或保证在20分钟以上IP地址不变。或者换一种上网方式，再进行操作。<br />
（3） 网关转换了路由路径，请联系网络治理员或ISP供给商。</p>
<p>10. 我在操作个人银行专业版时，系统提示“无效html请求#1，请重新登录”，是为什么？</p>
<p>A: 此种情况有以下四种情况：<br />
（1）通过浏览器发送的请求被篡改，可能是浏览器有问题。<br />
（2）登录后超过30分钟未使用专业版，为了您的安全使用，银行自动关闭了您的操作权限，请直接退出专业版然后再重新登录就可以了。<br />
（3）假如总是出现该错误，则是您使用的局域网使用了“动态地址转换”技术，IP地址变换过快。请联系网络治理员，尽量固定IP地址通讯，或保证20分钟以上IP地址不变，一般就可以了。或者换一种上网方式，再进行操作。<br />
（4）网关转换了路由路径，请联系网络治理员或ISP供给商。</p>
<p>11. 我在通过个人银行专业版进行银证保证金转活期的操作时为何总显示操作超时“CMBT13”？</p>
<p>A: 出现这种错误提示是表示我行后台服务器不能从券商服务器上取得用户信息。由于必须在券商服务器开机的时间内才能进行银证保证金转账，请直接联系该券商了解相关情况。</p>
<p>12. 我在操作专业版时输入一些数字，如：进行转帐、询价、我确实是按正常数字输入的，但系统错误提示出现“is not a valid floating point value”，是什么原因？怎么解决？</p>
<p>A: 这是电脑数字格式设置问题。您可按以下步骤做设置：<br />
（1） 控制面板-》区域和语言选项-》区域选项-》标准和格式-》选择中文（中国）或GB2312<br />
（2） 进入“自定义”，数字-》小数点里清除，重新输入一个小数点（最好用键盘右侧的小键盘输入）<br />
最后点“确定”，按要求重启电脑后再使用就可以了。</p>
<p>13. 我在作帐务操作时，专业版客户端报“系统正忙,请稍后再试#2”</p>
<p>A: 短时间网络通讯问题，请稍后操作。假如是转帐汇款等重要操作，请先查询转帐汇款记录，确保不会重复转帐汇款。</p>
<p>14. 我在作帐务操作时，专业版客户端报“系统正忙或通讯故障#7”</p>
<p>A: 短时间网络通讯问题，请稍后操作。假如是转帐汇款等重要操作，请先查询转帐汇款记录，确保不会重复转帐汇款。</p>
<p>15. 我能正常登录专业版，但系统检测时报系统故障?</p>
<p>A: 您所在的局域网服务器把某些服务如PING关闭造成的，但不会影响业务。可以正常使用。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>个人专业版问题区②</p>
<p>16. 为何我的专业版在Windows 2003下不能运行？</p>
<p>A: 您的Windows 2003中浏览器的缺省安全设置有问题<br />
请您打开“工具”-〉“Internet选项”，选择“安全”，然后在internet的区域安全级别设置为中，即可。</p>
<p>17. 我在安装专业版时，出现错误“External exception XXXXXXXX”</p>
<p>A: 原因是专业版取操作系统信息出错。<br />
需要您重新安装专业版。请重新启动电脑后再安装一次。<br />
假如还是不行，请您先卸载专业版后再安装一次。</p>
<p>18. 我今天用专业版转帐，转了21笔，其中有3笔没有转出去，提示“非法业务请求#1”。</p>
<p>A: 该问题是由于专业版在通讯过程中，由于意外断线或者局域网分配给电脑的IP地址改变而造成的。<br />
假如您可以部分转帐成功，则请您可以重试。如您使用的是单位网络，您也可以询问单位的网络治理员，最近是否有更改网络设置。</p>
<p>19. 我的专业版登录正常，但使用需要网页的功能时报“该页无法显示”使用大众版应该也出现同样问题。</p>
<p>A: 您设置了代理服务器并且导致HTTPS协议被过滤。<br />
您先查看IE的Internet选项的连接的局域网设置看是否选择了“为LAN使用代理服器。”，把打勾去掉，假如是拨号或无线上网，要检查拨号程序本身的配置里是否有类似的选择，也要去掉代理。</p>
<p>20. 我的专业版可以登录,但是进入后提示:无效html请求!#4,请重新登录!#99</p>
<p>A: 直接原因是您的IP地址在登录后发生改变。由于您是在单位代理上网，最大的可能是您单位的代理的设置发生了变化，每次您上网时代理都从一组IP地址中临时挑选一个，导致从银行看来，您的IP地址有时和登录的一样，有时又不一样，不一样的话就会拒绝访问。要求登录IP地址和业务操作IP地址一样是银行的安全机制，可以确保您正常登录后，别人不能冒充您操作。<br />
解决办法：您可以找到您公司的网管，让他把网关的设置由动态IP改为静态IP，具体如何改变要视哪种网关软件。</p>
<p>21. 我的专业版的输入框无法调出输入法。</p>
<p>A: 假如您安装了某些输入法，比如紫光输入法，由于这些输入法本身有BUG，导致无法调出。<br />
解决办法：请您在控制面板的区域设置和语言中添加全拼、智能ABC等其他输入法，切换到WINDOWS提供的标准输入法。</p>
<p>22. 我在Win2003使用专业版总是出现“通讯故障#12”</p>
<p>A: 直接原因：安全级别缺省为高<br />
解决办法：请您在IE的属性里面的安全设置里面添加一个信任站点http:www.*.cmbchina.com就可以了<br />
(英文操作系统下的操作)在internwe options&#8212;security&#8212;trusted sites&#8211;Sites&#8211;<br />
填入：http:www.*.cmbchina.com,点ADD</p>
<p>23. 我在登陆专业版时提示：“通讯故障(#12)*4)通讯环境内存操作失败。”</p>
<p>A: 直接原因：屏幕键盘输入导致错误。<br />
解决办法：请您输入密码时不要使用屏幕键盘输入。</p>
<p>24. 我在专业版里操作时提示：“系统异常，请关闭专业版后重新登录#2:”</p>
<p>A: 直接原因：瑞星杀毒IE执行保护功能把专业版控件MSHttpComExt.dll加了IE执行黑名单。<br />
解决办法：请您从瑞星杀毒的IE执行黑名单中删除MSHttpComExt.dll后再次执行专业版，在瑞星杀毒提示IE执行警告时选取“答应执行”和“对该程序采用相同的处理方式，不再提醒”后按确定即可。</p>
<p>25. 我在登陆专业版时提示：“无效密码，请重新输入#1！”</p>
<p>A: 直接原因：使用软键盘造成的，专业版不答应使用软键盘<br />
解决办法：请您关闭软键盘，重新启动专业版登录</p>
<p>26. 我登陆专业版时提示：“初始化COM出错#3！”</p>
<p>A: 直接原因：专业版相关文件缺少或被破坏。<br />
解决办法：您需要重新安装专业版；另外，专业版的使用和安装必须是同一个计算机用户，否则可能也会出现这个错误。</p>
<p>27. 我登陆专业版时提示：“初始化COM出错#3！#7”</p>
<p>A: 解决办法：请检查您是否运行有安全防护程序且配置为禁止其他应用程序创建服务，假如您确信没有该配置，请重启电脑后再试。</p>
<p>28. 我在登陆专业版时提示：“无效用户，请重新输入#21！”</p>
<p>A: 直接原因：笔记本外接键盘，连接多于1个的键盘，使用其他非凡输入设备（如无线键盘、手写设备等），使用软键盘输入，或远程操作下都有可能返回该错误提示。<br />
解决办法：请使用笔记本内置键盘，关闭软键盘和远程操作。</p>
<p>29. 我在登陆专业版时提示：“初始化COM出错#4！#21”</p>
<p>A: 直接原因：专业版相关文件缺少或被破坏。您需要重新安装专业版。<br />
解决办法：您需要重新安装专业版。</p>
<p>30. 我在登陆专业版时提示：“初始化COM出错#4！#24”</p>
<p>A: 直接原因：专业版服务被破坏。您需要重新安装专业版。<br />
解决办法：您需要重新安装专业版。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>个人专业版问题区③</p>
<p>31. 我在登陆专业版时提示：“无效用户，请重新输入#22！”</p>
<p>A: 直接原因：使用软键盘输入，或远程操作下都有可能返回该错误提示。<br />
解决办法：请您关闭软键盘和远程操作或重新启动计算机。</p>
<p>32. 我在登陆专业版时提示：“ReadClient异常：Read time out”</p>
<p>A: 直接原因：网络通讯问题<br />
解决办法：请您在浏览器 工具菜单下选择Internet选项，然后选 高级，里面有在安全里面有两项：“检查发行商的证书吊销”和“检查服务器证书吊销”钩掉在重起就可以了<br />
或者关掉防火墙、代理服务器等试试。</p>
<p>33. 我在专业版中“我的账户”（或账户查询）没有显示，或者某些表格不能显示出来。但“交易查询”和“转帐汇款”等功能正常。</p>
<p>A: 直接原因：1．您浏览器版本太低。<br />
　　　　　2．浏览器设置有问题。浏览器损坏。<br />
解决办法：请您检查浏览器版本，设置是否正常，假如调整设置还不行，请重装浏览器。</p>
<p>34. 我在操作专业版时输入一些数字，如：进行转帐、询价、我确实是按正常数字输入的， 但系统错误提示出现“is not a valid floating point value”，是什么原因？怎么解决？</p>
<p>A: 解决办法：这是电脑数字格式设置问题。您可按以下步骤做设置：<br />
（1） 控制面板-》区域和语言选项-》区域选项-》标准和格式-》选择中文（中国）或GB2312<br />
（2） 进入“自定义”，数字-》小数点里清除，重新输入一个小数点（最好用键盘右侧的小键盘输入）<br />
最后点“确定”，按要求重启电脑后再使用就可以了。</p>
<p>35. 我在启用专业版时 没有任何反映，想删除重装，但是卸载程序时报没有安装个人专业版，重新安装，报加载PersonalBankMain.ocx 出错 ！！</p>
<p>A: 请先确认您使用的计算机的当前用户是不是治理员权限，假如不是，请切换到治理员权限，然后重新安装。<br />
假如仍然不行，可以将专业版的安装程序解压缩后（不是安装），在解压缩后的文件夹里找到personalbankmain.oxc，然后将其复制粘贴到c：\windows\system32下，然后重新安装专业版尝试一下。</p>
<p>36. 请问在进入专业版以后,从专业版投资治理下面选择“随借随还”—“随借” 点开随借之后，选择卡号，产品后，出现了一个窗口让他填写，金额，期限，还款方式。计算利 息。都填完之后点确定的时候就报出错误。系统提示：Failed todecrypt input text less than 64 .</p>
<p>A: 解决办法：这个是指您未安装大众版安全控件。安装即可解决问题。</p>
<p>37. 安装个人网上银行专业版时出现如下的问题：“复制CMBProtector.dat文件时失败，请重 新启动计算机再安装#1#8”</p>
<p>A: 目前我行专业版还不支持64位操作系统。（包括xp系统）</p>
<p>38. 我在个人银行专业版中想进行国债购买,在操作中先选择投资通-国债买卖-购买中点击了卡号,但没有任何的界面提示信息。（很多客户都出现类似现象，能登录进入，但专业版内的许多页面和表单无法显示。）</p>
<p>A: 直接原因：您电脑IE浏览器有问题。<br />
解决办法：您电脑IE浏览器有问题，建议客户升级或重装浏览器。</p>
<p>39. 我在专业版客户端报“该功能已被锁定，重新登录后才能使用#1” 我在专业版客户端报“该功能已被锁定，重新登录后才能使用#2” 我在专业版客户端报“该功能已被锁定，重新登录后才能使用#3” 我在专业版客户端报“该功能已被锁定，重新登录后才能使用#4”</p>
<p>A: 直接原因：专业版客户端已被用户作外汇锁定，只能使用外汇功能<br />
解决办法：请重新登录再操作。</p>
<p>40. 我用专业版无法支付，浏览器弹出对话框，提示“不支持的属性sele”</p>
<p>A: 直接原因：您的浏览器禁止专业版控件运行。可能原因包括：<br />
1.浏览器设置中禁止ActiveX运行。<br />
2.您的电脑中了3721上网助手等恶意工具，专业版控件被3721拦截。<br />
解决方法：<br />
1.假如是浏览器设置问题，把浏览器安全设置设为缺省值。<br />
2.假如是3721的问题，只能到3721网站，把拦截专业版控件的选项去掉，最好能彻底删除3721。</p>
<p>41. 如何查询专业版支付记录？</p>
<p>A: 请输入密码登陆专业版后,选择电子商务→ 专业版支付交易查询.</p>
<p>42. 我在作交易查询时，专业版客户端报“帐户查询失败#1,系统正忙，请稍候再试！”、“当天交易查询失败#1,系统正忙，请稍候再试！”、“历史交易查询失败#1,系统正忙，请稍候再试！”</p>
<p>A: 短时间网络通讯问题，请稍后操作。</p>
<p>43. 我在登录专业版时提示：“非法登录”，再做通讯检测，提示“接受TCP/IP返回的进程与发送请求的进程不等”，为什么会有这种提示？我应该怎么解决？</p>
<p>A: 解决办法： 此种情况有以下三种情况：<br />
（1） 登录后超过30分钟未使用专业版，为了您的安全使用，银行自动关闭了您的操作权限，请直接退出专业版然后再重新登陆就可以了。<br />
（2） 假如总是出现该错误，则是您使用的局域网使用了“动态地址转换”技术，IP地址变换过快。请联系网络治理员，尽量固定IP地址通讯，或保证在20分钟以上IP地址不变。或者换一种上网方式，再进行操作。<br />
（3） 网关转换了路由路径，请联系网络治理员或ISP供给商。</p>
<p>44. 我登陆专业版时弹出登陆窗口，但输入框里有“7e”不能输入，请问是什么原因？</p>
<p>A: 遇此问题，如有证书备份则请您先卸载专业版后重新安装专业版后做启书恢复，如没有备份证书请您覆盖安装专业版后重新登陆尝试。</p>
<p>45. 我专业版做功能申请提示CIA1010。</p>
<p>A: CIA1010是证件不存在。证件开户所属国家选错。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>个人专业版问题区④</p>
<p>46. 我登陆专业版后，点“我的财务”—“我的帐户”后专业版窗口就关闭，然后报“Access violation at address 04906531 in module ’mimefilte.dll’.Read of address 00000000.”</p>
<p>A: 这个报错一般是您电脑中病毒或ＩＥ有问题。先尝试杀病毒，然后重新启动计算机再试，不行的话试试重装IE。</p>
<p>47.我的专业版出现：系统异常#35：因软件冲突,专业版程序将终止运行#2</p>
<p>A: 目前出于安全的考虑，我行专业版已不支持在虚拟机上使用。</p>
<p>48. 我在登陆专业版客户端报“无效html请求#1或#2或#3或#4或#7，请重新登录”</p>
<p>A: 短时间网络通讯问题，请稍后操作。此种情况有以下四种情况：<br />
（1）通过浏览器发送的请求被篡改，可能是浏览器有问题。<br />
（2）登录后超过30分钟未使用专业版，为了您的安全使用，银行自动关闭了您的操作权限，请直接退出专业版然后再重新登录就可以了。<br />
（3）假如总是出现该错误，则是您使用的局域网使用了“动态地址转换”技术，IP地址变换过快。请联系网络治理员，尽量固定IP地址通讯，或保证20分钟以上IP地址不变，一般就可以了。或者换一种上网方式，再进行操作。<br />
（4）网关转换了路由路径，请联系网络治理员或ISP供给商。</p>
<p>49. 我在作帐务操作时，专业版客户端报“通讯故障，请立即查询“当天交易”确认此笔交易是否提交成功。”</p>
<p>A: 短时间网络通讯问题，请稍后操作。。假如是转帐汇款等重要操作，请先查询转帐汇款记录，确保不会重复转帐汇款。</p>
<p>50. 我在作交易查询或修改交易记录时，专业版客户端报“由于系统原因暂时不能查询财务数据，请稍后再试”、&#8221;由于系统原因暂时不能增加或修改财务数据，请稍后再试。</p>
<p>A: 短时间网络通讯问题，请稍后操作。</p>
<p>51. 我在作转帐汇款时，专业版客户端报“由于系统原因暂时不能增加或修改转帐数据，请稍后再试”</p>
<p>A: 短时间网络通讯问题，请稍后操作。</p>
<p>52. 我安装专业版时提示“调用DLLRegisterserver　失败#　gisterserver：“\PB40\PACKAGE.INI3！”</p>
<p>A: 我行专业版暂时不支持64位操作系统。假如是32位操作系统请在治理员用户权限下安装的专业版。如还是有报错则就是操作系统问题。</p>
<p>53. 我在登陆个人银行专业版时提示：“AS400PKC7 无效接口长度，capacdaspz”</p>
<p>A: 换一个服务器登陆即可登陆.</p>
<p>54. 我在登陆专业版时提示：“初始化com出错#3！#13”</p>
<p>A: 原因是装了一些游戏外挂所导致。卸载掉这些外挂就可以了。</p>
<p>55. 专业版进行网上支付登陆时提示“C:\USERS\dong\CMB\PB40\SysPrcp\PACKAGE.INI 文件出错，请重新登陆。</p>
<p>A: 1.换一下登录服务器尝试.<br />
2.确实不行把：C:\USERS\dong\CMB\PB40\SysPrcp\所有文件，以C:\USERS\dong\CMB\PB40\SysData\FILESTOBEDOWNLOADED.TXT都删除掉，尝试？<br />
3.把CMB\PB40\SysData\FILESTOBEDOWNLOADED.TXT删除,然后把CMB\PB40\SysProp\目录下所有文件删除,再重新登录。</p>
<p>56. 我在登陆专业版时键盘被锁住，退出专业版后键盘可以正常使用。</p>
<p>A: 可能是由于硬件设备冲突所导致。建议更换键盘进行尝试。</p>
<p>57. 我在在专业版，财务分析-支出明细表中无法显示信用卡的支出?</p>
<p>A: 设置的问题，如确实关联到专业版里。是因为您在“定制”报表里的帐号没有勾选信用卡所导致。</p>
<p>58. 我在专业版里关联卡片数量的限制吗？</p>
<p>A: 目前专业版里关系一卡通是没有数目限制，关联信用卡系统只能读取到25张。如要关联的信用卡没有在待关联的信用卡里，只能去柜台关联。</p>
<p>59. 我在安装专业版时提示：“复制certclient.dat文件时失败，请重新启动计算机再安装＃1＃1068”</p>
<p>A: 原因是专业版安装过程有一项服务调用失败，一般重新启动在安装即可。</p>
<p>60. 请问：专业版中收款方户名可以输多少汉字。</p>
<p>A: 系统只能识别24个汉字。即使在填写收款方向导里面输入了超过24位汉字（收款方向导里是没有限制字数）但系统在最终提交时也只是提交24位汉字。</p>
<p>61. 我的专业版登录报错:“当前页的脚本发生错误”</p>
<p>A: 请下载大众版的安全控件安装后再登陆。</p>
<p>62. 专业版转信用卡出现错误提示：“转帐交易提交失败，原因：CSZF006 对不起，易 因故未完成，请联系客服中心。（CSTRFI）”</p>
<p>A: 转账协议不存在。 先确认一下该卡是否开通了转账的功能。</p>
<p>63. 我在专业版里申请转帐汇款功能时提交时报错：“invalid field—name(:TAAM)val(9999999999.99)Err()!</p>
<p>A: 原因是您使用的是英文操作系统。是因为区域语言设置有误，请您进入控制面板里的区域语言选项重新设置一下。都设成中文中国即可。</p>
<p>64. 我从桌面上直接登陆专业版没有问题，但是通过个人银行专业版支付提示“用户名或密码错”（VISTA操作系统），是什么原因呢？</p>
<p>A: 出现这种情况一般是您以前安装专业版时使用的是治理员权限运行的，导致在支付时也需要用治理员权限运行IE，可以先关闭IE，然后点IE图标点鼠标右键，用“Run As Administrator&#8221;打开IE再开始进入网页支付。</p>
<p>65. 我通过个人银行专业版做了证书关联一卡通，然后又到柜台做了关联（同一张卡），结果专业版里显示出两张卡号一致的卡，怎么解决？</p>
<p>A: 您退出专业版，重新登陆一下就可以正常显示了。</p>
<p>66. 我在专业版里面“帐户治理”跟“信用卡”里面看到的信用卡的个数和卡号有点不一样呢 ？</p>
<p>A: “账户治理”—“账户查询”这里看到的信用卡的账号是您通过“专业版治理”&#8212;“证书治理”—“证书关联信用卡”关联成功后看到的卡。<br />
“信用卡”&#8212;“密码治理”&#8212;“交易密码治理”这里看到的是主机按您的身份证件检索到您名下信用卡卡片状态为正常的账户数量，而并不一定是您关联过的信用卡。假如您的信用卡做过非凡处理（比如：到期不续卡）在这里是有可能看不到的。而假如您做过关联，在“账户查询”里是可以看到的，所以就会出现两个地方看到的信用卡数量或者信用卡卡号不一致的情况。</p>
<p>67. 我使用的是VISTA操作系统，从桌面上登陆专业版没有问题，但是在网上使用专业版支付的时候提示客户“×用户名或密码错”，用户名栏和密码栏都会显示小红叉，是什么原因呢？</p>
<p>A: 这可能是您比较早安装的专业版,当时安装成功后以系统治理员运行了,导致以后都必须按照系统治理员运行，有一个解决办法是,先备份文件证书,然后删除用户、卸载专业版，重新下载最新的专业版，安装完后恢复证书，这样以后都会以非系统治理员运行，就不会有这个情况出现了。</p>
<p>68. 请问一下，cmbprotector.dat会不会记录键盘。电脑上的卡巴斯基6。0的提示这个文件记录键盘，对它进行拦截。这个文件的具体功能？</p>
<p>A: 这是一个驱动层的专门保护专业版的程序,和KBWatch没关系.招行不记录用户的任何键盘输入.估计是您的卡巴对驱动级的软件安装会报警,请放心使用.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>证书问题区①</p>
<p>1. 我在做证书启用时，系统提示“CAPB003 &#8211; 证书申请失败，必须在银行柜台登记后３０天内提交申请，您已过期”是为什么呢？</p>
<p>A: 出现这种情况的原因是：柜台申请的专业版授权码有效期为30天，您必须在申请到之后的30天内自行在网上做“证书启用”，假如逾期操作，系统就会出现以上提 示。<br />
这种情况，请您携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书，填写“招商银行网上个人银行证书申请表”，并选择“申请数字证书”业务类别。（如您之前申请的是移动数字证书，还需同时携带USB KEY）。</p>
<p>2. 我在做文件数字证书启用时，系统提示“CAPF009 &#8211; 证书查询失败，您输入的姓名、证件类型或号码有误，或未到银行申请证书。”我是什么资料填的不对呢？</p>
<p>A: 假如您已到我行柜台申请过文件数字证书，出现这种提示，请检查姓名的拼写，证件类型的选择以及身份证件中含有的字母是否以大写输入。非凡要请您注重的是，假如您的身份证件曾做过新旧身份证的更换，做证书启用时所填写的证件号码需与您开立一卡通时的证件号码相符。<br />
假如您还没有到我行柜台申请数字证书，请您携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书，填写“招商银行网上个人银行证书申请表”，并选择“申请数字证书”业务类别。</p>
<p>3. 我在做证书启用时，系统提示“CAP1003 &#8211; 启用证书失败，授权码错误，请重新输入授权码。”， “CAP1004 &#8211; 启用证书失败，授权码错误，假如再错一次，本次启用将作废。” 或“CAP1005 &#8211; 启用证书失败，授权码错误次数超限，本次申请作废，请去银行重新申请”是为什么？</p>
<p>A: 出现这种情况的原因为：在柜台申请的专业版授权码输入5次错误就会作废，故前3次输入错误，系统会有 CAP1003的提示，第四次输入错误，系统会出现CAP1004的提示，第五次输入错误，系统会有CAP1005的提示。<br />
假如您的授权码已经5次输入错误，请您携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书，填写“招商银行网上个人银行证书申请表”，并选择“申请数字证书”业务类别。（如您之前申请的是移动数字证书，还需同时携带USB KEY）</p>
<p>4. 我在柜台申请了文件数字证书，回来后我做了证书启用后，看到提示“证书启用成功，请等待60分钟后登陆”，但我一个小时后登录却提示“无此用户”，请问这是为什么？我要怎样才能登录？</p>
<p>A: 请先确认该电脑的硬盘是否可写入，假如硬盘是不可写入的，签发的证书将无法下载。<br />
假如硬盘是可写入的，出现此种情况是由于您做了证书启用后第一次登录时，专业版状态、安全信息等资料与做“证书启用”时不一致。一般有以下三种原因：<br />
（1） 操作“证书启用”后，删除、修改了专业版的文件或重装了专业版程序，专业版情况与启用证书时不相同了，导致不能正常下载签发的证书。<br />
（2） 操作“证书启用”后，关闭了电脑，而这台电脑上可能又安装了一些优化的程序（如：上网助手，优化大师，还原精灵，还原卡等），再次开机时，这些程序会自动还原电脑至证书启用之前的状态，导致不能正常下载签发的证书。<br />
（3） 操作“证书启用”后，电脑出现“死机”，之后您做了“非正常关机”，这种操作可能会导致电脑丢失某些数据，以致再次开机时不能正常下载签发的证书。<br />
这种情况下假如能够恢复就请您将文件恢复到原来的状态，然后再尝试做登录。假如不能恢复，请您携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书，并在做完证书启用后，尽量不要使用电脑，不要关机，等待15-30分钟后再次登录专业版进行证书下载（正常情况下，不需要等60分钟）。在正常登录专业版后，按照系统提示先做“证书备份”然后做其它操作.</p>
<p>5. 我在安装专业版做证书启用时，输完个人信息，最后一步输完“取款密码”后，出现错误提示：“修改或增加用户出错”，这是什么原因，我要怎么解决呢？</p>
<p>A: 这种情况是由于电脑的某些原因，使专业版无法修改或增加用户。<br />
请卸载专业版，重启电脑后尽量先不使用其它程序，直接登录主页上的个人银行专业版，点击“深圳下载”下载安装最新的专业版程序，然后再做证书启用。假如仍不行，就可能是操作系统的问题，您可以尝试重装操作系统。</p>
<p>6. 我的文件数字证书在做完“证书更新”后，系统提示“证书更新成功，请等待60分钟后登录”，但一个小时后再登录专业版时，系统又提示“您的证书正等待恢复，若您拥有有效证书，请用证书治理功能进行证书恢复”，请问为什么会出现这种情况，如何解决呢？</p>
<p>A: 请先确认您的电脑硬盘是否可写入，假如硬盘是不可写入的，签发的证书将无法下载。<br />
假如硬盘是可写入的，出现此种情况是由于您做了证书启用后第一次登录时，专业版状态、安全信息等资料与做“证书启用”时不一致。一般有以下三种原因：<br />
（1） 操作“证书更新”后，删除、修改了专业版的文件或重装了专业版程序，专业版情况与更新证书时不相同，新的证书不能下载。<br />
（2） 操作“证书更新”后，关闭了电脑，而这台电脑上又安装了一些优化的程序（如：上网助手，优化大师，还原精灵，还原卡等），再次开机时，这些程序会自动还原电脑至您证书更新之前的状态，导致不能正常下载签发的新证书。<br />
（3） 操作“证书启用”后，电脑出现“死机”，之后您做了“非正常关机”，该操作可能会导致电脑丢失某些数据，以致再次开机时不能正常下载签发的新证书。<br />
这种情况下假如能够恢复就请您将文件恢复到原来的状态，然后再尝试做登录。假如不能恢复，就请您携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书，并在做完证书启用后，尽量不要使用电脑，不要关机，等待15-30分钟后再次登录专业版进行证书下载（正常情况下，不需要等60分钟）。在正常登录专业版后，按照系统提示做证书备份，然后做其它操作。</p>
<p>7. 我在做证书恢复时提示“用户、证件号、密码或证书出错#2”，请问是哪项资料出错？</p>
<p>A: ＃2表示证件号码错或证书出错。<br />
请检查您填写的证件号码是否与申请专业版的一卡通开户证件号码相符，非凡要请您注重的是，假如证件号码中含有字母，字母一般要大写。证书出错原因也有可能是您恢复了更新之前的证书备份, 恢复的并不是最新的证书的备份。</p>
<p>8. 我在做证书恢复时提示“用户、证件号、密码或证书出错#3”，请问是哪项资料出错？</p>
<p>A: ＃3－－表示用户密码错，您输入了错误的证书备份密码，证书备份密码是做证书备份时的专业版登录密码。目前新版专业版的登陆密码都是字母加数字组合,请确认当时所设置的英文字母大小写.</p>
<p>9. 请问我在恢复证书时提示“恢复的证书无效#2”，是我的证书备份文件无效吗？</p>
<p>A: 这种提示有两种可能：<br />
（1） “证书恢复”时填写的用户名或者“证件号码”不正确。<br />
（2） 证书备份文件损坏或无效，假如您有做过证书更新操作，请使用更新之后做的备份文件恢复，假如更新后没有做过证书备份或找不到最新证书备份，请携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书。</p>
<p>10. 我在进行证书恢复操作时，提示错误“ERR PFX LOAD”，为什么会有这种提示，我应该怎么解决？</p>
<p>A: 这种提示是指证书装载出错。您的证书备份文件已经损坏或者“证书恢复”时选择了错误的备份文件。假如您有其它备份文件或还有可以正常登录的专业版可重新做证书备份，请用新的备份文件在这台电脑做证书恢复；如没有，请携带本人身份证实和一卡通到我行任一网点柜台重新申请数字证书。<br />
（提示：由于软盘、软驱读取时轻易出错，假如您是使用软盘装载证书备份文件，建议最好能定期做备份，并在每次备份完后立即恢复一次，以便验证此备份文件是否有效。）</p>
<p>11. 我使用的是移动数字证书，在做证书启用时提示“取卡内标识符出错，#161，请检查移动数字证书是否连接到电脑”，请问为什么会出现这种情况？我可以怎么解决？</p>
<p>A: 这种情况是USB KEY硬件未连接上或者驱动程序安装错误，电脑无法正常读取移动证书，就会提示#161错误。<br />
请先检查USB-KEY硬件是否连接好，或尝试换其它USB接口，假如您的USB KEY是配有延长线的，可以尝试用延长线做使用。<br />
如不行，请先卸载原有的驱动程序，关闭电脑，开机后重新安装相应的驱动程序，一次不行，此步骤可尝试重复操作几次。<br />
假如还不行，您可以带身份证、一卡通及USB KEY到柜台测试其物理性能是否正常。</p>
<p>12. 我打开移动数字证书登录界面，显示“用户证书未找到或未插好USB KEY”，再输入密码点击登录，系统就提示“打开Ekey Manager出错#142，请检查移动数字证书是否连接到电脑！请检查移动数字证书是否连接到电脑！或检查是否正确选择了证书硬件类型为什么会有这种情况？我要怎么解绝？</p>
<p>A: 出现这种提示是您的USB KEY设备驱动程序尚未安装或没有安装正确。<br />
假如您的驱动程序确实已安装过，请您先卸载此程序，然后重启电脑，开机后重新安装相应的驱动程序，再尝试操作。</p>
<p>13. 我在做专业版证书启用的时候，还未启用成功系统就提示“something unexception”，请问为什么会出现这种情况？我要怎么解决？</p>
<p>A: 这种提示是系统运行时某些文件出错。建议您按以下步骤操作：<br />
（1） 先暂时关闭防火墙和杀毒软件，再尝试做“证书启用”。<br />
（2） 如不行，请先卸载专业版，关机再启动电脑，再重新安装一次专业版程序再操作。<br />
（3） 假如仍不行，就可能是IE浏览器的问题，请重装IE或换用另一台电脑试一下。</p>
<p>14. 我使用31型号的移动数字证书，在证书启用后，第一次登录就没有反应，这台电脑我使用工行的移动证书都是可以正常登录的，请问为什么用贵行的移动数字证书就不能正常登录呢？</p>
<p>A: 这种情况一般是您安装的我行31移动证书驱动程序与工商银行USB硬件证书的驱动程序有冲突。<br />
假如您的电脑已经安装过工商银行的USB-KEY证书驱动程序，再使用我行31硬件证书就可能会出现以上情况。但反过来是可以使用的，也就是说，您可以先暂时卸载其它银行的USB KEY驱动程序，再安装我行移动证书USB KEY驱动程序，然后重新做“证书启用”操作，正常使用后再安装其它银行的设备。<br />
（假如您现在的证书已经成功启用过了，经过以上操作可能仍无法登录，则需请您携带本人身份证实、一卡通和USB KEY到我行任一网点柜台重新申请数字证书，再按以上建议步骤操作。）</p>
<p>15. 我的身份证升位后申请了证书，原证书设定的付款计划还执行。</p>
<p>A: 当身份证号码改变时申请的证书是一个新的证书，不会覆盖原证书的，故原证书设定的付款计划仍然有效。<br />
解决办法：请您把执行付款计划的卡的取款密码修改，或者恢复原证书删除计划。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>证书问题区②</p>
<p>16. 我使用31类型的USB Key，有时选择“登录”按钮后电脑死机。</p>
<p>A: 直接原因：可能是使用了USB连接线，或者使用了显示器、键盘等外部设备上的USB口。31类型的USB Key对连接线路要求较高，最好直接插在主机的USB口上。<br />
解决办法：请您把USB Key直接插在主机的USB口上操作。</p>
<p>17. 我的USB KEY31型驱动程序安装时报“String I NST_UNABLETORETRIEVETEMP was not found in string table”</p>
<p>A: 直接原因：您的操作系统安装不完善导致调用系统函数出错。<br />
解决办法：在桌面上右键点“我的电脑”，选“属性”，点“高级”页的“环境变量”，增加用户变量的 TEMP 和TMP变量、系统变量的 TEMP 和 TMP 变量。</p>
<p>18. 证书恢复时报错：“HOSTLIST.TXT文件出错，请重新登陆。”</p>
<p>A: 解决办法：关闭专业版,在C:\Documents and Settings\Administrator\CMB\PB40\SysData目录下删除FILESTOBEDOWNLOADED.TXT后再尝试操作。</p>
<p>19. 请问在证书恢复时回答完问题以后提示：“由于系统原因，暂不能核对问解题＃1”</p>
<p>A: 解决办法：您的证书已损坏，主机获取不到证书信息，请您去我行柜台重新申证书。</p>
<p>20. 我的专业版中证书恢复时提示：“c:\Documents　and　settings\sony\CMB\PB40\PACKAGE.INI文件出错，请重新登陆。”</p>
<p>A: 解决办法：重新登陆就可以了，如还是有此问题可以将专业版解压缩后再重新进行覆盖安装。</p>
<p>21. 我证书恢复时提示“增加或修改用户出错#1，写文件出错，请检查安装路径，后面则是客户安装专业版的路径”。</p>
<p>A: 您没有安装权限，非治理员用户。请在治理员用户下安装专业版。</p>
<p>22. 我在用移动证书登录专业版时，弹出窗口，提示输入PIN。</p>
<p>A: 解决办法：这种情况是由于没有安装最新的31类型驱动程序导致的。请卸载原驱动程序，并确保旧的system32下的GDSPKlib.dll被删除后安装网上发布的最新驱动。</p>
<p>23. 我的移动证书无法启用，但换到其他电脑上又可用。</p>
<p>A: 直接原因：类型31的key，其驱动程序依靠windows的scardsvc服务的正常运行，而在个别盗版Windows XP版本操作系统上，会出现软件无法启动后台进程等情况，假如该服务不能正常运行，将导致用户使用招行个人银行专业版时无法启用/下载证书。<br />
解决办法：在其他电脑上启用证书，或更新盗版Windows XP。</p>
<p>24. 我的移动证书启用成功，但半小时后无法下载证书及登录？</p>
<p>A: 直接原因：类型31的USB Key， 启用和第一次登录必须在同一台电脑进行，否则有可能下载证书失败。<br />
解决办法：请在同一台电脑启用证书及第一次登录。</p>
<p>25. 我的移动数字证书刚刚复制出一个文件证书。用文件证书登陆后帐户查询时就一直报“系统正忙,请稍后再试#1”。而用移动证书登陆进入就可以正常查询没有问题，请问一下这是什么原因造成的。</p>
<p>A: 短时间服务器忙造成。请换个服务器登陆或换个时间段在登陆尝试。<br />
如换了服务器，换了时间登陆，换了上网方式还是一样报错，可以将文件数字证书作废，然后在重新复制一个文件证书在进行操作。</p>
<p>26. 我在证书启用时报错：“Ｅrr happens while add to CertApplyTmp”</p>
<p>A: 请确保目录C:\Documents and Settings\Administrator\CMB\PB40\SysData具有可写权限。</p>
<p>27. 我在做证书恢复时输入完验证码后报错提示：“验证码验证失败，请申请你的网银身份验证码，ERR CODE 99”</p>
<p>A: 原因当前验证码失效。（过了有效期24小时）或验证码输入错误。</p>
<p>28. 我通过个人银行专业版做了证书关联一卡通，然后又到柜台做了关联（同一张卡），结果专业版里显示出两张卡号一致的卡，怎么解决？</p>
<p>A: 您退出专业版，重新登陆一下就可以正常显示了.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>大众版问题区</p>
<p>1. 我可以正常进入招行主页，但却无法进入大众版，点击大众版后提示“该页无法显示”或“找不到服务器”，如何解决？</p>
<p>A: 可能你使用的浏览器不支持Cookie，或禁止了Cookie，强烈建议使用IE6以上的版本。出现这种问题，根据您的不同情况可采用以下方法：<br />
方法一：假如是通过局域网的代理服务器上网：<br />
（1） 检查是否安装了SSL安全代理，假如安装了, 就卸载该程序, 请在浏览器设置：<br />
工具-》internet选项-》连接-》局域网设置-》去掉代理服务器下面的勾；<br />
工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；<br />
工具-》internet选项-》高级-》点击“恢复默认设置”。　<br />
（2） 如不行，请联系系统治理员，我们的通讯是HTTPS(SSL 3.0)协议，需开放443号端口，并将TCP/IP协议的DNS服务器设为我们行的DNS服务器：202.96.161.112<br />
假如修改了DNS还是无法连接我们网站，请试着修改hosts文件，步骤如下：<br />
&lt;1&gt;.在c盘查找hosts文件,注重这个文件没有后缀,是隐藏文件.<br />
&lt;2&gt;.加入IP和域名的对应关系:<br />
218.17.246.162 www.cmbchina.com<br />
218.17.246.164 ebank.cmbchina.com<br />
假如修改后仍无法进入大众版，检查后发现hosts文件又被改为其它IP或域名了，请先进行查毒，再进行操作。<br />
方法二：检查是否有“网页防火墙”（如：金山毒霸、瑞星等杀毒软件），如有，请先暂时关闭“网页防火墙”</p>
<p>2. 我在登录个人银行大众版时看不到“附加码”，而且在登录大众版时总是提示“您上次登录的记录信息已失效，请关闭当前窗口，然后重新登录”，是什么原因导致？</p>
<p>A: 此种情况有以下两种情况：<br />
（1） 登录后超过30分钟未使用专业版，为了您的使用安全，银行自动关闭了您的操作权限，您直接退出专业版再重新登录就可以了。<br />
（2） 假如总是出现该错误，则是您使用的局域网使用了“动态地址转换”技术，IP地址变换过快。请联系局域网的网络治理员，尽量固定IP地址通讯，或保证在20分钟以上IP地址不变。或者您可以换一种上网方式，然后操作专业版。</p>
<p>3. 我在下载大众版的插件后,电脑上安装的木马克星就显示“在winnt/system32/cmbedit.dll 正在监视你电脑的操作”，这样的情况正常吗？</p>
<p>A: 这个文件是大众版更新升级后的程序文件，用来保护您的卡号、密码。“木马克星”的提示是正常的，因为大众版的登录程序在保护卡号密码不被别人窃取。您不用担心使用的安全问题。</p>
<p>4. 我在登陆大众版时，页面的左下角提示“JAVA SCRIPT SB WINDOWS 没有办法打开”，是什么原因？</p>
<p>A: 出现这种提示一般有两种可能：<br />
（1） 浏览器设置问题，请在浏览器设置：<br />
工具-》internet选项-》安全-》自定义级别，在“重置自定义设置”里，将安全级别设置为： “安全级—中低”<br />
工具-》internet选项-》高级-》点击“恢复默认设置”。<br />
（2） 浏览器版本问题，请检查IE浏览器是否是5.5版以上，假如不是，请升级或重装浏览器（版本最好安装IE6.0以上）。</p>
<p>5. 我在大众版登录界面中，不能看到输入卡号、密码的输入框。</p>
<p>A:直接原因： 可能的原因包括：<br />
1.大众版网页正在下载招商银行登录控件，一般客户的电脑在数秒内完成，但在某些老旧电脑上可能需要数十秒或一分钟。<br />
2.浏览器提示客户是否安装“招商银行登录软件”时，客户没有选择安装。<br />
3.您的浏览器禁止下载执行ActiveX控件。<br />
4.客户的浏览器安装了上网助手等第三方软件，该类软件禁止其他控件的安装<br />
和运行。<br />
5.浏览器版本太低。<br />
解决办法：<br />
对解释1，请您稍候。等下载完毕安装该软件即可。<br />
对解释2，请您安装。<br />
对解释3，请您打开浏览器的ActiveX的相关权限。操作方法：在浏览器菜单中选择“工具”|“Internet选项”，在弹出的对话框中选择“安全”|“Internet”|“自定义级别”，在弹出的对话框中选择“重置为 安全级-中”，点“重置”按钮，确定。<br />
对解释4，请您在相关第三方软件中答应招商银行登录控件下载运行。<br />
对解释5，请您把浏览器IE升级到5.5以上。</p>
<p>6. 我在大众版登录界面中，输入卡号显示为“*”符号。</p>
<p>A: 直接原因：您的浏览器禁止下载执行ActiveX控件。<br />
解决办法：请在浏览器菜单中选择“工具”|“Internet选项”，在弹出的对话框中选择“安全”|“Internet”|“自定义级别”，在弹出的对话框中选择“重置为 安全级-中”，点“重置”按钮，确定。</p>
<p>7. 请问什么样的情况下需要下载安全控件？</p>
<p>A: 问题1、登陆框无法输入；<br />
问题2、输入框出现红叉；<br />
问题3、安全控件载入失败；<br />
问题4、请您更新下载安全控件。</p>
<p>8. 如何下载安全控件？</p>
<p>A: 可以在“下载安全控件”处单击右键，选择“目标另存为”，然后运行安装就可以了。<br />
注：选择“目标另存为”的好处：对于安装有迅雷或是一些下载工具的客户，而对这些工具的使用又不太熟悉，采用这种下载方式会简单许多。</p>
<p>9. 下载安全控件后还是出现同样的问题，怎么办？</p>
<p>A:方法1、请问您有没有安装&#8221;瑞星卡卡上网助手&#8221;？假如有，请您打开瑞星卡卡，在&#8221;高级功能&#8221;里面找到&#8221;插件免疫&#8221;，选择&#8221;银行&#8221;，（注：尽量让客户选择点击“银行”选择项前面的加号）再请您在&#8221;招商银行网上银行&#8221;（两项）前面方框里面打勾，点击右下角的“取消免疫”，<br />
然后再安装安全控件就可以了。（主要针对问题1、问题2、问题3）<br />
方法2、请问您的电脑上有没有安装“金山网镖”？假如有，请退出后再安装安全控件。（主要针对问题1、问题2）<br />
方法3、 请您随便打开一个网页（IE），在&#8221;工具&#8221;&#8211;治理加载项，在“显示”里面选择“Internet Explorer 已经使用的加载项”，看一下“Edit Class”是不是被禁用?假如有，请启用后再安装安全控件就可以了。（主要针对问题1、问题2）<br />
方法4、 请问在Ｃ盘&#8211;windows&#8211;system32下面能不能找到CMBEdit.dll的文件？假如有，请把它删除掉，然后重新下载或者是修补一下。假如没有找到，说明您的下载不成功，请检查不是是您的电脑禁止下载其他的程序。（主要针对问题4）<br />
方法5、您的电脑上有没有其他的一些防护软件（比如说杀毒软件、防火墙、上网助手、优化大师等），把安全控件的下载给拦截了，以至于下载不成功。请您关掉这些，然后关机重启再下载。（主要针对问题1、问题2）<br />
方法6、 请把招行的主页加为可信任的站点试一下。流程是：请随便打开一个网页（IE）：在工具—Internet选项，&#8212;安全，&#8211;受信任的站点&#8211;站点—将该网站添加到区域中（D）：输入https://www.cmbchina.com/ ，点添加，把https://www.cmbchina.com/添加到空白框中，确定。（主要针对问题1、问题2）<br />
方法7、更换其他的浏览器试一下。</p>
<p>10. 如何检测安全控件有没有安装成功？</p>
<p>A: 在安装控件后，在电脑屏幕左下角的“开始-运行”-输入“regsvr32 %systemroot%\system32\cmbedit.dll”确定。假如系统提示：<br />
C：\WINGDOWS\system32\cmbedit.dll中的Dllregistersever 成功。如有此提示才说明此控件已在注册表中注册；假如提示是“无法找到指定的模块”，说明没有安装成功或是安装成功，但是可能是防护软件和安全控件冲突，建议客户关闭软件后重新安装安全控件。</p>
<p>11. 我在网上自助缴费时所报的这些&#8221;CMBJF01的错误代码什么意思？</p>
<p>A: &#8220;CMBJF01&#8243; ：&#8221;*缴费*密码错&#8221;<br />
&#8220;CMBJF02&#8243;：&#8221;*缴费*帐户余额不足<br />
&#8220;CMBJF03&#8243;：&#8221;*缴费*未申请此项功能&#8221;<br />
&#8220;CMBJF04&#8243;：&#8221;*缴费*商户系统未连接&#8221;<br />
&#8220;CMBJF05&#8243;：&#8221;*缴费*通讯故障，请稍后查询交易结果&#8221;<br />
&#8220;CMBJF06&#8243;：&#8221;*缴费*暂停服务&#8221;<br />
&#8220;CMBJF07&#8243;：&#8221;*缴费*帐户冻结&#8221;<br />
&#8220;CMBJF08&#8243;：&#8221;*缴费*缴费号码不符&#8221;<br />
&#8220;CMBJF09&#8243;：&#8221;*缴费*密码已锁&#8221;<br />
&#8220;CMBJF10&#8243;：&#8221;*缴费*身份证不符&#8221;<br />
&#8220;CMBJF13&#8243;：&#8221;*缴费*已缴纳此费用&#8221;<br />
&#8220;CMBJF14&#8243;：&#8221;*缴费*非交易时间&#8221;<br />
&#8220;CMBJF15&#8243;：&#8221;*缴费*转帐金额超限&#8221;<br />
&#8220;CMBJF16&#8243;：&#8221;*缴费*无此缴费号码&#8221;<br />
&#8220;CMBJF17&#8243;：&#8221;*缴费*未留身份证&#8221;<br />
&#8220;CMBJF18&#8243;：&#8221;*缴费*您已开通此项自助缴费&#8221;<br />
&#8220;CMBJF19&#8243;：&#8221;*缴费*在电话银行中,一个商户只能申请一个缴费号码,如需申请多个缴费号码，请到银行柜台办理。&#8221;<br />
&#8220;CMBJF20&#8243;：&#8221;*缴费*股票机用户，请以十二个月为单位输入，一年台费请输入12，两年台费请输入24，依次类推&#8221;<br />
&#8220;CMBJF24&#8243;：&#8221;*缴费金额不符&#8221;<br />
&#8220;CMBJF30&#8243;：&#8221;*缴费*通讯故障&#8221;<br />
&#8220;CMBJF65&#8243;：&#8221;*缴费*无此缴费合同号&#8221;</p>
<p>12. 关于大众版控件问题，INternet Explorer已经使用的加载项，中没有Edit Class 怎 么办呢？</p>
<p>A: 如您使用的是vista操作系统请按以下操作重试。<br />
&gt; a：在 控制面板&#8211;&gt;户用帐户-&gt;打开或者关闭UAC 里面关闭uac功能，然后重新启动机器。<br />
&gt; b：然后按下面步骤重新注册cmbedit.dll（确保登陆的用户拥有 治理员权限）：<br />
&gt; 1、用cmd命令 打开一个dos窗口<br />
&gt; 2、用命令 cd C:\windows\system32 切换到system32目录<br />
&gt; 3、运行 regsvr32 cmbedit.dll 命令注册cmbedit.dll 。假如成功注册，会弹出注册成功的提示。</p>
<p>13. 安装大众版控件时报错：“An error (-5009):×807007e) has occurred while running the setup. Please make sure you have finished any previous setup and closed other applications. If the error still occurs, please contact you vendor. CHINA MERCHANTANK.”</p>
<p>A: 解决办法：<br />
1、下载控件 https://site.cmbchina.com/download/CMBEdit.cab<br />
2、用WinRar解压CMBEdit.cab<br />
3.、把解压出来的 cmbedit.dll文件 拷贝到c:\windows\system32目录下<br />
4、运行命令 regsvr32 c:\windows\system32\cmbedit.dll 注册cmbedit控件</p>
<p>14. 请问一网通用户登录密码被锁，是24小时后解锁。还是日终0点处理零点后解锁。</p>
<p>A: 24小时后解锁。</p>
<p>15. 我之前是用15位身份证注册的一网通用户，最近到柜台做了一卡通开户证件维护成18位的，我想把一网通的证件号码也维护成18位的，并且原来注册的用户名继续使用，怎么办？</p>
<p>A: 撤消原来的关联卡，重新关联一下，应该就可以了。</p>
<p>16. 我之前是用15位身份证号码注册的一网通用户，最近到柜台做了一卡通开户证件号码的维护，换成了18位的身份证号码，我现在想把一网通用户的证件号码维护成18位的，并且原来注册的用户名能够继续使用，怎么办？</p>
<p>A: 您可以尝试把原来关联的卡撤销掉，再重新关联一下应该就行了。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>网上支付问题区①</p>
<p>1. 我进行网上购物，到了支付页面，要进入一网通支付中心时，出现窗口提示“该页无法显示”，如何解决？</p>
<p>A: 此种情况下，您可采取以下几种方法对电脑进行设置：<br />
方法一：检查是否安装了SSL安全代理，假如安装了，卸载该程序，并请在浏览器设置：<br />
工具-》internet选项-》连接-》局域网设置-》去掉代理服务器下面的勾；<br />
工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；<br />
工具-》internet选项-》高级-》点击“恢复默认设置”。　<br />
方法二：检查是否有“网页防火墙”（如：金山毒霸等杀毒软件），如有，请关闭“网页防火墙”或者关闭“禁止打开网页上广告窗口”部分。<br />
方法三：请联系系统治理员，我们的通讯是HTTPS(SSL 3.0)协议，需要开放443号端口，请他们测试是否答应通过HTTPS。<br />
方法四：使用拨号上网的接入方式试一下，一般的拨号接入都是支持HTTPS的。<br />
方法五：也有可能是电脑的问题，可换一台试试。</p>
<p>2. 我在专业版上做支付功能申请时，最后提交完成后，错误提示“提交失败：[网上支付卡申请] 提交失败：FIS9999RPS0222 对不起，交易因故未完成，请联系客服中心。（5710909005）”，请问是什么地方出错！怎么办？</p>
<p>A: 这个代码是指您的证件号码不符，请检查证件号码填写是否正确，这里所填写的证件号码需与您开立一卡通时的证件号码相符，非凡要请您注重的是：假如证件号码中含有字母，字母一般要大写。</p>
<p>3. 我在网上支付时，要求我输入卡号和密码，但当时浏览器显示的页面右下角没有出现锁的标志，这种情况是否安全？</p>
<p>A: 这种情况可能是出现了通讯错误，没有锁表示该页没有加密，是不安全的。建议您不要在该页作支付。</p>
<p>4. 如何申请大众版网上支付功能？</p>
<p>A: 如您的网上支付金额每日限额暂时不超过500元。<br />
请进入http://www.cmbchina.com/personalbank/netpay/NetPayApplyAll.htm 按提示逐步操作即可。<br />
如您的网上支付超过500元请致电我行客服热线95555人工申请网上支付功能。</p>
<p>5. 我在开通网上支付功能时提示：“无此客户号”?</p>
<p>A: 请在申请第一步选择开户地的时候，不要钩上“同时申请电话支付”</p>
<p>6. 我在网上申请支付失败，提示请通过95555电话人工开通网上支付？</p>
<p>A: 这个情况是系统判定您网上申请支付功能存在风险，请通过95555电话人工或者到银行网点办理开通。</p>
<p>7. 我想关闭网上支付卡，怎么办？</p>
<p>A: 需要您带本人身份证件和一卡通到开户地当地的银行柜台办理。</p>
<p>8. 目前网上支付为什么要增加验证码？</p>
<p>A: 由于最近有其他一些银行陆续发生过网上资金被盗的案件，我行为了防范于未然，所以增加了验证码这个步骤，这也是出于安全考虑，希望您能理解。</p>
<p>9. 我如何来获取验证码？</p>
<p>A: 请卡主本人通过95555电话人工服务增加或者修改预留的电话。之后可以通过短信获取。简单的流程是:打通95555，3人工服务，1个人银行，2网上银行，2网上疑难咨询。</p>
<p>10. 我在网上支付时提示支付超过限额，怎么办？</p>
<p>A: 这个提示是限额设置问题。您可通过以下途径：进入我行主页http://www.cmbchina.com/ →网上个人银行登录 → 个人银行大众版→ 选择一卡通（输一卡通卡号、查询密码）→ 网上支付 → 网上支付额度治理即可调整您的两个额度，两个额度必须大于等于您要付款的金额。</p>
<p>11. 如何进行网上支付？</p>
<p>A: 您需要在商户的网页上选择&#8221;购买&#8221;,然后会有链接要求您选择支付的银行,您选择招商银行后会链接到让您选择支付方式,我行提供一卡通支付\信用卡支付\支付卡支付\专业版支付这四种支付方式，您选择需要的支付方式后就可以按照提示进行操作了。</p>
<p>12. 如何进行支付宝充值？</p>
<p>A: 请您进入淘宝网的支付宝,选择&#8221;帐户充值&#8221;,然后会要您选择支付的银行,您选择招商银行会进入&#8221;一网通支付&#8221;的平台让您选择支付方式,我行提供一卡通支付\信用卡支付\支付卡支付\专业版支付这四种支付方式，您选择需要的支付方式后就可以按照提示进行操作了。</p>
<p>13. 我怎样将一卡通里的钱转入支付卡？</p>
<p>A: 您需要先将钱从一卡通里转到支付卡里.您可以进入个人银行大众版，选择一卡通（输一卡通卡号、查询密码）→ 网上支付→ 支付卡治理→ 支付卡转账。请选择“操作”下“转支付卡”即可将金额转到支付卡。</p>
<p>14. 如何查询网上支付卡卡号？</p>
<p>A: 您可以进入个人银行大众版， 选择一卡通（输一卡通卡号、查询密码）→ 网上支付→ 支付卡治理 →支付卡号查询,即可查到的。</p>
<p>15. 如何能查到支付卡的交易记录？</p>
<p>A: 您可通过以下途径：进入我行主页http://www.cmbchina.com/ → 网上个人银行登录→个人银行大众版 → 选择一卡通（输一卡通卡号、查询密码）→帐户治理 →历史或当天交易查询,子帐户选择“支付人民币”就可以查到了。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>网上支付问题区②</p>
<p>16.如何查询专业版支付记录？</p>
<p>A: 请输入密码登陆专业版后,选择电子商务→ 专业版支付交易查询.</p>
<p>17. 我在支付时主机返回&#8221;其他原因错误，本次操作失败。(NN). &#8221;</p>
<p>A: 一般为除下列错误的其他储蓄系统错误：<br />
CMB4701 (14=消费卡号无效)<br />
CMB4702 (55=密码错)<br />
CMB1004 (55=密码错)<br />
CMB2401 (55=密码错)<br />
CMB4703 (R5=非本地区消费卡)<br />
CMB4704 (41=消费卡已挂失)<br />
CMB4705 (PA=未开网上消费户)<br />
CMB5531 (PB=单笔金额超限)<br />
CMB5532 (PC=全天金额超限)<br />
CMB1121 (51=帐户余额不足)<br />
CMB1099 (PG=密码错误次数超限)<br />
CMB1118 (N2=户已冻结)<br />
FIS1211(13) 对不起，输入金额有误<br />
FIS1001(14) 对不起，账户不存在<br />
FIS1002(14) 对不起，账户已关闭<br />
FIS1007(14) 您的账户已过期，请联系开户行<br />
FIS1231(51) 对不起，账户余额不足。<br />
FIS1621(55) 对不起，密码错误。<br />
FIS1622(55) 对不起，查询密码错误<br />
FIS1623(55) 对不起，取款密码错误。<br />
FIS1624(55) 对不起，理财密码错误。<br />
FIS1626 对不起，支付密码错误。<br />
FIS1004(N1) 您的账户为睡眠户，请联系开户行。<br />
FIS1003(N2) 对不起，账户已冻结。<br />
FIS1051(PA) 对不起，您的账户未开通此功能<br />
FIS1241(PB) 对不起，交易金额超过该项业务的最高限额<br />
FIS1242(PB) 对不起，交易金额低于该项业务的最低限额。<br />
FIS1803(PB) 对不起，使用临时密码时，单次交易金额超过限额<br />
FIS1301(PC) 对不起，当日累计交易金额超过限制<br />
FIS1320(PC) 对不起，交易超限<br />
FIS1804(PC) 对不起，使用临时密码时，累计交易金额超过限额<br />
FIS1611(PG) 对不起，密码错误次数超限<br />
FIS1612(PG) 对不起，查询密码错误次数超限<br />
FIS1613(PG) 对不起，取款密码错误次数超限。<br />
FIS1614(PG) 对不起，理财密码错误次数超限<br />
FIS1221(PH) 对不起，输入货币有误。<br />
FIS1501(PP) 支付密码与取款密码一致，请先通过网上支付大众版或电话银行设置您的支付密码.</p>
<p>18. 我在做身份验证时输入验证码后提示：验证码验证失败，请申请你的网银身份验证码，ERR CODE 99.</p>
<p>A: 1、当前验证码失效。（过了有效期24小时）<br />
2、输入错误。<br />
3、请人工获取验证码尝试操作。<br />
（注：大众版网上支付、专业版网上支付和专业版证书恢复是不同验证系统。验证码是不能混用。）</p>
<p>19. 我在华夏基金网站上开通“一网通支付直付通”电子协议时报错：“商户返回提示：交易失败，数据校验不匹配，错误代码［CMBMBXX］.<br />
这个提示是您在我行开户时是15位身份证，而在基金公司开户时用的是18位身份证号码，所以导致数据校验不匹配。请您维护成一致的身份证号码。</p>
<p>20. 我在网上用支付卡支付时提示：“抱歉支付未能完成，错误原因：受限制的卡#6262</p>
<p>A: 是当前支付卡已失效，您关闭过支付卡号后又重新开通了一个网上支付卡号。而您在网上支付时又输入了以前关闭的支付卡号。<br />
解决办法：请输入重新申请后的支付卡号进行支付。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>预留</p>
<p>霸占 证券系统问题集</p>
<p>1. 我在进行银证转账时为何出现“券商没开通”或“银行通讯故障5＃”的错误信息？</p>
<p>A: 当没有在规定的时间内（即9：00到15：30券商接受委托的时间内）进行银证转账时，券商的电脑可能未开机而导致出现“券商没开通”的提示。<br />
“银行通讯故障”的错误信息可能是因为券商与我行的通讯线路暂时不稳定所致，请稍后在规定时间内再尝试操作。</p>
<p>2. 我在通过个人银行专业版进行银证保证金转活期的操作时为何总显示操作超时“CMBT13”？</p>
<p>A: 出现这种错误提示是表示我行后台服务器不能从券商服务器上取得用户信息。由于必须在券商服务器开机的时间内才能进行银证保证金转账，请直接联系该券商了解相关情况。</p>
<p>3. 大众版、投资系统（银证通）登录程序升级后，为什么我就不能输入卡号密码了呢？有什么解决办法？</p>
<p>A: 此种情况，建议您可以按以下步骤操作：<br />
（1） 工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；<br />
工具-》internet选项-》高级-》点击“恢复默认设置”。　<br />
（2） 假如不行，请进入以下网址，并按照里面说明的操作方法进行设置<br />
http://www.cmbchina.com/personal business/netbank/hb/dzbqa.htm。。<br />
（3） 假如仍不行，请尝试重装IE浏览器或者重新安装电脑的操作系统<br />
（4） 假如还是不行，请按以下步骤操作：<br />
&lt;1&gt;、在以下网址下载压缩包:</p>
<p>https://www.sz1.cmbchina.com/download/CMBEdit.cab</p>
<p>&lt;2&gt;、下载后将CMBEdit.cab里面的文件解压到电脑操作系统的系统目录下：<br />
操作系统 目录<br />
WIN98： WINDOWS<br />
WIN2000： WINNT\SYSTEM32<br />
WINXP/2003：WINDOWS\SYSTEM32<br />
&lt;3&gt;、运行注册命令：<br />
regsvr32 cmbedit.dll</p>
<p>4. 为何我在登录证券行情分析系统时，会有提示“通讯设置错误”？</p>
<p>A: 请先登录其它网站看是否能登录。若登录其它网站没有问题，且您是通过局域网的代理服务器上网，请在局域网内的其它电脑上尝试登录行情主站。假如其它电脑都可以，请参照可登录电脑的通讯设置，修改您的电脑设置，步骤如下：<br />
在行情系统-》系统工具-》通讯设置-》使用代理服务器，点击设置，填写代理服务器IP地址和端口（假如所在的局域网要求用户验证，还要输入用户名和用户口令）。假如不知道所使用的代理服务器地址和端口，请您咨询局域网的网络治理员。</p>
<p>5. 我登录证券行情，总是提示：“无法解析服务器的名称和地址，连接主站失败”，假如更换到其它主站或是重新下载行情分析，仍不能登录，但上其它网站是正常的，怎么解决？</p>
<p>A: 此问题有以下两种情况：<br />
(1) 通过局域网上网，可以在局域网内的其它电脑上试试能否连接主站。假如其它电脑可以连接，请参照可以连接主站电脑的通讯设置（包括浏览器的设置，行情系统本身的通讯设置），修改您的电脑设置。假如局域网内的其它电脑都不能连接主站，就可能是局域网的防火墙屏蔽了证券行情主站的IP地址。请找局域网的网络治理员了解情况，开放证券行情主站的IP地址。<br />
(2) 通过电话拨号上网，请换另一个拨号的号码（譬如神州在线95788，96169等）试试。</p>
<p>6. 我通过一网通证券进行交易时为什么会出现“申请SQL资源失败”的错误提示？</p>
<p>A: 出现这种情况，一般是由于网络比较拥挤，造成网络堵塞。建议您稍候再试，假如您急于交易的话，可以先通过电话或自助终端进行交易。</p>
<p>7. 我从一网通证券网页上能点击“股票”或“基金”进入银证通登录页面，但我点击专业版的“银证通”“银基通”却没有反应，打不开登录的页面，是为什么呢？解决办法是什么？</p>
<p>A: 这种情况出现是因为电脑上安装了某些软件（如OICQ），更改了IE浏览器的一些默认设置，造成一些操作不能被识别。您可以根据以下步骤进行操作：<br />
（1） 请尽量卸载安装的那些软件，再尝试操作。<br />
（2） 如不行，请重装IE浏览器。<br />
（3） 您还可以直接修改IE浏览器的相关设置：<br />
&lt; １&gt; 打开：开始-》设置-》文件夹选项<br />
&lt; ２&gt; 选取“文件类型”标签。<br />
&lt; ３&gt; 请分别编辑以下文件类型打开方式：双击“HTML文档”打开编辑窗口，选中“打开”操作项，然后点击“设为默认值（Ｓ）”，点击“关闭”退出。然后分别双击：<br />
ＵＲＬ：超文本传送协议<br />
ＵＲＬ：带私人验证的超文本传送协议<br />
ＵＲＬ：文件传送协议<br />
以上三项打开编辑窗口，选取“OPEN”操作项，然后点击“设为默认值（Ｓ）”，最后点击“关闭”退出。</p>
<p>8. 我在一网通证券里，使用证券买卖时，输入资金帐号等资料后，点“确定”后出现错误提示“无法取得浏览信息”，我要怎么办？</p>
<p>A: 出现这种情况，请按以下步骤操作：<br />
工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”<br />
工具-》internet选项-》安全-》自定义级别，在“重置自定义设置”里，将安全级别设置为： “安全级—中低”<br />
工具-》internet选项-》高级-》点击“恢复默认设置”<br />
假如仍不行则需请您重新安装IE浏览器。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>预留</p>
<p>再次霸占 外汇问题区</p>
<p>1. 使用外汇买卖时报错误信息： “ACCESS VIOLATION AT ADDRESS 0177554D8 IN MODULE &#8216;PERSONALBANK.OCX&#8217;,WRITE OF ADDRESS 00000028”，为何其它功能可用，外汇买卖不能使用？</p>
<p>A: 出现这种情况是金山毒霸防火墙与专业版证券买卖模块有冲突，该软件的防火墙把证券买卖的一些数据过滤了，就会导致出现这种错误提示。<br />
您可在证券买卖时关闭防火墙，升级、换用其它防火墙，或者下载安装最新的操作系统补丁，升级IE浏览器。然后先卸载专业版，关闭所有其它程序和浏览器窗口，再重新安装一次专业版程序进行操作。</p>
<p>2. 我登录一网通外汇时提示“请先登录，三秒钟后自动引导到一网通主页”，随后系统返回一网通外汇主页，为何会出现这种情况？</p>
<p>A: 出现上述情况有以下两种可能的原因：<br />
（1） 您是从以前保存在“收藏夹”中的地址进入“一网通外汇”的，由于所保存的网页过期，造成登录失败。请您设置IE浏览器：工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；工具-》internet选项-》常规-》删除Cookies,然后从我行主页（www.cmbchina.com）中直接点击进入“一网通外汇”，再登录。<br />
（2） 您使用的电脑设置的日期和时间与当前标准日期时间不一致。首先，请您将电脑的时间设置改过来。然后请您设置IE浏览器：工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；工具-》internet选项-》常规-》删除Cookies, 然后再登录。</p>
<p>3. 我在作外汇交易某些功能无法使用，如查询历史交易等。</p>
<p>A: 直接原因：客户浏览器IE版本低于5.5。<br />
解决办法：请您升级IE。</p>
<p>4. 我在查询外汇历史交易时，出现提示“注重：您查询范围太大，返回的记录不完全，请缩小查询范围”</p>
<p>A: 直接原因：您查询日期范围太大，或在查询范围内的交易太多，请客户缩小查询日期范围。<br />
解决办法：请您缩小查询日期范围。</p>
<p>5. 我在外汇委托界面，输入交易金额，委托提示如”100.00”is not a valid floating point value。</p>
<p>A: 直接原因：您操作系统的设置可能被其他应用修改。<br />
解决办法：请您进入控制面版-〉区域选项，在“数字”选项卡中的“小数点”一项写小数点符号即“.”，不管原来的值是什么，修改完成点击“确定”。</p>
<p>6. 我在用专业版查看外汇专户信息,正常情况下应出现专户信息的一个图表,说明专户现在的情况,但客户那边没有这个图表(应出现图表处空白一片)!而且对于当日已挂盘委托未成交的单,在撤单里也没有任何的反映有可撤单的记录(应出现图表处空白一片)!</p>
<p>A: 直接原因：<br />
1．您浏览器版本太低。<br />
2．浏览器设置有问题。<br />
3．浏览器损坏。<br />
解决办法：请您检查浏览器版本，设置是否正常，假如调整设置还不行，请重装浏览器。</p>
<p>7. 我在外汇委托询价时报“无此帐号(CMB1103”</p>
<p>A: 直接原因：您还没有把活期外币转帐到外汇专户，提醒用户先做“专户转帐”后再做交易。<br />
解决办法：提醒您先做“专户转帐”后再做交易。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>我们全家都喜欢用招行网银购物 （我们家两口人 ）</p>
<p>哈雷：这楼不占了，祝你们两口用招行愉快</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>我预留不够用的话就要占用楼上两位的位子了<br />
感谢对招行版的支持</p>
<p>掌上银行问题区</p>
<p>1. 请问我使用的是惠普2210型号的掌上电脑，在掌上电脑与PC机连接后安装掌上银行时，出现错误提示“招商银行掌上银行不支持目前的设备型号”，我的这种型号不能用吗？什么型号的可以用？</p>
<p>A: 您的掌上电脑的操作系统是Microsoft Windows for Pocket PC 2003，目前的掌上银行软件还不能支持这种操作系统，所以暂时使用不了。目前掌上银行暂时只能在Pocket PC 2000和Pocket PC 2002上使用。（另外，一般要求您的掌上电脑使用软键盘进行输入。）</p>
<p>2. “掌上银行”与“网上个人银行专业版”有什么不同？</p>
<p>A: 掌上银行是网上个人银行（专业版）在掌上电脑平台的延伸，是网上银行与掌上电脑的完美结合。掌上银行远比在PC或手提电脑上使用网上个人银行方便。 掌上银行可以不受时空限制，实时享用银行账户查询、转账汇款、炒股炒汇等功能。 掌上电脑无可比拟的便携性让你把银行放进口袋，握在掌中。，<br />
掌上银行沿用了招商银行网上个人银行（专业版）安全机制。采用严密的X.509标准数字证书体系，运用数字签名技术和基于证书的强加密通讯管道确保客户身份认证和数据传输的安全。</p>
<p>3. 使用&#8221;掌上银行&#8221;，可以进行哪些种类的转帐或汇款？</p>
<p>A: 使用&#8221;掌上银行&#8221;，可以向国内各种银行帐户进行转帐或汇款，包括同城或异地、个人或企事业单位、招商银行或其他银行的各种帐户。<br />
（目前出于安全方面的考虑已关闭掌上银行的转帐汇款功能。）</p>
<p>4. 我在一台PC上安装了个人银行&#8221;专业版&#8221;，并且下载了&#8221;一卡通&#8221;的数字证书，但我想在掌上电脑上使用&#8221;掌上银行&#8221;，应该如何操作？</p>
<p>A: 可以把PC上的网上个人银行专业版的一卡通证书备份出来，操作如下：<br />
通过微软公司的Microsoft Activesync软件将您的PC与掌上电脑连通，将PC上的证书复制到掌上电脑上的某个文件夹中（建议放在My Documents\PersonalBank目录下）；将您的掌上电脑连接上INTERNET，进入掌上银行；选择“证书治理”，进入“证书恢复”，建立用户，设置密码；找到证书文件，恢复证书，证书恢复成功。</p>
<p>5. 若证书快过期了，怎么办？</p>
<p>A: 请及时使用&#8221;证书更新&#8221;功能，一个小时后即可下载新证书，&#8221;证书更新&#8221;不需要到柜台申请。更新后的证书请及时备份。</p>
<p>6. 若证书已经过期了，怎么办？</p>
<p>A: 过期的证书是无效的，在到期后三个月内可以通过“证书更新“功能申请新证书，到期三个月之后，只有再次进行到柜台申请证书，上网确认授权码，一个小时之后下载证书。</p>
<p>7. 若把&#8221;用户&#8221;误删除了，怎么办？</p>
<p>A: 将以前输出备份的证书通过&#8221;证书恢复&#8221;输入进电脑（假如没有输出备份，则须重新申请证书）。</p>
<p>8. 若想知道一段时间内在&#8221;掌上银行&#8221;做了什么业务，应该怎样操作？</p>
<p>A: 应使用&#8221;日志查询&#8221;功能，输入起止日期后，即可查询该段时间内所做的业务。</p>
<p>9. 证书恢复时找不到备份文件？如何处理？</p>
<p>A: 1、将备份的证书拷到\my document\personal bank的目录下<br />
2、不要更改备份文件的后缀名，如没有后缀则从新备份加.cer或.dat即可。</p>
<p>10. 证书恢复时提示：“无效接口长度”<br />
掌上银行软件安装有问题，请从新下载安装掌上银行3.0版软件操作。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>批准，拿去用</p>
<p>企业银行问题区</p>
<p>1. 我登录企业银行不能成功，提示“ACCESS VIOLATION”，是为什么，怎么解决？</p>
<p>A: 您是否新安装或升级了杀毒软件、防火墙等软件。在登录企业银行时，请先暂时关闭这些程序。假如退出这些程序后，再登录错误仍然存在，建议先卸载这些软件，再使用。假如还不行，可以尝试重装企业银行。</p>
<p>2. 一般用户被系统治理员锁住，解锁时需要另一系统治理员授权吗？</p>
<p>A: 不用。系统治理员为一般用户解锁后，用户号随即就放开了。</p>
<p>3. 同一级别的两个授权人，其中一人出差在外，可否只由另一授权人授权支付业务？</p>
<p>A: 假如此级别的授权人数为两个，必须由这两个授权人都授权，业务才能发生；假如此级别的授权人数为一个，其中一人授权后，此笔业务可以发生。</p>
<p>4. 我无法登录企业银行，系统提示“企业银行系统治理员身份证件号码与数字证书卡的身份证件号码不符”，请问这个提示是什么意思？我应该怎么解决？</p>
<p>A: 出现这种提示是因为：您申请时填写的“网上企业银行申请表”中的系统治理员身份证件号码与“企业银行数字证书申请表”中的用户身份证件号码不符。<br />
请填写一式三联的《企业银行维护申请表》，申请表上应加盖预留银行印鉴，要求更改企业银行系统中的系统治理员身份证件号码，结果需达到与数字证书卡的身份证件号码一致。</p>
<p>5. 我是3.8版商务版的客户，使用系统治理员通用版后，“系统治理”是灰白的，为什么？</p>
<p>A: 商务版客户可以使用通用版，但在使用通用版时，不可使用系统治理功能。</p>
<p>6. 我选择企业银行的商务版，输入用户名，密码及附加码后，系统提示“打开c:\firbank\sysprop\0027\fbbankagent.txt时出错”，请问为什么？怎么解决？</p>
<p>A: 出现这种情况请尝试删除C:\firmbank\SysProp目录下的所有文件和文件C:\firmbank\sysdata\FilesToBeDownloaded.txt，再重新登录系统。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>预留</p>
<p>再三霸占</p>
<p>信用卡问题区<br />
1. 登陆信用卡网站的信用卡俱乐部一网通用户登陆时：“您失败次数过多，已被 屏蔽登录，请改天再试”换一台机器就可以登陆。是什么原因?</p>
<p>A: 密码试错次数超过系统许可的次数了。IP或其它一些要素被BLOCK了。一般封锁24小时，无法人工解封。</p>
<p>2. 信用卡俱乐部和一网通用户分别关联信用卡的时候出现错误：“系统正忙，请稍后再试： ORMNOR1882”</p>
<p>A: 原因是系统问题，请稍后再尝试。</p>
<p>3. 我在专业版里面“帐户治理”跟“信用卡”里面看到的信用卡的个数和卡号有点不一样呢 ？</p>
<p>A: “账户治理”—“账户查询”这里看到的信用卡的账号是您通过“专业版治理”&#8212;“证书治理”—“证书关联信用卡”关联成功后看到的卡。<br />
“信用卡”&#8212;“密码治理”&#8212;“交易密码治理”这里看到的是主机按您的身份证件检索到您名下信用卡卡片状态为正常的账户数量，而并不一定是您关联过的信用卡。假如您的信用卡做过非凡处理（比如：到期不续卡）在这里是有可能看不到的。而假如您做过关联，在“账户查询”里是可以看到的，所以就会出现两个地方看到的信用卡数量或者信用卡卡号不一致的情况。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>财富账户问题区</p>
<p>1. 我登录进入财富帐户专业版后，首页不能正常显示，页面显示一些竖条， 而且响应速度变慢。</p>
<p>A: 直接原因：财富帐户首页等页面用到很多IFrame标签，而IFrame标签在IE5.5以上的版本才能正常显示<br />
解决办法：请您升级IE浏览器</p>
<p>2. 我登录进入财富帐户专业版后，进入某些页面时提示脚本错误，不能正 常操作。</p>
<p>A: 直接原因：极有可能是您的IE浏览器版本太低，请您确认IE版本在5.5或以上<br />
解决办法：若是浏览器版本问题，升级IE浏览器至5.5或以上；</p>
<p>3. 我的受托理财产品说明书打不开，提示找不到页面</p>
<p>A: 直接原因：可能网站的信息没有及时更新<br />
解决办法：稍后操作或向客服人员反馈。</p>
<p>4. 我的财富账户登录过程缓慢，且登录过程中似乎死机，不能切换到其他程序.</p>
<p>A: 直接原因：并没有死机。若想切换到其它程序，可以按Ctrl Alt Delete键。<br />
解决办法：按Ctrl Alt Delete键切换到其它程序.</p>
<p>5. 我在登录财富账户后经常提示请重新登录，偶然能进行操作。多见于公司用户。</p>
<p>A: 直接原因：您的网络环境存在多个互联网出口，或IP地址不固定。而服务器的设计及服务器的负载均衡均限制了这种情况。<br />
解决办法：请您在适当的环境下使用专业版</p>
<p>6. 我的财富账户操作反应太慢.</p>
<p>A: 直接原因：专业版登录时提供了服务器选择机制，让用户试一下登录其它服务器看是否有改善。<br />
解决办法：请您试一下登录其它服务器看是否有所改善.</p>
<p>7. 我登陆财富帐户专业版时显示 g_FrameCMBPB Not Found!</p>
<p>A: 解决办法：点“开始”/“运行” ,输入“regsvr32 c：\windows\system32\vbscript.dll”和“regsvr32 c：\windows\system32\jscript.dll”注册成功后关闭网页重新再进入。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>楼上的速度超慢的看来</p>
<p>哈雷：不能直接复制粘贴，格式会乱；还要分类换颜色以便各位看得清楚，所以比较慢，这种帖子慢工出细活</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>其他问题</p>
<p>1. 我在主页点击“大众版”和“专业版”时都没有反应，为什么，我怎么才能正常使用？</p>
<p>A: 该问题主要是电脑软件的问题，常见情况有三种：<br />
（1） 您最近是否有新安装过什么软件，或运行一些杀毒或网络安全的软件，这些杀毒软件和安全防范程序都有可能改变IE浏览器设置。<br />
非凡要请您注重：假如安装了金山毒霸2003，请只安装防病毒主程序，其它工具均不要安装。您可检查金山毒霸2003“选项设置”，选择网页防火墙，找到网页防火墙中 “禁止打开网页上广告窗口”的选项，把这项前面的勾去掉，然后点击确定保存设置。之后重新打开我行主页，再登录网上银行。<br />
（2） 可能是IE浏览器或操作系统出了问题，建议重新安装IE浏览器或换一台电脑操作，且暂时不要安装其它网络优化的工具软件。<br />
（3） 可再按以下步骤设置浏览器：<br />
工具-》internet选项-》常规-》删除文件-》选择“删除所有脱机内容”；<br />
工具-》internet选项-》安全-》自定义级别，在“重置自定义设置”里，将安全级别设为：“安全级—中低”<br />
工具-》internet选项-》高级-》点击“恢复默认设置”。　<br />
（4） 假如通过以上操作仍不能正常登录，建议您直接在地址栏输入我行“大众版”或“专业版”的地址来登录。</p>
<p>2. 客户在浏览器输入：www.cmbchina.com，看到的是其它网站，而不是招商银行网站，原因是什么？</p>
<p>A: DNS服务器错误解析，请重启ADSL设备或联系ISP供给商。</p>
<p>3. 我在登录大众版、银证通交易、信用卡等界面时，出现错误提示“该安全证书已到期或还未生效”，原因是？</p>
<p>A: 电脑时间设置错误，请重新设置电脑的正确时间。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/04/zhaohang-qa-zz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>快捷键代替鼠标 键盘使用技巧</title>
		<link>http://wyj.zhuwo.info/2011/03/keyboard-shortcuts/</link>
		<comments>http://wyj.zhuwo.info/2011/03/keyboard-shortcuts/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 13:01:57 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=301</guid>
		<description><![CDATA[一、常规键盘快捷键 CTRL + 向下键 将插入点移动到下一段落的起始处。 CTRL + 向上键 将插入点移动到前一段落的起始处。 Alt + 空格键 为当前窗口打开快捷菜单。 Alt + Esc 以项目打开的顺序循环切换。 F6 在窗口或桌面上循环切换屏幕元素。 F4 切换至Windows 资源管理器”中的“地址”栏列表。 Shift + F10 显示所选项的快捷菜单。 Alt + 空格键 显示当前窗口的“系统”菜单。 ALT + 菜单名中带下划线的字母 显示相应的菜单。 在打开的菜单上显示的命令名称中带有下划线的字母 执行相应的命令。 F10 激活当前程序中的菜单条。 二、对话框快捷键 按键 &#8230; <a href="http://wyj.zhuwo.info/2011/03/keyboard-shortcuts/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>一、常规键盘快捷键<br />
CTRL + 向下键 将插入点移动到下一段落的起始处。<br />
CTRL + 向上键 将插入点移动到前一段落的起始处。<br />
Alt + 空格键 为当前窗口打开快捷菜单。<br />
Alt + Esc 以项目打开的顺序循环切换。<br />
F6 在窗口或桌面上循环切换屏幕元素。<br />
F4 切换至Windows 资源管理器”中的“地址”栏列表。<br />
Shift + F10 显示所选项的快捷菜单。<br />
Alt + 空格键 显示当前窗口的“系统”菜单。<br />
ALT + 菜单名中带下划线的字母 显示相应的菜单。<br />
在打开的菜单上显示的命令名称中带有下划线的字母 执行相应的命令。<br />
F10 激活当前程序中的菜单条。<br />
<span id="more-301"></span><br />
二、对话框快捷键</p>
<p>按键 目的<br />
Ctrl + Tab 在选项卡之间向前移动。<br />
Ctrl + Shift +Tab 在选项卡之间向后移动。<br />
Tab 在选项之间向前移动。<br />
Shift + Tab 在选项之间向后移动。<br />
F4 显示当前列表中的项目。</p>
<p>三、自然键盘快捷键</p>
<p>在“Microsoft 自然键盘”或包含 Windows 徽标键(简称WIN) 和“应用程序”键(简称KEY) 的其他兼容键盘中，您可以使用以下快捷键。</p>
<p>按键 目的<br />
WIN+ M 最小化所有窗口。<br />
WIN+ Shift + M 还原最小化的窗口。<br />
WIN+ U 打开&#8221;工具管理器&#8221;。</p>
<p>四、辅助键盘快捷键</p>
<p>按键 目的<br />
右侧 SHIFT 键八秒钟 切换“筛选键”的开和关。<br />
左边的 ALT + 左边的 SHIFT + PRINT SCREEN 切换“高对比度”的开和关。<br />
左边的 ALT + 左边的 SHIFT + NUM LOCK 切换“鼠标键”的开和关。<br />
Shift 键五次 切换“粘滞键”的开和关。<br />
Num Lock 键五秒钟 切换“切换键”的开和关。<br />
WIN+ U 打开“工具管理器”。</p>
<p>五、“Windows 资源管理器”键盘快捷键</p>
<p>按键 目的<br />
END 显示当前窗口的底端。<br />
主页 显示当前窗口的顶端。<br />
NUM LOCK + 数字键盘的星号 (*) 显示所选文件夹的所有子文件夹。<br />
NUM LOCK + 数字键盘的加号 (+) 显示所选文件夹的内容。<br />
NUM LOCK + 数字键盘的减号 (-) 折叠所选的文件夹。<br />
左箭头键 当前所选项处于展开状态时折叠该项，或选定其父文件夹。<br />
右箭头键 当前所选项处于折叠状态时展开该项，或选定第一</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/03/keyboard-shortcuts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ubuntu 隐藏 mount 挂载硬盘图标</title>
		<link>http://wyj.zhuwo.info/2011/03/ubuntu-hide-mount-hard-disk-icon/</link>
		<comments>http://wyj.zhuwo.info/2011/03/ubuntu-hide-mount-hard-disk-icon/#comments</comments>
		<pubDate>Mon, 21 Mar 2011 14:51:59 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=298</guid>
		<description><![CDATA[新加了一块硬盘mount到了/media/ext下面了，方法参见： http://wyj.zhuwo.info/2011/03/debianubuntu-installing-a-new-hard-drive/ 但是重启之后，桌面上总是会出现硬盘的图标，有点郁闷。 上网搜了一下，有两种修改方法： 1. 修改路径，mount到/mnt/ext下面。 2. 修改 gconf-editor，app-&#62;nautilus-&#62;desktop去掉volumes_visible的勾。 建议使用前者，后者连优盘挂载的时候也会不显示。]]></description>
			<content:encoded><![CDATA[<p>新加了一块硬盘mount到了/media/ext下面了，方法参见：</p>
<p><a href="http://wyj.zhuwo.info/2011/03/debianubuntu-installing-a-new-hard-drive/">http://wyj.zhuwo.info/2011/03/debianubuntu-installing-a-new-hard-drive/</a></p>
<p>但是重启之后，桌面上总是会出现硬盘的图标，有点郁闷。</p>
<p>上网搜了一下，有两种修改方法：</p>
<p>1. 修改路径，mount到/mnt/ext下面。</p>
<p>2. 修改 gconf-editor，app-&gt;nautilus-&gt;desktop去掉volumes_visible的勾。</p>
<p>建议使用前者，后者连优盘挂载的时候也会不显示。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/03/ubuntu-hide-mount-hard-disk-icon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian/Ubuntu 添加一块硬盘，Installing A New Hard Drive</title>
		<link>http://wyj.zhuwo.info/2011/03/debianubuntu-installing-a-new-hard-drive/</link>
		<comments>http://wyj.zhuwo.info/2011/03/debianubuntu-installing-a-new-hard-drive/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 01:48:54 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=296</guid>
		<description><![CDATA[ubuntu 的help做得非常好，详细的说了添加硬盘的各种方法和步骤，太棒了。 主要有几个步骤： 格式化硬盘/Partition The Disk 去掉保留空间/Modify Reserved Space (Optional) 创建挂载点Create A Mount Point 修改/etc/fstab，挂载硬盘/Mount The Drive 参考链接： https://help.ubuntu.com/community/InstallingANewHardDrive]]></description>
			<content:encoded><![CDATA[<p>ubuntu 的help做得非常好，详细的说了添加硬盘的各种方法和步骤，太棒了。<br />
主要有几个步骤：</p>
<ol>
<li>格式化硬盘/Partition The Disk</li>
<li>去掉保留空间/Modify Reserved Space (Optional)</li>
<li>创建挂载点Create A Mount Point</li>
<li>修改/etc/fstab，挂载硬盘/Mount The Drive</li>
</ol>
<p>参考链接：</p>
<p><a href="https://help.ubuntu.com/community/InstallingANewHardDrive">https://help.ubuntu.com/community/InstallingANewHardDrive</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/03/debianubuntu-installing-a-new-hard-drive/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Java Bitwise Shift Operators</title>
		<link>http://wyj.zhuwo.info/2011/03/java-bitwise-shift-operators/</link>
		<comments>http://wyj.zhuwo.info/2011/03/java-bitwise-shift-operators/#comments</comments>
		<pubDate>Wed, 09 Mar 2011 07:19:22 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[技术为本]]></category>
		<category><![CDATA[文摘转贴]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=294</guid>
		<description><![CDATA[The bitwise shift operators are : &#62;&#62; , &#60;&#60; , &#62;&#62;&#62; &#62;&#62; the SHIFT RIGHT operator &#60;&#60; the SHIFT LEFT operator &#62;&#62;&#62; the UNSIGNED SHIFT RIGHT operator Example 1: the &#62;&#62; opearator applied to positive intgers This example shows the &#8230; <a href="http://wyj.zhuwo.info/2011/03/java-bitwise-shift-operators/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The bitwise shift operators are : &gt;&gt; , &lt;&lt; , &gt;&gt;&gt;</p>
<p><strong><span style="color: #ff0000;">&gt;&gt; </span></strong>the SHIFT RIGHT operator</p>
<p><strong><span style="color: #ff0000;">&lt;&lt; </span></strong>the SHIFT LEFT operator</p>
<p><strong><span style="color: #ff0000;">&gt;&gt;&gt; </span></strong>the UNSIGNED SHIFT RIGHT operator<span id="more-294"></span></p>
<p><span style="text-decoration: underline;">Example 1: the &gt;&gt; opearator applied to positive intgers</span></p>
<p>This example shows the effect of using the &gt;&gt; opearator.</p>
<pre><strong><span style="color: #0000ff;">  
class Bits1{ 
   public static void main(String args[]){
      System.out.println(" &gt;&gt; opeartor");

// shift all the bits in 20 (in binary form) to the right by 2 
      System.out.println("20&gt;&gt;2 = "+20&gt;&gt;2);
    }
}</span></strong>
</pre>
<p>Explanation of 20&gt;&gt;2 = 5</p>
<p>20 in binary is: 00000000000000000000000000010100</p>
<p>shift all bits 2 positions to right 00000000000000000000000000000101</p>
<p>This is 5 (2*2^2+0*2^1+1*2^0) in binary form</p>
<p>参考链接：</p>
<p><a href="http://www.sap-img.com/java/java-bitwise-shift-operators.htm">http://www.sap-img.com/java/java-bitwise-shift-operators.htm</a></p>
<p><a href="http://www.leepoint.net/notes-java/data/expressions/bitops.html">http://www.leepoint.net/notes-java/data/expressions/bitops.html</a></p>
<p><a href="http://en.wikipedia.org/wiki/Bitwise_operation">http://en.wikipedia.org/wiki/Bitwise_operation</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/03/java-bitwise-shift-operators/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What&#8217;s this: __attribute__((packed))</title>
		<link>http://wyj.zhuwo.info/2011/03/whats-this-__attribute__packed/</link>
		<comments>http://wyj.zhuwo.info/2011/03/whats-this-__attribute__packed/#comments</comments>
		<pubDate>Thu, 03 Mar 2011 10:27:02 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[C&C++]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=292</guid>
		<description><![CDATA[今天在Android的代码里面看到了“__attribute__((packed))”，不清楚什么意思，上网搜了一下，大概明白了。就是让struct按照紧凑模式排列，中间不留任何缝隙。这样在不同的处理器，不同的网络传输等情况都不会出现对齐问题了。很好很强大。 参考链接：http://www.linuxquestions.org/questions/programming-9/whats-this-__attribute__-packed-193570/ 后面是摘录网页上的解释，写的很好。 __attribute__((packed)) ensures that structure fields align on one-byte boundaries. If you want to ensure that your structures have the same size on all processors, the packed attribute is how you tell gcc. As an example, let&#8217;s define &#8230; <a href="http://wyj.zhuwo.info/2011/03/whats-this-__attribute__packed/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>今天在Android的代码里面看到了“__attribute__((packed))”，不清楚什么意思，上网搜了一下，大概明白了。就是让struct按照紧凑模式排列，中间不留任何缝隙。这样在不同的处理器，不同的网络传输等情况都不会出现对齐问题了。很好很强大。</p>
<p>参考链接：http://www.linuxquestions.org/questions/programming-9/whats-this-__attribute__-packed-193570/</p>
<p>后面是摘录网页上的解释，写的很好。<span id="more-292"></span></p>
<p>__attribute__((packed)) ensures that structure fields align on one-byte  boundaries. If you want to ensure that your structures have the same  size on all <a id="KonaLink0" href="http://www.linuxquestions.org/questions/#"><span style="color: blue;">processors</span></a>, the packed attribute is how you tell gcc.</p>
<p>As an example, let&#8217;s define this structure:</p>
<div>
<div>Code:</div>
<pre dir="ltr">struct s {
   char aChar;
   int    anInt;
};</pre>
</div>
<p>A processor that aligns on eight-byte boundaries may compile this  so that aChar is in the first byte, followed by seven bytes of unused  space, then starting anInt in the ninth byte.</p>
<p>A processor that aligns on four-byte boundaries may compile this so that  aChar is in the first byte, followed by three bytes of unused space,  then starting anInt in the fifth byte.</p>
<p>To force anInt to begin immediately after aChar, you would define the structure like this:</p>
<div>
<div>Code:</div>
<pre dir="ltr">struct s {
   char aChar;
   int anInt __attribute__((packed));
};</pre>
</div>
<p>To test these ideas out, I ran this code on an old Pentium 166:</p>
<div>
<div>Code:</div>
<pre dir="ltr">#include &lt;stdio.h&gt;

struct s1 {
   char a;
   int  i;
};

struct s2 {
   char a;
   int i __attribute__((packed));
};

int main( int argc, char* argv[] ) {

  struct s1 s_1;
  struct s2 s_2;

  printf( "sizeof s1 is %d\n" , sizeof(s_1) );
  printf( "sizeof s2 is %d\n" , sizeof(s_2) );

  return( 0 );
}</pre>
</div>
<p>And got these results:</p>
<div>
<div>Code:</div>
<pre dir="ltr">eric.r.turner@turing:~/lab/packed$ ./foo
sizeof s1 is 8
sizeof s2 is 5</pre>
</div>
<p>Looks like this processor aligns on four-byte boundaries.</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/03/whats-this-__attribute__packed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>好站推荐：在线读代码 http://www.sooset.com</title>
		<link>http://wyj.zhuwo.info/2011/02/%e5%a5%bd%e7%ab%99%e6%8e%a8%e8%8d%90%ef%bc%9a%e5%9c%a8%e7%ba%bf%e8%af%bb%e4%bb%a3%e7%a0%81-httpwww-sooset-com/</link>
		<comments>http://wyj.zhuwo.info/2011/02/%e5%a5%bd%e7%ab%99%e6%8e%a8%e8%8d%90%ef%bc%9a%e5%9c%a8%e7%ba%bf%e8%af%bb%e4%bb%a3%e7%a0%81-httpwww-sooset-com/#comments</comments>
		<pubDate>Tue, 22 Feb 2011 10:43:50 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[技术为本]]></category>
		<category><![CDATA[网络应用]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=288</guid>
		<description><![CDATA[好站推荐：在线读代码 http://www.sooset.com 同事推荐的，相当强大，注册之后可以自己上传代码，压缩包限制20M以内。]]></description>
			<content:encoded><![CDATA[<p>好站推荐：在线读代码 <a href="http://www.sooset.com">http://www.sooset.com</a></p>
<p>同事推荐的，相当强大，注册之后可以自己上传代码，压缩包限制20M以内。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/%e5%a5%bd%e7%ab%99%e6%8e%a8%e8%8d%90%ef%bc%9a%e5%9c%a8%e7%ba%bf%e8%af%bb%e4%bb%a3%e7%a0%81-httpwww-sooset-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Openproj on Ubuntu (zz)</title>
		<link>http://wyj.zhuwo.info/2011/02/installing-openproj-on-ubuntu-zz/</link>
		<comments>http://wyj.zhuwo.info/2011/02/installing-openproj-on-ubuntu-zz/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 02:10:46 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=286</guid>
		<description><![CDATA[从openproj官方网站下载rpm包 openproj-1.4-2.noarch.rpm sudo apt-get install alien sudo alien openproj-1.4-2.noarch.rpm sudo dpkg -i openproj-1.4-2_all.deb 原文地址：http://sidrit.wordpress.com/2008/10/10/installing-openproj-on-ubuntu/ 解决中文显示问题：http://wyj.zhuwo.info/2011/02/linux-jdk-解决乱码问题，中文字体设置方法/]]></description>
			<content:encoded><![CDATA[<ol>
<li>从openproj官方网站下载rpm包<code> openproj-1.4-2.noarch.rpm</code></li>
<li><code>sudo apt-get install alien</code></li>
<li><code>sudo alien openproj-1.4-2.noarch.rpm</code></li>
<li><code>sudo dpkg -i openproj-1.4-2_all.deb</code></li>
</ol>
<p>原文地址：<a href="http://sidrit.wordpress.com/2008/10/10/installing-openproj-on-ubuntu/">http://sidrit.wordpress.com/2008/10/10/installing-openproj-on-ubuntu/</a></p>
<p>解决中文显示问题：<a href="http://wyj.zhuwo.info/2011/02/linux-jdk-解决乱码问题，中文字体设置方法/">http://wyj.zhuwo.info/2011/02/linux-jdk-解决乱码问题，中文字体设置方法/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/installing-openproj-on-ubuntu-zz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux JDK 解决乱码问题，中文字体设置方法</title>
		<link>http://wyj.zhuwo.info/2011/02/linux-jdk-%e8%a7%a3%e5%86%b3%e4%b9%b1%e7%a0%81%e9%97%ae%e9%a2%98%ef%bc%8c%e4%b8%ad%e6%96%87%e5%ad%97%e4%bd%93%e8%ae%be%e7%bd%ae%e6%96%b9%e6%b3%95/</link>
		<comments>http://wyj.zhuwo.info/2011/02/linux-jdk-%e8%a7%a3%e5%86%b3%e4%b9%b1%e7%a0%81%e9%97%ae%e9%a2%98%ef%bc%8c%e4%b8%ad%e6%96%87%e5%ad%97%e4%bd%93%e8%ae%be%e7%bd%ae%e6%96%b9%e6%b3%95/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 02:06:12 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=284</guid>
		<description><![CDATA[cd /usr/lib/jvm/java-1.5.0-sun/jre/lib/fonts sudo ln -s /usr/share/fonts/truetype/wqy/ fallback 应该就可以了，主要目录要没错。 如果还不行，再执行下面 sudo mkfontscale sudo mkfontdir]]></description>
			<content:encoded><![CDATA[<p>cd /usr/lib/jvm/java-1.5.0-sun/jre/lib/fonts</p>
<p>sudo ln -s /usr/share/fonts/truetype/wqy/ fallback</p>
<p>应该就可以了，主要目录要没错。</p>
<p>如果还不行，再执行下面</p>
<p>sudo mkfontscale</p>
<p>sudo mkfontdir</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/linux-jdk-%e8%a7%a3%e5%86%b3%e4%b9%b1%e7%a0%81%e9%97%ae%e9%a2%98%ef%bc%8c%e4%b8%ad%e6%96%87%e5%ad%97%e4%bd%93%e8%ae%be%e7%bd%ae%e6%96%b9%e6%b3%95/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>收藏几个ios应用的网站和推荐</title>
		<link>http://wyj.zhuwo.info/2011/02/%e6%94%b6%e8%97%8f%e5%87%a0%e4%b8%aaios%e5%ba%94%e7%94%a8%e7%9a%84%e7%bd%91%e7%ab%99%e5%92%8c%e6%8e%a8%e8%8d%90/</link>
		<comments>http://wyj.zhuwo.info/2011/02/%e6%94%b6%e8%97%8f%e5%87%a0%e4%b8%aaios%e5%ba%94%e7%94%a8%e7%9a%84%e7%bd%91%e7%ab%99%e5%92%8c%e6%8e%a8%e8%8d%90/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 01:30:55 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=282</guid>
		<description><![CDATA[IPAD初体验小结及软件推荐 IPAD体验小结第二弹之“游戏”（内附简要游戏攻略哦-0-） http://apptrackr.org/ http://getipa.info/]]></description>
			<content:encoded><![CDATA[<h3><a href="http://wsjxie.blog.163.com/blog/static/3605020105191170470/">IPAD初体验小结及软件推荐</a></h3>
<h3><a href="http://wsjxie.blog.163.com/blog/static/3605020105201849965/">IPAD体验小结第二弹之“游戏”（内附简要游戏攻略哦-0-）</a></h3>
<p><a href="http://apptrackr.org/">http://apptrackr.org/</a></p>
<p><a href="http://getipa.info/">http://getipa.info/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/%e6%94%b6%e8%97%8f%e5%87%a0%e4%b8%aaios%e5%ba%94%e7%94%a8%e7%9a%84%e7%bd%91%e7%ab%99%e5%92%8c%e6%8e%a8%e8%8d%90/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone应用程序推荐 (ZZ)</title>
		<link>http://wyj.zhuwo.info/2011/02/iphone%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e6%8e%a8%e8%8d%90-zz/</link>
		<comments>http://wyj.zhuwo.info/2011/02/iphone%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e6%8e%a8%e8%8d%90-zz/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 12:55:40 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[文摘转贴]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=278</guid>
		<description><![CDATA[本文将为大家推荐一些笔者非常喜欢的iPhone应用程序。 注意，并不怎么包括游戏，因为笔者不太喜欢玩游戏，要玩也只玩小游戏。这也有些遗憾，毕竟iPhone最大的卖点就是丰富的游戏了。本文主要是推荐实用的 软件和系统工具。对新手应该帮助比较大，老鸟们也可以参考一下。推荐的不算是很全。而且本文也不提供下载链接与安装方法。请自己在Cydia、App Store或者网络上搜索。下面进入正文。 第一类：系统工具类。 1、iFile（注：不是App Store里的iFile，而是Cydia里的）。推荐指数：必装。 越狱后，iOS的文件系统就可以随我们浏览了。iFile就是最好的工具。有了它，你就可以像浏览电脑里的文件夹一样浏览、修改、移动iOS里的文件。它基本上和电脑端的iFunBox一样强大；而且，在iFile里还可以安装下载下来的deb文件，很实用。 2、QuickDo.推荐指数：必装。 QuickDo拥有非常强大的手势操作。拥有这款软件之后，你可以完全脱离Home键，而且很多的操作都非常方便。退出程序、截屏、快捷程序、锁屏、语 音控制，所有的这些操作都是如此方便。如果你没有装的话，还不会觉得有什么不方便的地方，但是习惯这款软件之后，你会觉得以前的操作非常不方便。本程序是 中国人开发的，请到官网购买支持之。只有20元，相对于它强大的功能，笔者觉得非常值得。 3、QQ输入法。推荐指数：推荐安装。 现在中文的输入法也有好几款了。像百度、搜狗，最近哈工大也出了一款输入法，还是完全免费。不过笔者觉得最好用的还是QQ输入法。百度输入法反应太慢 了；搜狗笔者没用过，因为它至今还不支持4.x系统。比起笔者以前用过的百度输入法，QQ输入法有更多的键盘选项，更方便的调用和更快的反应速度。但是最 近发现有个不好的地方，就是在启用的时候会比较卡，有时候甚至会导致程序的退出。希望QQ下个版本能改进一下吧。 4、iBlueNova.推荐指数：推荐安装。 苹果为了保护版权，把蓝牙搞得这么封闭，基本上等于没有蓝牙。这款软件可以完全激活蓝牙，使你像在其它手机上一样使用蓝牙。 5、FolderEnhancer.推荐指数：4.x必装。 苹果在4.x上增加了一个强大的文件夹功能，让我们不必每次找程序都要翻好几页。但是像其它功能一样，这个功能只是最基本的，还不能完全满足我们的需 要。这款FolderEnhancer软件可以大大增强iPhone的文件功能。它不光能使文件可存储的程序个数不限于12个，可以全屏展示文件夹，更可 以无限嵌套文件夹！ 6、CyDelete.推荐指数：必装。 经常使用Cydia的朋友都知道想要卸载使用Cydia 安装的程序的麻烦。每次都要忍受Cydia的龟速，卸载完之后还要卡很长时间。但是有了这款软件，你就可以像卸载ipa文件一样卸载用Cydia安全的程 序。只要长按使之晃动，然后再点左上角的叉号，就可以卸载了，多方便！ 7、Safari Download Manager.推荐指数：必装。 iPhone原配的Safari浏览器已经非常强大了，但是它还有一些不足之处，其中之一就是下载方面的不足。使用这款程序，可以很好地弥补这方面的缺憾。只要有链接，就可以下载！ 8、中国区地图校正。推荐指数：地图与定位使用者必装。 我们知道，为了“保护国家机密”，我们屁民被禁止获知自己的准确定位，导致我们经常会发现自己正身处大江上或者荒野外。这款软件可以很好地使我们了解自己，让我们不再飘移。 9、Install0us.推荐指数：必装。 是不是在为每次安装ipa文件都需要用itunes作繁琐的操作感到不爽？有了这款工具，你就可以非常方便地安装ipa文件了。只要把下载下来的ipa文件放到指定目录，然后在手机端就可以安装了。 另，其它像iDos、电池医生、FreeMemory、Chronus、AppCracker的程序，笔者虽然装，但是感觉并不是很有用。大家感兴趣的就装着玩玩吧。 第二类：应用软件类。 1、GoodReader.推荐指数：必装。 GoodReader的功能灰常强大。它的功能包括：阅读、转移、删除doc、docx、xls、xlsx、ppt、pptx、txt、pdf、 html、jpg、mp4等等几乎所有主流类型，除了chm（下面专门会讲），还可以与Dropbox等存储服务、Gmail等邮箱、Google Docs（需要特殊技术）进行绑定，可以通过无线网络使用电脑传输文件，甚至还有FTP &#8230; <a href="http://wyj.zhuwo.info/2011/02/iphone%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e6%8e%a8%e8%8d%90-zz/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>本文将为大家推荐一些笔者非常喜欢的<a href="http://www.williamlong.info/archives/2363.html" target="_blank">iPhone应用程序</a>。 注意，并不怎么包括游戏，因为笔者不太喜欢玩游戏，要玩也只玩小游戏。这也有些遗憾，毕竟iPhone最大的卖点就是丰富的游戏了。本文主要是推荐实用的 软件和系统工具。对新手应该帮助比较大，老鸟们也可以参考一下。推荐的不算是很全。而且本文也不提供下载链接与安装方法。请自己在Cydia、App  Store或者网络上搜索。下面进入正文。<span id="more-278"></span></p>
<p>第一类：系统工具类。</p>
<p>1、iFile（注：不是App Store里的iFile，而是Cydia里的）。推荐指数：必装。</p>
<p>越狱后，iOS的文件系统就可以随我们浏览了。iFile就是最好的工具。有了它，你就可以像浏览电脑里的文件夹一样浏览、修改、移动iOS里的文件。它基本上和电脑端的iFunBox一样强大；而且，在iFile里还可以安装下载下来的deb文件，很实用。</p>
<p>2、QuickDo.推荐指数：必装。</p>
<p>QuickDo拥有非常强大的手势操作。拥有这款软件之后，你可以完全脱离Home键，而且很多的操作都非常方便。退出程序、截屏、快捷程序、锁屏、语 音控制，所有的这些操作都是如此方便。如果你没有装的话，还不会觉得有什么不方便的地方，但是习惯这款软件之后，你会觉得以前的操作非常不方便。本程序是 中国人开发的，请到官网购买支持之。只有20元，相对于它强大的功能，笔者觉得非常值得。</p>
<p>3、QQ输入法。推荐指数：推荐安装。</p>
<p>现在中文的输入法也有好几款了。像百度、搜狗，最近哈工大也出了一款输入法，还是完全免费。不过笔者觉得最好用的还是QQ输入法。百度输入法反应太慢 了；搜狗笔者没用过，因为它至今还不支持4.x系统。比起笔者以前用过的百度输入法，QQ输入法有更多的键盘选项，更方便的调用和更快的反应速度。但是最 近发现有个不好的地方，就是在启用的时候会比较卡，有时候甚至会导致程序的退出。希望QQ下个版本能改进一下吧。</p>
<p>4、iBlueNova.推荐指数：推荐安装。</p>
<p>苹果为了保护版权，把蓝牙搞得这么封闭，基本上等于没有蓝牙。这款软件可以完全激活蓝牙，使你像在其它手机上一样使用蓝牙。</p>
<p>5、FolderEnhancer.推荐指数：4.x必装。</p>
<p>苹果在4.x上增加了一个强大的文件夹功能，让我们不必每次找程序都要翻好几页。但是像其它功能一样，这个功能只是最基本的，还不能完全满足我们的需 要。这款FolderEnhancer软件可以大大增强iPhone的文件功能。它不光能使文件可存储的程序个数不限于12个，可以全屏展示文件夹，更可 以无限嵌套文件夹！</p>
<p>6、CyDelete.推荐指数：必装。</p>
<p>经常使用Cydia的朋友都知道想要卸载使用Cydia 安装的程序的麻烦。每次都要忍受Cydia的龟速，卸载完之后还要卡很长时间。但是有了这款软件，你就可以像卸载ipa文件一样卸载用Cydia安全的程 序。只要长按使之晃动，然后再点左上角的叉号，就可以卸载了，多方便！</p>
<p>7、Safari Download Manager.推荐指数：必装。</p>
<p>iPhone原配的Safari浏览器已经非常强大了，但是它还有一些不足之处，其中之一就是下载方面的不足。使用这款程序，可以很好地弥补这方面的缺憾。只要有链接，就可以下载！</p>
<p>8、中国区地图校正。推荐指数：地图与定位使用者必装。</p>
<p>我们知道，为了“保护国家机密”，我们屁民被禁止获知自己的准确定位，导致我们经常会发现自己正身处大江上或者荒野外。这款软件可以很好地使我们了解自己，让我们不再飘移。</p>
<p>9、Install0us.推荐指数：必装。</p>
<p>是不是在为每次安装ipa文件都需要用itunes作繁琐的操作感到不爽？有了这款工具，你就可以非常方便地安装ipa文件了。只要把下载下来的ipa文件放到指定目录，然后在手机端就可以安装了。</p>
<p>另，其它像iDos、电池医生、FreeMemory、Chronus、AppCracker的程序，笔者虽然装，但是感觉并不是很有用。大家感兴趣的就装着玩玩吧。</p>
<p><img src="http://www.williamlong.info/upload/2410_1.jpg" alt="iPhone" /></p>
<p>第二类：应用软件类。</p>
<p>1、GoodReader.推荐指数：必装。</p>
<p>GoodReader的功能灰常强大。它的功能包括：阅读、转移、删除doc、docx、xls、xlsx、ppt、pptx、txt、pdf、 html、jpg、mp4等等几乎所有主流类型，除了chm（下面专门会讲），还可以与Dropbox等存储服务、Gmail等邮箱、Google  Docs（需要特殊技术）进行绑定，可以通过无线网络使用电脑传输文件，甚至还有FTP  Server功能！实在是太强大了。绝对推荐。比起QuickOffice，它除了少了一个编辑功能（不过笔者觉得没有几个人会在iPhone上进行文档 编辑吧，可能除了word文档，毕竟太麻烦了），在其它功能，包括阅读上，都要好得多。因此不太推荐QuickOffice</p>
<p>2、iChm或者CHMate.推荐指数：有需要的可以安装</p>
<p>两款软件差不多，都是用来阅读chm格式文件的，弥补了GoodReader的不足。它们的功能差不多，因此在此一并推荐，大家只要安装一种就可以了。另外，如果碰到中文乱码的话，请修改编码方式为中文类型的。</p>
<p>3、全国公交线路查询、全国列车时刻查询、全国长途汽车时刻查询。推荐指数：推荐安装。</p>
<p>这三款软件是一个系列的，都非常强大，是外出旅行的必备软件。尤其是公交线路查询，只要输入出发地和目的地，它就可以自动帮你找到乘车方式；而且，它还 是使用本地数据库，不用每次都上网；作者还提供了在线数据库更新，帮助我们更新最新的数据。全国列车时刻查询，甚至在有网络的情况下，携带查询剩余票数的 功能，也很实用。</p>
<p>4、W.TV.推荐指数：推荐安装。</p>
<p>在所有笔者试用过的视频软件里，这一款是比较令笔者满意的。它的功能最全，也比较强大。虽然经常因为网络的原因要缓冲很长时间，但是总体还是不错的。</p>
<p>5、Real World Alarm Clock.推荐指数：有需要的可以安装。</p>
<p>App Store上有许多的闹钟软件，但这款可以说是最好用的。功能足够，设置简单，可以自定义音乐。对于简单的需求来说，够用就好。</p>
<p>6、UC浏览器。推荐指数：推荐安装。</p>
<p>Safari浏览器尽管已经比较强大了，但还是有一些问题。而最新版的UC浏览器，还是有它独特的优势的。比如可以自动调整文字，不必像在Safari里那样因为文字不够大而感到烦恼了。而且7.4版的UC还可以很方便地下载文件，更方便的是它可以安装ipa文件！</p>
<p>7、软件游戏猎手。推荐指数：必装。</p>
<p>这款软件是专门为大家推荐软件和游戏的，在里面可以找到很多实用的软件和好玩的游戏。而且它现在增加了限时免费软件游戏的功能，更加强大了。</p>
<p>8、淘宝。推荐指数：推荐。</p>
<p>不要说，购物非常方便。</p>
<p>9、赶集生活。推荐指数：推荐。</p>
<p>也不用说，赶集网官方出口，经常在赶集上逛的同学可以用。</p>
<p>10、购便宜、百货查价助手、ZOL查报价。推荐指数：推荐。</p>
<p>都是查价格的。购便宜可以比较包括淘宝、当当、卓越在内的价格，帮你挑选更便宜的。ZOL查报价则主要是查询电子产品报价的。</p>
<p>11、Radio CN.推荐指数：喜欢听收音机并有无线网的同学推荐。</p>
<p>iPhone上并没有接收电台的硬件，所以我们只能通过通过网络收听。这款软件包含了非常多的中国电台，可以说是同类里最实用的，足够我们用的了。警告：请不要使用手机流量！无Wifi的同学不要用！</p>
<p>12、Opera Mini修改版。推荐指数：有需要的同学可以使用。</p>
<p>由于某些特殊原因，像twitter、youtube等网站在中国并不存在。不能肉身越狱，并且也没有VPN，但是又有特殊需要的同学可以下载 Opera Mine使用。不过，原版的Opera  Mini并不为我们提供此功能。因此请大家上网搜索教程，对软件进行修改。其实修改也非常简单。完成之后，你就可以无限制地浏览网页了。</p>
<p>13、挖财。推荐指数：有需要的同学可以安装。</p>
<p>功能和界面都很好的理财软件。你可以随时随地记录自己的收入和支出，类别很详细，还可以通过帐号进行上传同步保存。</p>
<p>14、大板凳。推荐指数：推荐。</p>
<p>这是一款非常强大的论坛工具。通过这一款软件，可以登录非常多的论坛，经常上论坛的朋友可以使用。</p>
<p>15、豆瓣电台。推荐指数：有需要的同学可以安装。</p>
<p>这是一款简单的在线听歌软件。它强大的地方在于，拥有智能选择功能！只要你花足够的时间听歌，选出自己喜欢的，和不喜欢的歌，它就能慢慢猜出你喜欢听的歌，并向你推荐。听的时间越长，它猜的越准。</p>
<p>16、虾米电台。</p>
<p>也是一款在线听歌软件。它的功能更丰富，可以搜索歌手、歌名，也可以随便听听。</p>
<p>17、QQ空间、新浪微博、人人网。推荐指数：推荐。</p>
<p>不解释。</p>
<p>三：学习类。</p>
<p>1、WeDict词典。推荐指数：推荐。</p>
<p>这个软件的界面只是一般，但是它有一个强大的功能，就是能够导入从网上下载的词典。只要将下载的词典文件。dict和。idx放入指定的文件中，就可以添加词典了。也就是说，这是一款可以无限扩充的词典。而且，它还支持词语阅读，只要你导入了文件。</p>
<p>2、Talking Dict牛津英汉高阶词典。推荐指数：推荐。</p>
<p>这是一款非常强大的词典，优美的界面，强大的功能，还完整经典的解释，还有美式和英式发音功能，的确不可多得。</p>
<p>3、VOA Player（两款）。荐指数：推荐。</p>
<p>这两款软件，分别是Special English 和 Standard English.从中可以下载听力文件和对应的文章，听非常方便进行听力的训练。</p>
<p>4、iDaily.推荐指数：推荐。</p>
<p>这款软件也是英语听力软件，比上面两款还要强大一些，因为在这款软件上我们可以点击文章的任何部分，听力就可以从那个地方开始阅读，更加强大。</p>
<p>5、班级表（Class Table）。推荐指数：有需要的同学可以装。</p>
<p>这是一个很好的课程表软件，可以设置班级、课程、上课地点，甚至还有单双周的设置，非常适合大学课程。</p>
<p>四、游戏类。</p>
<p>1、Montezuma.推荐指数：推荐。</p>
<p>经典小游戏“蒙特祖玛的宝藏”iPhone版，炫丽的界面，流畅的操作，比电脑上还要好玩。</p>
<p>2、QQ斗地主。推荐指数：推荐。</p>
<p>有单机版和在线版。单机版虽然有点弱智，但是没有网络的时候还是可以玩玩的。而登录QQ的话，还可以在线对战。</p>
<p>3、植物大战僵尸。推荐指数：必装。</p>
<p>不解释。塔防类的游戏是最适合iPhone的游戏类型了。这款游戏就是个代表。</p>
<p>来源：读者投稿，<a href="http://goo.gl/vljJY" target="_blank">原文链接</a>。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/iphone%e5%ba%94%e7%94%a8%e7%a8%8b%e5%ba%8f%e6%8e%a8%e8%8d%90-zz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>一个女留学生在美国的七年（转载）</title>
		<link>http://wyj.zhuwo.info/2011/02/%e4%b8%80%e4%b8%aa%e5%a5%b3%e7%95%99%e5%ad%a6%e7%94%9f%e5%9c%a8%e7%be%8e%e5%9b%bd%e7%9a%84%e4%b8%83%e5%b9%b4%ef%bc%88%e8%bd%ac%e8%bd%bd%ef%bc%89/</link>
		<comments>http://wyj.zhuwo.info/2011/02/%e4%b8%80%e4%b8%aa%e5%a5%b3%e7%95%99%e5%ad%a6%e7%94%9f%e5%9c%a8%e7%be%8e%e5%9b%bd%e7%9a%84%e4%b8%83%e5%b9%b4%ef%bc%88%e8%bd%ac%e8%bd%bd%ef%bc%89/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 12:19:21 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[五味人生]]></category>
		<category><![CDATA[文摘转贴]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=276</guid>
		<description><![CDATA[Received a message from a friend this morning: - it has been 7 years since the flight from shanghai to RDU! so I replied: - Yeah, isn&#8217;t time flying? 2003年8月12日，到今天正好来美7周年。对我来说，5年感觉挺短，10年就觉得很长，数字7么，不长不短的，写点东西好像正好。 7年如果看做一个可以移动的框，放在人生的初始，是从襁褓到走进小学，再往后挪挪，是从小姑娘变成大姑娘，再后面就是从离家一天都想家的宅女到只身去北京上学。而现在的这个框是在异国他乡度过的22岁到29岁这段人生最美丽的时光。 在美国这7年，是一场游历，一场冒险，一场人生观的洗礼。从平凡到努力追求光环，到回归平凡。从cultural shock，到适应这里的生活，到reverse cultural shock，到能够在中国美国之间自如地穿行。 有那么多事情看着一头雾水，居然慢慢也能学会，然后做好。有那么坎好像真的过不去了，却也终于安安稳稳全都跨过。也许没有了身边父母的指引，朋友的影响，反而更容易长大，更懂得珍惜。 这何尝不是一种领悟 让我把自己看清楚 谨以此献给过去的7年 谨以此憧憬那未知的将来 &#8230; <a href="http://wyj.zhuwo.info/2011/02/%e4%b8%80%e4%b8%aa%e5%a5%b3%e7%95%99%e5%ad%a6%e7%94%9f%e5%9c%a8%e7%be%8e%e5%9b%bd%e7%9a%84%e4%b8%83%e5%b9%b4%ef%bc%88%e8%bd%ac%e8%bd%bd%ef%bc%89/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Received a message from a friend this morning:<br />
-   it has been 7 years since the flight from shanghai to RDU!<br />
so I replied:<br />
-   Yeah, isn&#8217;t time flying?</p>
<p>2003年8月12日，到今天正好来美7周年。对我来说，5年感觉挺短，10年就觉得很长，数字7么，不长不短的，写点东西好像正好。<br />
<span id="more-276"></span><br />
7年如果看做一个可以移动的框，放在人生的初始，是从襁褓到走进小学，再往后挪挪，是从小姑娘变成大姑娘，再后面就是从离家一天都想家的宅女到只身去北京上学。而现在的这个框是在异国他乡度过的22岁到29岁这段人生最美丽的时光。</p>
<p>在美国这7年，是一场游历，一场冒险，一场人生观的洗礼。从平凡到努力追求光环，到回归平凡。从cultural shock，到适应这里的生活，到reverse cultural shock，到能够在中国美国之间自如地穿行。</p>
<p>有那么多事情看着一头雾水，居然慢慢也能学会，然后做好。有那么坎好像真的过不去了，却也终于安安稳稳全都跨过。也许没有了身边父母的指引，朋友的影响，反而更容易长大，更懂得珍惜。</p>
<p>这何尝不是一种领悟</p>
<p>让我把自己看清楚</p>
<p>谨以此献给过去的7年</p>
<p>谨以此憧憬那未知的将来</p>
<p>2003-2004 第一年</p>
<p>出 国那年赶上美国这边砍research  funding，中国SARS爆发，总之offer很少，签证更是前无古人后无来者得难，每天只过有限的几个。当时学校实行封闭制，出个校门要上报到学校   党委，好不容易批准了出去签个证。怕坐地铁，坐公车传染，居然和朋友两人从五道口一路骑车去的大使馆。那天我所见到的那群签证的人里面，一共过了两个，我  和我的朋友。回来的路上，我们一路都在day dreaming美国的生活，就好像那个原本陌生的国家忽然变得那么近了，看得见摸得着了一样。</p>
<p>事实证明，那天的想象和现实差的很远，美国和中国仍然隔着12个小时的时差。</p>
<p>登  陆美利坚的那天，我们12个人，结伴从上海飞往北卡。我小心翼翼得看管着自己的两个158，外加手里一个塞得鼓鼓囊囊的登机箱，因为那时候，这些就是我在   美国赖以生存的全部家档。没有高楼，没有华丽的装修，有的是蓝天白云，红花绿草，和之间那些漂亮的小房子，和想象里的美国挺不一样的。在最初的几周里，忙   碌得穿梭在学校的各个地方，参加各种orientation，吃各种免费饭，自己几乎没有开过火。于是给爸妈男朋友打电话，告诉他们这里的生活真好啊。唯  一遗憾的是英语测试口语和笔试都没过关，被学校要求上英语补习课，要强的我郁闷得哭了两场。</p>
<p>当  最初的新鲜感慢慢淡去，学校开始上课，免费饭活动基本结束之后，生活开始走向美好的反面，无聊和单调渐渐笼罩了我。在北卡没车寸步难行，我没车，有也不会   开，所以出了学校去哪儿都要求人带。带人买菜逛街吃饭的通常是一帮子师兄们，他们问我有没有男朋友，我说有，关系很好，他们就不来带我了。还好我室友比我  聪明，告诉人家男朋友出国前分了，所以师兄们就乐颠乐颠来带她，我就每次也蹭个座。</p>
<p>我  们系里（工程专业）有一半以上是中国人，剩下的也是印度的，南美的，和广大第三世界国家的，英语全都说不利索，所以大家默认只和自己国家的人hang  out，用母语说话。我老板是中国人，组里除了一个土耳其小伙，清一色中国人，老板知道大家英语不好，所以要求大家在学校不可以说中文，要用英文交流。中   国人和中国人说英语是一件很变扭的事情，所以我们决定不到万不得已就不说话，大家自顾自埋头做research。上课老师讲的话我能听懂1/3，能猜到1   /3，剩下1/3听不懂，好在班里有美国同学，老师一提问或者让大家提问题，他们就冲上去了堵炮眼了，不用担心会问到我们头上。我们老板上课我都能听懂，  因为他不太说，在黑板上一黑板一黑板得写公式，美国同学全部lost，我们中国学生能follow。Office  hour我是不去的，有问题我也问不清楚，有那个空问自己琢磨会儿就明白了。</p>
<p>我  不会做饭，我以为我会，因为我看过我爸做饭，觉得不难。我室友比我放弃的早，她每天早上剁一堆的生菜，一天就吃沙拉。吃沙拉我受不了，吃冷三明治我都反  胃，我是中国胃，在吃了一阵方便面煮蔬菜之后，我决定自己尝试做菜。煮坏了两个汤锅（烧干了）一个炒锅之后，我发现做菜的真理在于xx炒xx，你把一样荤   菜，一样蔬菜放在一起炒，放一点盐，一点糖，一点味精，出来就是一道菜。好像我们同去的一帮人都有差不多的感悟，因为在一段时间之后，我们开始互相邀请吃   饭，或者是一起聚餐，大家的菜都大同小异，不过是不同的xx炒不同的xx，大家都为自己饿不死了而感到很骄傲。我不喜欢买东西，因为买什么都要乘以8，乘  以8之后什么都觉得贵，觉得贵又没钱就有一种心疼的感觉，跟着师姐去过一次mall，和中国衣服一样好看的都比中国贵，和中国衣服一样价钱的，都比中国  差，只有化妆品看着还行，于是买了一支眼霜回来了，送了我一袋子的礼物，受宠若惊。</p>
<p>这  样的日子过了一个学期，老板很喜欢我，因为我听话，学东西又快，而且除了吃饭睡觉，我没什么别的事情干，所以有无数时间给他干research。第一学期  三门专业课，全部都是A，只有英语课得个B，总结一下，考试写公式和数字的哪怕上课听不懂也是A，如果是用英语的，就没戏了。</p>
<p>如 果不是因为她的出现，生活也许就这样平平淡淡过下去，在science的奇妙世界里曲高和寡。她是我们的engineering  school  的dean，stanford博士，我佩服她不是因为她research做得好，事实上她好像都不怎么做research了，而是她的优雅，她的言谈，她  的魄力。她让我明白到，在美国，每个人都有机会，但你必须有勇气，敢想敢做，敢表现自己。Perception is  reality，如果不能有漂亮的表达，就不能得到别人的尊重，因为别人看不到你，也就看不到你身后的成就。我问自己，你为什么要来美国？如果你来美国就   是为了生活在中国人的圈子里，用中国的方式生活，用中国式的思维处事，用中文和人说话，吃自己做的蹩脚中国菜，蜗居在电脑前推公式写程序读paper，那  么你没有必要来美国，这些事情在中国你完全可以做的更好。If the point of coming to a foreign country  is to have the &#8220;experience,&#8221; then you have to open up to it.</p>
<p>所 以我决定走出我火柴盒一样的生活空间。You can&#8217;t fill a cup that is already  full。所以第一步是要让自己改变习惯。我鼓励自己用英语去思考，开始很难，因为一不留神想东西就用中文了，但是用中文思考然后翻译成英语说出来，比直  接用英语思考会慢很多，表达会比较生硬。我给自己创造各种各样听和说英语的机会，我去参加学校的，各个系的，本科生的研究生的event，和不同的人聊  天，学到什么就在自己心里默念几遍，然后找一切机会现学现卖，social对于我们来说不单单是学语言，也是学生活，学交际，扩大朋友圈子，很简单的道  理：局限在中国人的圈子里是无法真正体验美国生活的。晚上从办公室回家的路上没有人和我说话，我就自己和自己说，我还给各种customer  service  打电话（现在知道很多其实是印度人在接哈，不过那时候就是印度人英语也比我好），和他们argue，和他们询问这个那个的服务，他们的工作就是陪顾客聊  天，所以你说，他们就得陪着，就这么简单。我也去mall和sales聊天，谈话通常从我指着一样东西问what is  it开始，然后人家说了以后，我paraphrase，用自己理解重新说一遍，到人家说exactly为止。渐渐的，我体会到用非母语把一件事情说清楚，  把一个观点表述清楚，甚至把一个人说服了，是技巧，更是艺术。这些技巧我用在和老板开会说research上，老板夸我presentation  skill很有进步，以前每次老板问个什么，自己心里明明知道，但就着急怎么说都说不清，慢慢地，被问什么都不慌了，想几秒钟，用浅显的方式先把事情说清  楚，对方明白个大概，再加detail，就容易理解了，就好象小波分析一样。</p>
<p>第  二学期除了修三门专业课，我还跑去修了本科生的accounting，MBA的一个consulting课，还有心理系的课，反正我喜欢什么去学什么，我   当我在美国上第二个本科了，呵呵。学校经常请各种各样的人来做seminar，speech，除了学术的，还有很多人文的，一般是吃饭的点，我经常去，连   饭也解决了。我参加研究生学生会，我们系外国学生多，都没啥民主意识，我冲出来volunteer，理所当然就成了我们系代表了，每周在会上要发言说说自   己系里同学的活动心声，回来要和系里同学说说学校有什么机会啥的。因为做了系里的代表，名字就会被抄送来抄送去，系里的老师就都知道我了，觉得我是小学生   头，有什么大事都还告诉我一声啥的，我们dean都定期和我有appointment，聊点这个那个的事情，从我这儿听听学生的声音，我有了更多接触她的  机会，她告诉我了很多她的故事，一步步成功的经历。她说，you can do better than me, if you keep up  the good work. 这话我至今记得，也许在于她（美国人很善于赞扬人哈）只是随口一说，对于我却是莫大的鼓励。</p>
<p>当 了代表没几个月，就赶上全国开研究生大会，在DC，作为我们研究生会里少数minority面孔，我就被选中代表学校去开会，以显示我们的  diversity。于是我屁颠屁颠地坐着同去的美国同学的车，来到了DC这个七年后我生活工作的城市，在capital  hill上做lobby，挨家的去找senator要求取消研究生stipend的征税，呵呵，在中国，要见个领导有多难，在美国，我第一天上学就见到了   校长，去趟国会山，就见到好多senator，无论政治家们内心有多阴险，他们看上去都好nice，有个senator还让我在他办公室坐着拍了个照，我  给爸妈发回去，差点没轰动了我们半个城市。我和DC一见钟情，喜欢它干净的街道，尤其喜欢national  mall一片，爱死了那些博物馆们，那时候脑子里有一闪而过的念头，我以后要到DC来就好了。</p>
<p>天知道呢，也许就是这样一闪念的东西往往在我们潜意识里牵引我们，等我们有一天走到了，忽然发现，原来你心早有所属。</p>
<p>2004-2005 第二年</p>
<p>第  一年的暑假我回国了，老板很不情愿，希望我留下做research，但我坚持，他也没办法。我老板的学生都很听话（系里的中国学生其实都很听话），所以让   他最头大的估计就是我了，我的labmates一般老板说什么就算心里不高兴也不敢吱声，回到lab里又抱怨，我有什么不同意的，我就丁是丁卯是卯和老板  说，谁说得过谁就按谁说的做，被说服了就去做，心里没结很舒服。</p>
<p>再  回到学校的时候，有很多事情变了：我男朋友也来了（巧得很，他也是8月12号来美国的，所以今天也是他的6周年纪念），我的世界一下子就多了很多两个人可  以做的事情，吃饭，逛街，看电影都有乐趣了。我买车了，在挑选了三个月之后，花3000大刀买了一辆7年新的Nissan  Altima，花了我当时积蓄的大头，我开车很有天赋，以前没有摸过方向盘，晃晃悠悠在学校停车场学了两次之后，居然就上路了，两个礼拜就拿到了驾照，有   了车世界就大了很多，其实世界就那么大不是吗，只是你能看见多大就觉得它有多大，或者说想看见多大才能看见多大。我当上了中国学生会的主席，颠颠地组织大   家去接新生，去学校要钱然后办活动，因此和学校的很多部门都搞得很熟很熟，其实私立学校都是很有钱的，这些钱来自于学生，所以里面有一块是专门留给学生花   的，你找一个好的理由去要，它就会给你，给你很多，然后你就可以去做点事情，这个取之于民用之于民的道理在美国其实是民主的一部分，政府花钱也是一样，你   想少交一分钱税是很难的，比你想个办法去申请笔funding要难。这些经历让我懂得了，在美国，有很多很多这样那样的机会，但它们不会砸到你头上，而是  得你去争取，你得告诉别人你想要，如果有好几个人要，你就要告诉别人为什么应该给你而不是别人，为什么你的想法更值得被fund，任何事情，如果有  competition，就要敢挺身而出，捍卫自己的想法，hold your  position，否则就算事实上事情做得比人家好几倍，还是会输。有一次我看到一个在夏威夷开的东西方交流的会议，觉得自己可以去讲讲在学生会做的如何  推动中美文化交流的事情，从投稿被录取，然后去学校pitch travel  funds支持我去开会，最后成行，我再次体会到了，没有什么事情是不可能的，关键是想不想做，怎么去做的问题。我没申请过research  grant，但想必万事都是相通的，道理应该也差不多。</p>
<p>第  二年在research上遇到了一些瓶颈。我不太喜欢我老板给我的题目。我的老板是属于很nice一类的，很典型的中国学者，聪明（博士读了两年半就毕业  了），努力（拿到tenure以前是7点来lab，11点走），但是不是一个好的business man，不善于sell  ideas，不善于言谈，所以纵然学术很强，也受人欺负。所以他对学生的要求也一样，希望大家勤能补拙，表达的缺陷用加倍的学术水平来弥补。这点上，我心  里并不赞同。我本来research就很一般，比中国同学差，比美国同学好点，如果再来个做8分，只能讲出4分，就彻底没竞争力了。我知道我跟着我这  nice的老板估计肯定是朽木一块了，所以我决定自救。我们那学校的EE一般，但是BME很强，我对医学的东西也比较感兴趣，我和老板说我想做医学应用，   老板回答，我没钱。我见过有人读到一半转系的，有人转老板的，有人被老板派去和别的系一起做项目的，但我没见过学生自己去找合作项目搞钱的，不过我想试试   也无妨，美国没什么不可能的。所以我就去BME系找老师。我去学他们的原理，然后sell我的算法，告诉他们我的东西可以给他们带来什么好处，还真的让我   在一个全国有名的组里找到了一个很好的应用，对方同意教我数据采集，用他们几百万的机器做实验，然后用我的算法处理数据，于是两个老板就用我的idea写   了个proposal，很快拿到funding，我就开始做我想做的事情了。然后我又想反正我也在BME做research了，不如拿个BME的MS，有  此想法跑到grad  school一问，回答说理论上可以，但是如果想不交学费，必须EE的老板同意，EE的系主任同意，BME的老板同意，BME的系主任同意，再加研究生院   院长同意，被告知难度比较大，至今还没有先例。我发现我的中国式思维真的开始变了，以前我会想一件没有先例的事情多半也做不成，做不成不如不要去做。而那   时候我却想，如果一件事情没有先例，那么我就可以放手一搏，做不成无所谓，大不了就还是没有先例，做成了我就是第一个了。无数的persuading，无  数次地defend自己的想法，当我最终拿到五个人的签字的时候，觉得太有成就感了。</p>
<p>和 我的EE老板不一样，我的BME老板是一个很好的sales  man，美国人，很聪明，他数学物理计算机医学都懂一点，都不精通，组里有很多postdoc甚至phd比他强，但之所以他是大老板完全在于他的管理能力   和表达能力，你和他说个东西，他很快能明白，然后用华丽而浅显的方式再表述出来的时候，你会惊叹，原来我的idea是那么brilliant。所以我决心  向我的EE老板学治学，向我的BME老板学academic sales，取长补短。</p>
<p>我  身边学理工科的学生大多很专一，每天想的就是research，大家平时见个面，三句又说到research上，好像别的就没什么可说的了。我比较喜欢折   腾，坐不太住，一个礼拜做一件事情会疯掉的那种（其实这也注定我不是做research的料）。所以我就满世界的找事做，除了去参加各种社团活动之外，我  就跑各处去上课，我在business school，medical school，law  school都上过课，反正PHD学生多选课是不要钱的。bschool和law  school的课和engineering的课很不一样，很多reading，很多课堂讨论，每个人都suppose要发言，要take  participation，相比之下对表达的要求比engineering  school更高。开始是不适应的，憋半天把答案在心里说了好几遍才敢举手，慢慢也就习惯，想到什么就说什么，其实那些classmates说的仔细想想  也实在是很平常的东西，人家自己觉得很brilliant，说出来就中气十足的，我也有我自己unique的想法，说出来就完了。business  school那个老师特别喜欢我，秋季学期上完课的之后，问我愿不愿意做春季课的TA，于是我又颠颠得给MBA做了一学期TA。工程系的PHD跑去  Bschool做TA，我不知道我是不是又是史无前例。</p>
<p>2005-2006 第三年</p>
<p>在  这里不得不说说我的男朋友，爱折腾如我，他总是一如既往的支持，做得好就表扬我，做得不好就提醒我，失败了鼓励我，被人批评了他顶我。他本来是要本科学校  读博的，我走了之后几个月，他思前想后还是quit了，然后申请出来和我在一起。现在想想，两个人在一起真的是最重要的事情，如果我们做很多了不起的事  情，没有对方在身边分享，那也没有什么意思。</p>
<p>第 三年搬家住进了house，在一个single family  house的neighborhood里，有一个小院子。我是一个完美主义者，做什么事情都要努力找最佳契合点，买东西要买好的，但又不能贵，我们住的  house拿到了一个特别好的deal，2000多sf，只收$450一个月，包水电utility，比住apartment环境好很多，却反而便宜，房  东的条件只是要我们定期割下院子的草，等于house  sitting，对我们来说，割个草有什么难的，当是去趟gym了。都说中国人经常讨价还价，其实在美国才真的是什么都可以negotiate，买家具，  买床垫，找任何的服务，租房子，在mall里买个skincare送礼物，全部都是可以negotiate的，只要你有砝码就可以谈。而  negotiate的关键不是在于你知道你要什么，而是在于你知道对方可以接受什么。任何时候，if you think in his shoes,  you will find the best deal for yourself.  尽管你始终是在关心自己的gain和loss，但话到嘴边，讲得一定是对方的gain和loss。这个事情当我多年后上negotiation课的时候，   惊叹当年我实践得出的经验与真知如此接近。男朋友不是一个好的negotiator，但是找deal巨牛，所以我们算是很好的搭档。虽然stipend不  高，虽然我们东西买的都不差，saving却涨得挺快的。</p>
<p>经 过两年孜孜不倦得英语训练，开始有人见面夸我your english is really  good了。我颇开心了一阵，后来我想了想不对，其实这只能说明我的英语对方能听懂，但是同时对方很轻易就能听出来我是外国人，所以才会自然得夸英语好，  什么时候听见美国人夸另一个美国人英语好来着。于是我对自己说，你还有很长路要走呢。英语有三个境  界，vocabulary，pronouciation，intonation，刚来时候结结巴巴不知道怎么说，颠来倒去那几个词，那是  vocabulary问题，我的pronouciation还可以，所以要提高就要在intonation上下功夫。这个东西，无他，唯手熟尔。留意别人  说话的语调，然后模仿，这个和我小时候练书法一样，开始就是临摹，到你写100遍的时候，提起笔来就可以写自己的style了。</p>
<p>第  三年的research做得没什么波澜，第二年末就顺顺利利把master给拿到了，第三年春天又把prelim做了。我已经慢慢变得喜欢写东西，喜欢  presentation了，写程序我写不过我的labmate，但是答辩我要强点，我们系里有几个老师对中国学生不太友好，原因是觉得中国学生的  presentation太差，听不懂，所以他们就喜欢答辩时候问问题来challenge你，我们系学生请committee  member都绕着走。我就喜欢去惹这些tough的人，比较有挑战性，如果一场答辩是因为你的committee放你一马而过的，那过了又有什么意思。  我答辩完了，我的committee member总是会和我老板说，嗯，你这个学生不错，所以我老板每次都很高兴。</p>
<p>PHD  的定义是你毕业之后不出意外的话应该是做research的，约定俗成有两条路，academia或者industry，我们系毕业去academia的   很少，一般都是那几个美国学生，国际学生因为这个那个的原因，多半都是去industry。我两个老板都很想我去做faculty，中国老板觉得我表达很  好（相比于中国学生），美国老板觉得我学术不错（相比于美国学生），其实我知道我都是三脚猫，为人师表，有点惭愧。另外，有件事情基本让我把  academia的门关上了。我老板让我写过一篇paper，是第一年时候做的一个东西，实话实说，我觉得没什么东西，事实证明，也是peer  review批评比较多，我和老板说，要不算了，这玩意就算有发明也是点皮毛啦，没做什么实际的贡献。老板听我一说upset了，他指着他那满书架的  IEEE杂志，说你看看这一堆东西里面有几个是真正的revoluntion，多数的文章就是在灌水。这件事情对我影响很大，一个人不需要做什么惊天动地  的大事，但是对自己做的事情必须有认同感，如果做学术的自己都觉得自己在灌水，理由是身边大多数人也是在灌水，那么我不明白我为什么要去做它。</p>
<p>所  以academia就被我否决了，剩下industry觉得可以去试试，毕竟industry做的比较实用，哪怕技术上讲不怎么惊天动地，能带来真实的产   品提高或者成本降低，也算是有意义的事情。于是第三年的暑假就联系了行业里的三强之一S公司的研究中心去实习。这个研究中心在NJ靠近Princeton   的地方，环境很好，第一个礼拜做得挺有味道的，因为在公司做research和在学校做还是挺不一样的，而且我C不好，公司实现都要用C，所以开始还颇觉   得有挑战性。但没过多久那种无聊的感觉又来了，每天完成工作真正需要的时间只要2-4小时不等，也就是说一天有一半时间是荒废掉的，无论是等程序运行，上   网闲逛，还是和同事聊天，哗啦时间就过去了。郁闷的我后来只能每天去gym消磨时间，3个月intern减了30磅下来（这个收获真不小）。这个site   的另外一个问题是中国人印度人太多，做事方式还是中国那一套，我们组manager是中国人，人很nice，但是英语表达实在很抱歉，所以他能不说英文就  不说，组里反正基本是中国人。大家平时也基本说中文，中午大家都带饭，然后热了在一个大multipurpose  room里一起吃，吃饭的时候中国人和中国人做，印度人和印度人做，剩下的欧洲同事就和欧洲同事一堆。大家在一起吃饭就说些鸡毛蒜皮的小事，或者讨论一下   bbs上的哪个坑，在要不就是说research，反正这个site后来是把MITBBS屏蔽掉的，员工上班不能上，可见这地方有多中国圈。我觉得这个工  作的pay很对得起所付出的劳动，但是那些正式员工告诉我，相比于别的公司的Research Center，这里是算比较累的，而且在high  tech领域，尤其研究中心，外籍的比例就会很高。这个挺打击我的，也就是说如果在industry工作，就要准备好过这样的生活，轻松，高薪，但是封  闭，没盼头，还要deal with亚洲人特有的办公室政治（有话开会不说，底下斗得厉害，对上面言听计从，对下面就压，下面做得好就像take  credit）。我现在很庆幸我去做了这个intern，这是体验生活的最好方法，有时候理性得去看待一些书面的材料，比如薪  水，location，career path等等，都是抽象的，不如深入其中，闭上眼睛，follow your  heart去体会：这是我未来10年想做的事情，想呆的地方吗？intern完之后，我的答案已经很清楚了。平心而论，我知道这个地方是很多人梦寐以求想  去的，工资高，地方好，做的东西还算是比较有意思的，maybe it&#8217;s just my cup of tea.  Maybe industry  overall is just not my cup of tea.</p>
<p>2006-2007 第四年</p>
<p>从 S intern回来，得到一个噩耗，老板说我们那个项目到期，本来是自动要续的，funding  cut，明年5月到期，老板说，要么找点别的东西做，要么就快点做，争取5月毕业。从说这句话开始到5月，还有8个月的时间。如果我要毕业，就意味着要在  8个月里把prelim  propose的那堆东西做完，要写论文，要准备答辩，然后还要找到工作，不是任何一份工作（找一份应该对我不太难），而是一份合适的工作，然后要搞定工  作签证问题（否则身份就有问题了）。老板说你可以试试，但我strongly  doubt你能做到，如果你做得到，那么你是一个superwoman（这些是老板原话）。老板说此话不是没有根据，那时候funding  cut不单单是我的项目，组里别的同事也都差不多处境，老板通知他们的时候，他们一般已经prelim一段时间了，但是即便如此，on  average，他们的毕业时间是一年半到两半（after  notice），而且有些最后还是老板去帮求情committee放一马过得，毕竟这个过程有很多困难，很多未知因素，delay是很正常的事情。我对做  超女不感兴趣，但是我不想好好的去修改research  topic，很有可能又要做自己不想做的东西，而且能早毕业是件好事，我老板25岁拿到博士，我没那么牛，但是26岁至少应该试一试。funding  cut不是我能左右的事情，但是8个月毕业这件事情成不成不在天，在我。我有控制权的事情，我就应该去做到它。</p>
<p>Committement is nothing without a good planing.   有想法没行动=白日做梦。把所有要做的事情都详细列出，把所有可能的困难都想一遍，具体的timeline，并且想好fall back  plan，虽然事情很多，但是如果我把每一天当一天用，还是可以做得很轻松的，我甚至还安排了thanksgiving去cruise，然后春节回国过年  （正好写论文）。有了计划事情忽然就简单了，因为我只需要按计划做就是了。research是按部就班的，自己多和老板们交流，确认每一步都是on  the right  track就行了。找工作相比就太需要主动了，尤其是在决定了不去做faculty，而且犹豫还去不去industry之后，一时间基本咩有头绪我到底要  去干什么，去了一些career center的活动，找一些alumni咨询，看各种论坛，慢慢就有点想法，觉得做management  consulting还挺好的，尤其M大公司有个APD program，专门招advanced  degree的，所以就投了些简历，很快就有一些回音，收到M的第一轮面试通知，表现不错，进了第二轮，我们学校当时进第二轮的有那么7-8个人，我和另  外一个中国人之外，其余都是美国人，大家就组织了个case study  group，分享资源，一起练习什么的。大家一来两去的都成了很好的朋友。第一和第二轮面试之间，M给很长时间，目的恐怕就是让你去练习，对半路出家的  PHD学生来说，case  study是新事物，而consulting的一个重要能力就是快速的学习和消化东西，所以这个break应该是测试的一部分。consulting还是   很适合我爱折腾的性格的。其实早在来美国之前，我在申请PHD的同时也申请了MBA，有admission，但是我读不起，当时并不知道本科毕业也可以申  请law  school，不过即使申了，结果也一样读不起，读大学开始我就已经不再向父母要钱，学费用每年的奖学金cover，生活费就靠家教和做翻译，出国上学这  点上也是早就决定要自食其力的。在美国，professional  school的模式就是先砸钱，然后用高回报的收入来还债。我没有钱，所以我只能用时间来换，PHD的一个好处了，除了学东西拿学位，还不用付学费，还有   生活费。人生都是在建筑砝码，如果你开始就有钱，钱就很多时候是你的砝码，或者可以给你买来砝码，如果你咩有钱，你就要想办法把你有的一枚曲别针去换一座  大house，这个过程需要时间，但是你走快点，detour也不见得就比直线距离慢。总之，人么，只能work with what you  have，找一个最好的solution出来，问心无愧就好了。</p>
<p>Thanksgiving  cruise一趟回来之后，就去M第二轮面试了。这里插句，其实cruise有很多deal的，找对时间地点很值得经常去，很relaxing，又能认识  很多人，cruise  ship上有世界各地各种经历的人，老人偏多，聊聊听听他们一辈子的故事其实很有启发，运气好如果有遇到特别谈得来的，又有很好connection的  人，也许就给你带来意想不到的机遇，这个思路，和Wendy  Deng姐姐的想法好像异曲同工，只不过Wendy赌的大，用自己做砝码，我们是纯粹玩带碰碰运气，no pressure。M的面试被我blow  off了，如果没有，也许现在还真在做consulting。面试是三个case  study，两个做的非常好，有一个interviewer都说我一定会推荐你，希望以后有机会和你一起做project了，但是我砸在了另一个case  上，面试的是一个associate  principal还是partner级别的人，印度裔的，case本身没有问题，我很快想到了好的framework，开始给他讲，不知道为什么他总是   板着脸，很不高兴的样子，然后打断我，问一些很奇怪的问题，我怎么讲他好像就是不明白，很明显他不喜欢我，十分钟之后，我有点乱了，我有种感觉我完蛋了，   越是这么想就越着急，后来就都不记得开始自己的思路了，越讲越没信心，对他的问题实在抵挡不住了。面试之后，我收到了这个人的一个电话，他告诉我，我的其   它表现都特别好，另两个interviewer都recommend了我，但是我咩有通过他特殊的测试，他说在M，在consulting行业，当一个年  轻的consultant被派出去做项目的时候，经常会遇到来此客户内部的抵触，资深的主任们为什么要听一个小孩bullshit，他们会  challenge你，有时甚至你的solution很完美，他们的问题很无耻，所以他就模拟了这样一个场面给我，看我如何来处理。It&#8217;s part  of the test, and I blowed it.  我的朋友谁也没有遇到类似的测试，但是我觉得无论是因为什么原因让他决定这样测试我，他都有一个很好的理由这么做，而我也确实没做好，所以对此我输的心服  口服。我的中国朋友表现很好，最后拿到了M的offer，现在已经辞职回中国做企业内部的策略经理了，我非常看好他的。</p>
<p>对  于M的一个梦忽然中止了，不管它有多适合自己，有多少的遗憾，有些事情错过了就咩有回头。从M回来，我沮丧了一段日子，我曾经离终点那么近，现在又回到起  点。M之前基本上只在学校网站上投了投简历，M之后才把简历往外发。一个偶然的机会，看到mit的career center网页上有PHD jobs  outside  academia，讲到这个option，说有律所在一定情况下会破例招收有PHD的人去做知识产权法的工作，然后sponsor去law  school。我当时眼前一亮的感觉。其实我最想要的是一份工作可以用上我整个的skill  set，我是怎么样一个人呢？我首先是一个工科PHD，我不是科研人才，但是我热爱技术，并有很好的技术背景，其次我喜欢和人打交道，喜欢表达，喜欢接触   新的事物，新的挑战，最后我喜欢写东西，我高中想读文科，我们老师校长和我急了，说浪费了我理科的好料，高考我又想以理科生身份报考新闻系（有些学校可以   的），但是后来报送理工科学校，想读文科的想法再次泡汤。呵呵，人生的一些想法有时候暂时不实现，它也会在你心底深处一直藏着，在合适的时候，会有什么东  西再次触动它，然后你发现其实你从来没有忘记过，也许这才是你真正想要的。所以我就拿了一份top IP law  firm的list，一个一个去人家网站上用最笨的办法投简历。那时候离毕业走人还有4-5个月，而且12月一般大家都过节基本hiring都停止的，所  以我为了保险，也申请了一些industry  job，作为backup，我申的基本上都是每个行业的TOP几个，各种职业圈子都投了一些简历，包括第一是技术类的，行业里有三大，G，S，P，还有一  些和我研究沾边的图像处理的公司，另外是几个软件公司，反正研究每天也是在推公式，编程序，不过投的公司都是我知道名字的，了解的大公司，所以范围虽然  大，一共也就10几个。</p>
<p>投  完简历我就回国过年了。回国前一天，我收到了一个电话，没有任何预兆的，打到我的手机上，我还没反应过来，对方就开始一直说，我只听到是一个law  firm，然后对方就问我为什么要申请它们之类，这就是传说中的电话面试吧，可怜我连她是谁都没听清，我说什么好呢，于是只能胡说，结果可想而知，自己都  不知道自己在说什么，对方最后只说了句thanks for your  time，就挂了，连再联系都没说一句。晚上回家，我查了电话号码，我的天哪，原来是NO.  1的IP律所F啊。第二天早上，在芝加哥转机，有一个小时的时间，我心里一直好懊恼自己错过了这样的一个机会，我不甘心，我又一次想起了M的经历，也许  out of  nowhere的电话本身就是一种测试，我应该再努力一下。于是我拨通了对方的电话，我很坦诚得告诉对方，我昨天咩有听清她的名字，所以如果那是一个面试  的话，我肯定fail的很惨，但是如果她愿意再给我10分钟，我一定会让她改变她对我的看法。so she did, and I managed  to impress her.  我下飞机回到家，就已经收到了她的email，她说她没有遇到过一个candidate，在如此差的表现之后还有勇气打电话给她要second  chance，并且成功说服她的，所以F邀请我去onsite。我觉得M给我的伤痕在那一刻被抚平了。</p>
<p>过  年过得很开心，虽然我每年都和男朋友回国，但是回去过年还是第一次，我之所以坚持在毕业之前回家，是因为知道夏天可能会有因为某些签证啊什么的因素而不能   回家，我在渐渐得融入美国的生活，但我从来都没放弃过中国我的根，我有太多东西和中国分不开，以后不管做什么，中国背景都将是我的一个asset，而不是   缺陷，所以我冒着被check的危险年年回国，体会和适应国内的变化，和朋友们吃饭聊天，最重要的是陪父母外婆尽孝心。在家的日子，除了写论文，就是电话   面试，投了二十几家律所，拿到13个电话面试，投的10几个industry工作，拿到4个电话面试，鉴于我投简历并不是知道有opening才投，是我  觉得喜欢的公司才投，所以这个面试比例还算比较高。17个电话面试，除了有一个law  firm明确说不给申请H1B，我就withdraw了之外，其余都拿到了onsite，因为2月底才回去，而H1b那年形势看紧，一定要4月1号前递上   去，所以面试全部密密麻麻安排在3月份。第一个面试就是F，虽然我对law基本没概念，但是通过那么多的电话面试，和那么多人聊了之后也对它有了个基本概   念，我们的dean告诉我，没有人能真的什么都懂，但是人和人的差别不是谁懂得多，而是谁学得快，她说她和很人谈的之前是不知道他们说的东西的，但是谈话  的过程就是她学习的过程，谈完她可以去和别的人绘声绘色的说的像一个专家。我用了同样的策略，现学现卖，而且要卖的如同你对此已经很熟悉，了然于胸的样  子，这个事情并不难，只需要三样东西，超强的自信心，超快的理解能力，和超好的表达技巧，其中没有一样是可以短时间内获得的，我多年的折腾paid  off。面试F后第二天的早上，我在行业大头P的lobby室里等待面试的时候，收到了F recruiting  partner的电话，告诉我欢迎我加盟F。有了F的offer在手，面试更放松，所以表现就越来越好，无论是law  interview，还是technical interview，做presentation，都一次又一次超越自己，每一个面试基本上hiring  manager/partner都会在第二或者第三天给我打电话告诉我给offer，我的每一天就是面试，然后接offer电话，家里男朋友会告诉我某某  的书面offer寄到了。</p>
<p>在 拿到全部12个law firm  offer和2个技术公司offer之后，我决定withdraw剩下的两个技术公司面试，分别是G和S，G的manager给我打了好几次电话，想说服  我去面试，他说他还没见过G给了面试自己不去的。我觉得没有必要再面试下去了，我应该已经很清楚自己要什么了。随后我就拒绝了两个技术公司的  offer，P的manager也很惊讶，马上给我打电话，说如果是因为薪酬问题，他可以加一万的工资，一万的sign on  bonus，另外一个K的manager跟我说，他连我去干什么都想好了。我告诉他们能够得到他们如此的器重，我真的感到非常非常的幸运。在筛选了一下之  后，我留下了四个law firm做最后的比较，有专门做IP的，也有general  practice的，它们都很友好，派专门的associate甚至partner给我打电话，来回答我的问题，并且争取我。有一家texas  based IP firm叫S &amp;  P，他们NJ和NC的办公室都想要我去，在NJ面试后，那个partner还专门开着他的宝马去看million dollar  house，跟我说，one of them could be yours in a few  years，后来又给我打了好几个电话让我接受他们的offer，有一天，我还收到了这个所得second naming partner  P的留言，说欢迎我去，我还没来得及回电话谢谢，第二天，first naming partner  S又给我来电话。还有一个firm的partner再三和我说在我最后决定之前，一定一定要给他打电话，他会做最后努力。这些的这些都在我意料之外，让我  受宠若惊，也许是当时经济很好，大家都很想招人，也许是我的skill  set正好是人家想要的：phd，EE+BME，Chinese，Japanese等等，再也许就是我真的被什么幸运星砸到了。空中飞人的三月在于我的人  生，在于我事业的起点都实在too good to be true了。我老板都和我说，为什么对别人很难的事情，对你都那么容易？</p>
<p>当 我有很多offer可以选的时候，我才发现那几千甚至上万薪酬的差别有时候并不是最重要的因素，这是一个影响到很久将来的决定，money  is good, but it&#8217;s just a means not an end. 综合考虑了很多，决定follow the  heart去自己一直想去的DC，挑了面试的时候环境和人给我感觉最好的F，离男朋友也近一点。终于在3月31号下午把H1B的申请扔出去了。长长叹一个  气，可以准备5月初答辩了。</p>
<p>人 不能期望一路顺风，有好事，太好的事情，可能马上就会有坎坷。果然不出所料，committee  member接连出状况，有人生病了，不能来参加答辩了，有人时间上有conflict，所以要换人，要继续协调，答辩这个事情，如果你能把  committee请到一块，估计都花一半力气。临时换人是很难的，还好系里有那些绕着走的教授，总算给我请到两个，我和我老板说的时候，他脸都绿了，说   你请这两个那么tough的，到时候我照不了你，你好自为之。终于把答辩定在了6月初的一天。2007年是第一次H1B申请多到要抽签的，紧张得等到4月  中，终于得知advanced  degree的还没满，不用抽，终于放心。但是等啊等，很多人都批准了，我还没动静，直到5月底的某一天，收到移民律师电话，说我的申请被退回来了，我被   错误的放进了要抽签的category，又幸运地没抽上，这样的概率大概是几万分之一，被我遇上了，也许这就是好事多磨。虽然这事可能让我所有的努力前功  尽弃，所有的计划都要重来，但是我自认这个事情不在我的控制之内。如果我可以做什么我一定会去做，如果我什么也做不了，我就接受，然后move  on。后来在我工作几个月后，终于appeal成功，拿到了H1B。</p>
<p>答 辩那天，知道这也许是我最后一次technical  presentation讲自己的东西，所以我格外用心，依依不舍，答辩完了之后一个绕着走的教授和我老板说：我终于知道为什么law  firm要她了。这个教授说他当年也很想去law school来着，没去成，所以至今不能释怀。</p>
<p>3  年零10个月，除去每年回国的时间，4个月intern的时间，大概是3年多一点的样子，拿了一个PHD，一个外系的MS，修了80几个学分的课，做了一  年中国学生会主席，三年研究生院代表，带着M给我的教训，和之后那些offer给我的信心，我离开了校园。I have no complains.</p>
<p>2007-2008 第五年</p>
<p>工 作和在学校的时候还是挺不一样的，我们所没有什么training，一下子就把我放到第一线做事情，其实law  firm这种partner带associate的形式，本身就是由于law practice是一个经验活，就是得边做边学。F是vault上best  firm to work  for，当初选它就是因为考虑人的因素，大家都很团结，一起做事，我有不懂，很多人都愿意牺牲自己的时间来帮助我，律师是做billable的，上一天  班，如果不是做billable的工作，那么就等于没上班，所以他们能够来帮我真的是很让人感动。开始什么都不懂，要靠不断学习人家的work来改进，也  要靠在不断做的过程中来熟悉每个领域，每天都在take  in无数的信息，技术也好，法律也好，都是新的。晚上下班就逛逛街，和朋友吃吃饭，周末就去hiking，去逛博物馆。</p>
<p>上 班的同时，也开始准备9月的LSAT考试。一年前我都无法想象自己会去读law school，而且还是免费去的。读PHD的时候，去law  school听过一个课，那时候觉得law离自己好远啊，那些忙忙碌碌的law  student和我简直不是一个世界的人。当初看legallyblond的时候，就觉得好喜欢那个女主人公啊，也喜欢她的男朋友。转眼自己也在往这路上  走了，虽然晚是晚了点，人生的路真是不好说。</p>
<p>世  上本没有路，走的人多了，也便成了路。自从离开学校开始，我就仿佛在没路的地方走路，读PHD的时候，虽然我比较爱折腾，做了一些别人不care去做的事  情，但总体上讲还是遵循着一个每个PHD都要完成的计划，qualification  exam，prelim，defense，找工作，在不同的阶段都可以找到很多前人的经验，也有很多同级的人可以一起讨论。但是工作之后，只有不断地有朋   友或者学弟学妹来问我这条路怎么走，没有人来领着我走这路了。工作上，即使同事很nice，他们也无法真正体会一个外国人做美国法律会遇到什么样的困惑，  甚至连OPT期间不用交SSN和medical  care这个事情，我都要自己花半天时间去研究IRS的pub，然后去说服我们HR的人我是对的。申请学校上，中国人读JD的总体不是很多，大部分是国内   法学本科毕业出来读LLM的，或者是LLM后来转JD的，所以他们的经验很难借鉴，而很多美国学生的申请论坛，也不会告诉你怎么去搞中国的成绩单之类的事  情，总之，being somewhere in the middle, you are on your  own。每次遇到困难，我只能鼓励自己，leaders almost always have to travel on a road that  is never or less traveled, and that&#8217;s why they are the leaders.</p>
<p>我  是一个相当不善于标准化考试的人，每一次标准化考试我都要靠别的途径去弥补，我上大学的时候是保送的，所以成功得规避了高考，出国的时候GRE和托福都很  一般，只能在PS等申请材料上下功夫，我老板招我是因为他被我的PS打动（是老板后来亲口告诉我的），当我再一次面对LSAT这个最难的标准化考试的时  候，我依然不能逃脱这样的宿命。law school的申请还不像grad  school，录取的大头是看LSAT和本科成绩，而对外国学生（本科不在美国念的）来说，本科成绩也基本不看，所以说到底就要看LSAT。如果LSAT   考接近满分，那么几乎申请交张白纸就可以拿到admission了。用我后来学校的招生办主任的话说，申请是跨门槛，好的LSAT会把你垫高很多，在其他   方面你一般就可以跨过门槛了，反之，并不是你没有机会，只是说你要用别的把这个落下的高度补回来。可惜我是后一种，注定了要拼尽全力去够的那种。我的PS  写了五稿，推荐信拿了6封，好在无论以前的导师还是现在的老板们都对我印象不错，所以每封推荐信都写得很有分量。我在工作中给一个很难please的  partner干活，每一个人都警告我这个partner有多tough，听了很多horrible  story，然而以前的经验告诉我，tough的人只是有更高的标准，如果你能达到这个标准，那么他会比别人更赏识和信任你，于是我就默默的努力，当我服  务的客户不断地去这个partner那里夸我的时候，partner亲自给我打电话，告诉我他很满意。他得知我要申请law  school，就主动说帮我写推荐信，并且还去说服了我们所最资深的partner给我写。我们的这个资深partner于是把推荐信直接写到了我想申请   的法学院的院长那里（他们都是很好的朋友），他说，我虽然没有和这个年轻人有过很深接触，但是我们所最苛刻的partner告诉我一定要把她推荐给你们，  所以我确信这个年轻人一定不简单。就这样，我以比较底的LSAT，拿到了DC周围最好的两个法学院的admission。有的时候，go above  and  beyond，自己把标准定的高一些，勇于去接受比别人更大的挑战，也许一时显得很傻，但以后一个不经意的场合却会帮你一个很大的忙。我感到如此幸运，不  是因为不劳而获，而是因为努力终有回报。</p>
<p>拿  到admission那天正好是情人节，是一个星期三，中午收到信，兴奋得给男朋友打电话报喜，他接电话好像身边特别吵，当时太高兴也没在意。晚上回到  家，看见他居然站在我家门口等我，我的天，他大老远从北卡开过来了，要知道他上个周末刚来看我，周日晚上回去的，这大周三的他又来了。他做这种偷偷默默的   事情是有前科的。我博士答辩那天，他原本是在马里兰做intern的，晚上答辩完了我就一个人跑去逛mall，看电影，我给他打电话，他还和我说不好意思  啊这么重要的日子你只能一个人过了，我说没关系的你也有你重要的事情在忙，他还问我打算什么时候电影，等到到电影院门口，看到这个人居然在那里拿着盒  Godiva巧克力朝我笑呢，原来他早就偷偷跑回来了，陪我看了个电影，第二天天没亮又走了赶去上班。这次他又是开那么老远为了给我送情人节礼物，一根  Tiffany的项链，可惜我都不知道他要来，晚上去哪儿都没座了，最后只能买了两块cheesecake  factory的蛋糕，然后跑回家给他炒了两个菜吃，第二天早上他又回北卡了。这是我第一件T家的首饰，也是以后很多很多T的开始。每个女生都爱礼物，不  过在我看来，再好的礼物，都及不上一个懂得浪漫，懂得珍惜你的男人。</p>
<p>工  作的第一年，生活上倒是没有什么太大改变，仍然是租房子住，每个周末不是我回北卡，就是他来DC，我们俩开长途的能力都变得巨牛。薪水一下子涨了很多，但  是消费习惯不会一下子改变，学生时的观念还是会多少滞留一段时间，偶尔去逛逛Tysons的两个mall，还是觉得贵，去leesburg的  outlet，感觉东西买的下手的才比较多。我一直以来都崇尚高质量但节俭的生活，我不去买很差的东西，如果一样东西是因为质量差而便宜，这个钱省得就没  有价值。</p>
<p>我 的第一辆车在服务了我3年，陪伴我从东岸的最北面到最南面整整一个来回之后，罢工了。男朋友怂恿我用全款买了辆可爱的MINI  COOPER，手动的。我不会开手动车，我男朋友也不会，问了几个朋友，说女生千万别开手动车，学不会的，但我男朋友说，如果我以后想开保时捷法拉利这样  的好车，都是手动的爽，开自动的没有感觉的，这话对我很有激励作用，我就买了辆手动车。MINI是没有库存的，买车要先订，付了钱等着，卖价价钱比  MSRP一般要高。在等待MINI的一个月里，男朋友先去找北卡的朋友学手动车，然后等MINI到了，他带我去晃晃悠悠一路熄火10几次开回家，然后用周  末来看我的时间教我开，我就拿着一个新车学。开手动车就和游泳一样，开始要想着每一步，还可能手忙脚乱的，但是熟了之后，就成为本能，不用想就能做出动  作。这辈子如果肯定要学的事情还是早点学，学会了就是你的了，忘也忘不了。这样我就开着我的小MINI，day  dreaming着开保时捷法拉利的将来。</p>
<p>2008-2009 第六年</p>
<p>第 五年的周年纪念是在Glacier国家公园度过的，那天在最后的Glacier附近遇到了grizzly。在完成了超过billable  requirement的工作量的20%之后，partner们逼着我去take  vacation了，我在denver机场还在给一个partner发一点最后的东西，结果人家回信：go back to your  vacation。每一个人都告诉我，full time law firm work+part time law school =  HELL，所以要抓紧最后狂欢的时间来善待自己。我比较低估形势，因为本科和PHD之前，都有过类似的warning，说有多tough，但我走过来，实   在没觉到什么压力，所以这一次我也就以为又是一场“狼来了”的虚惊，觉得半个月渡假应该能够让我撑过1L了。如果现在有人问我，读JD之前应该做什么，我   会告诉你，赶紧把婚结了，孩子生了，房子买了，该装修的都装修了，该置办的都置办了，然后什么都不要想了，每天花8个小时工作，5个小时上学，剩下的时间  除了你吃饭和communite的时间，就是你睡觉的时间。</p>
<p>我 的JD生涯在我懵懵懂懂中开始了。Orientation第一天，系主任说，look to your left, look to  your right, and remember these people, because a year from now, one of  you three will disappear from this class. 此话出自经典law school movie: the  paper chase。可见在law  school，1L的竞争是白日化的，JD三年就是这样的，第一年拼命的学，第二年拼命的面试，第三年拼命的玩。JD学生最后的Offer通常是第二年暑  假summer intern的地方给的，而summer  intern是第二年刚开始就申请的，用的是1L的GPA。照理说，我有工作，没有必要也没有资本去拼命，可是我念书不是只为拿一个学位，如果在这个过程  中不能真正的学到东西，那么拿一个证书没有意思。</p>
<p>law 的学习方法和engineering很不一样，每天的reading  assignment多，然后到课堂上基本上是讨论这些读过的材料，上课要看发言，既有自己举手，也有on  call，所以说白了是自学为主，老师点拨为辅，考试是考实际应用，全部是open  book，不需要背任何东西，但又绝对要对内容烂熟于心。law和science的最大不同是science我们总是在追求正确答案，如果不能证明它正  确，就去证明它错误，没有“可能”，没有“模棱两可”。但是law没有正确答案，law的nature决定了任何事情都可以argument from  both  sides，作为一个律师，无论是原告还是被告找你代理，你都要从浩瀚的法典和案例里去寻找支持你客户的论据。我觉得辩论这个事情真的是很有趣，你要用层   层铺垫去说明为什么你是正确的，对方是错误的，而且这些观点要以第三方能够接受的方式来表达，因为最后评判输赢的是这个第三方。这也是为什么总统议员多半  是律师出身，debate和上庭make argument所用技巧大同小异。有argument，就有counter  argument，所以在用任何一个argument的时候，都要去预期对方的counter  argument，然后准备好如何来反驳这个counter argument。law student必看的一本书叫做getting to  maybe，从工程师的mindset到一个律师的mindset，就是要把一个非黑即白的世界变浑沌了，然后练就一身你说他是黑他就是黑，你说他是白他  就是白的本领。</p>
<p>我 觉得我很幸运，我的同学忙忙碌碌多半是为了找一份工作，而我忙忙碌碌是为了学我感兴趣的东西，相比之下，I get to enjoy  law school more.  人的发展是有一些特定轨迹的，沿着别人的轨迹走往往事半功倍，而你本身又在加深这条轨迹，久而久之，这些轨迹因为如此的深，使得人觉得非这么走就不行了，  反而禁锢了思维，比如PHD就应该去找教职，不找教职就找公司研发，比如JD就是要第一年拿个好成绩然后去拿一个好的summer  intern。我经常听我身边的同学朋友说，我读PHD，因为I have no  choice，我读完PHD，找不到教职我就得做postdoc，因为I have no  choice，我要申请绿卡，因为没有绿卡就找不到工作，就不能转行，就不能回国，I have no  choice。Well，我总是和自己说，在任何时候，任何情况下，you always have a choice.  If you do  something, it&#8217;s better what you choose to do.  如果做postdoc是一个大计划的一部分，then  go for it and it&#8217;s a great  choice，如果只是因为觉得非如此不可，那么事情不管做的成做不成，都不会有成就感。我的Torts老师在最后一堂课，和我们说了她拿了  Economics PHD，后来又去法学院，毕业了决定不考bar，而做law school  processor的经历，她对我们说，不要觉得因为你做之前做了什么，之后就一定要做什么，你只做你想做的事情，为此你可能付出别人无法想象的努力，遭  遇别人的不理解，遇到别人遇不到的困难，但是，hey, it feels so good when you did  it。她临走前，在黑板上写下五个字送给我们，DO WHAT MAKES YOU  HAPPY，为此我热泪盈眶。我觉得自己一直以来不妥协不放弃，坚持去做自己有认同感的事情，无论多么难，都努力去披荆斩棘，为的就是这几个字吧。</p>
<p>这 个世界上没有超人，然而每个人都有自己独特的地方，关键在于懂得自己独特的地方，然后寻找自己的perfect  niche。我喜欢读人物传记，读人物传记不是为了读完说，wow，这人真厉害，然后go on with my own crappy  life，读人物传记也不是为了看牛人是怎么做的，然后跟着去follow，没有一种成功可以复制，只有struggle to  success的方法和心境可以借鉴。牛人们有一个共同的特定，就是在最短的时间内找到了自己的perfect  niche。无论是谁，22岁之前的经历都大同小异，无非是上学，当然每个人家庭环境不同，感悟会有所不一样，这之后人和人的差别就会很大，Jack  Welch，一个普通的化工PHD，在GE一步一步成长成了掌门人，奥巴马同学，law school毕业，去law  firm，然后又辞职去教constitutional  law，去从政。他们的出众之处是在走当下这一步的时候已经想好了下一步要做什么，他们知道每一步是如何fit in a big plan，and  before all of these, they knew at the very beginning who they are and  what the big plan is。只有自己主宰自己要走的路，不随波逐流，才能到自己想到地方。Do what makes you  happy, and enjoy it，其实就那么简单。</p>
<p>IP law  对于我，现在看来还是一个不错的niche。工程的PHD学位为我在起步阶段赢得了客户的信任和无数珍贵的机会，一个小associate，刚开始  practise的时候最难的就是表现自己和获得机会，consider legal  profession是一个靠经验吃饭的行业，开始能获得什么机会，就直接决定了你能学到什么和你用多块的时间达到同样的高度。因为patent  law是基于技术的，而且通常是cutting  edge的技术，所以有些案子很自然会要求很强很专业的技术背景，当时有一个litigation案子，正好firm里就我懂这个技术，那个  partner就像找到救命稻草一样找到我，在engage客户的阶段就involve我，把我放到第一线去见客户，跟他去做presentation，  后来客户因为看到我真的很懂这个技术，把原本想给另一个firm的这个案子给了我们，partner专门来我办公室和我说  congratulations，做成这样的事情，真的很有成就感，而且在这个过程中我学到了别人学不到的宝贵经验。还是那句话，生活is all  about砝码，要努力获得砝码，也要懂得运用砝码。</p>
<p>除  了技术背景之外，我的中国背景和语言优势也给我带来了很多机会。在美国有很多华人，每一个华人的梦想都是能够做一些bridging中美文化贸易技术等等  的事情，希望自己中西方兼容的背景成为自己的优势，然而这样的工作很少，或者说这样的机会在entry level很少。但是在law  firm，语言和外国背景绝对是一个plus。我们有不少asian的客户，firm都喜欢让我们这些亚洲面孔去impress客户，通常也确实是亚洲人   更能理解亚洲人的思维模式，交流更有效。同时，F和很多firm一样，一直在探索中国市场，以前在日本和台湾的成功经历使得firm都很重视中国，作为下  一个strategic market，这一年，F在上海开了中国办公室，需要有人经常得去中国做rotating  attorney，我就报名了，很幸运的成为这个team里唯一一个没有过bar的成员。此后，我每年都会在中国工作一段时间，在中国期间，有比在美国更  多的机会，直接去面对和engage客户，和firm里最senior的partner们一起travel，hang  out，最近距离的学习他们的一些skill。在中国和美国之间穿梭，在美国improve自己的practice，上law  school，在中国improve自己的client development/management的能力，keep up with the  network I built in the past 20 years，还能和爸妈在一起生活一段时间，尽尽孝心，觉得与我心中想做的事情很契合。</p>
<p>我 们还没有绿卡，但是我这个人很不喜欢生活的局限性，我对自己说，what the  hell，该去哪儿我还是去哪儿，想做什么我还是去做，与其因为一个身份问题而放弃某些机会，我宁愿冒险。事实上，我们去过很多地方，护照上有无数个签  证，除了我PHD第一年回家被check了一下（其实主要是check我老板），之后签证都一帆风顺，我们去加勒比cruise，去以色列出差，去中国  rotation，都签证，上海签证处的人都认识我了，每次去聊两句就过了，反正我是签证的老油条了。可见有些事情是纸老虎，你越把它当回事，它越挡着  你，反而让你失去了很多属于你的机会。经常看到幸苦等绿卡的故事，觉得等拿到绿卡，我就想做什么就做什么了，而事实是，大多数人，拿到绿卡，生活没有任何  改变，反而白白等了好多年。机遇是给准备好的人，不是给拥有一张纸的人，这个和拿学位是一样的，学位有时候可能是必要条件，但不是充分条件，不是拿到  PHD学位就一定有教授当，不是拿到JD就一定可以进big law，nothing is  guranteed，能不能做还是看自己。我经常告诫自己，人最大的敌人是自己。</p>
<p>2008  年的秋天，男朋友也从北卡毕业了，在DC找到工作，搬过来团聚了，我们终于结束了DC-NC的commute生涯，开始考虑我们在一起的事情，弹指一挥，   我们俩已经在一起8年了，出国前觉得自己都还小，现在在国外风雨同舟，不觉间就27了。在家庭上，我们真的是落后分子，但是我们也有我们自己的想法，成家   就要有家的感觉，寄人篱下的日子不像家的样子，而且结婚是一辈子的纪念，还是想搞的好一点，给自己一个回忆。念PHD的时候，身边有很多人回国登记一下就   算结婚了，挤在租来的apartment里抚育宝宝，去参加过几个朋友的婚礼，基本上就是请大家吃个饭，这都很正常，学生时代大家经济都不宽裕，没有什么  随心所欲的资本。也许就是从那个时候起，我们俩心照不宣的觉得应该在自己有了能力之后再去make  committment，当然，这个观点我现在还不确定是不是对的。anyway，我们就这么拖着到了27岁，2008年底，我俩看了看自己的存款和收  入，觉得经济上够做这些想做的事情了。于是2008年底，我们开始在DC周围看房子，买房子这个过程相当费时间，我们做了不少research，尽量避免  很多first time home  buyer常犯的错误，比如开始和agent说budget的时候我们先给了一个比真正budget低25%的数字，因为看得过程中总是会因为这个那个的   原因而overbudget，房子总是越贵的看着越好嘛，所以我们开始说50万，然后慢慢涨点涨点，最后找到了一个很好的neighborhood，房子   floorplan也满意，只有一任屋主，房子结构和maintain的都不错，唯一缺点是里面的装修是original的，有点老了，最后价值80多万  的房子以70万买到。比较有意思的是，买房子的过程用到了很多1L law school学到的东西，比如property，  contract，甚至torts，我们agent和closing  attorney都说，看不出来，你第一次买房子，知道的倒是不少。拿到钥匙那天，心里那个美啊，自从出国之后，我们都没有拿家里的一分钱，父母为我们操   心一辈子，如果那么大年纪了还不能自立，实在太失败了。从2003年带着5000个美刀，三个箱子登陆美利坚，六年后居然完全靠自己的努力在美利坚的土地  上成为有产阶级了，说实话，我感到很骄傲。</p>
<p>2009-2010 第七年</p>
<p>有 了house，不管你需不需要工作，不管你有没有嫁人，你都是house  wife，里里外外比住租来的房子多操好多心。我家装修比较老，就需要一点一点update，现在已经把厨房整个翻了重新做了，接下来要做  bathroom，地毯也都换成了hardwood floor，另外，因为我们是从1 BR  apartment搬进这个大house，家具连一个房间都塞不满，所以又折腾去北卡买家具，一个一个房间的furnish起来。这每一件事情，都付出了  无数的心血，都是我一个project，从什么都不懂，到成为expert，把事情做好，经历了太多过程中的痛苦和成功后的喜悦。我做什么事都不喜欢拖  着，做什么都不喜欢半途而废，做什么都要做到最好，我是完美主义者，我做一个project就尽力做好，然后take a moment to  celebrate，然后就move on到下一个。厨房装修的帖子在华人家居版上，有兴趣的mm可以翻一翻。</p>
<p>做  事情从不懂到懂是一个很正常的过程，如果总是重复在做自己懂得事情，只能说明在原地踏步，呵呵。做一件事情，我总是事前向很多人请教，听大家的经验和建  议，但是我从来不跟从别人的想法和做法，我把它们作为砖头来建我自己的城堡，我的做法必然是融入了我自己想法，有我自己特点的，我只做我喜欢的东西，但是   别人的经验真的可以让自己少走很多的弯路。我发现我做什么事情基本上都是以比我大五六岁甚至十岁的人为目标，20岁的人不能去和50岁的人比成功，环境机  遇人生的积累都大不相同，但是可以试着去超越时间，beat your  age，读PHD那会儿大家毕业的平均年龄是30岁吧，所以我赚了4年的光阴，同进firm的人，一般会在2年后开始读法学院，我用了一年，所以又赚了一  年，我28岁买房子settle down，开始资本的积累，比我身边的朋友好像也早一些。</p>
<p>几 年的law firm 工作，加上law school，加上要take care  of房子，我慢慢意识到了人生最重要的是时间，是quality time，钱不过是获得quality  time的一个途径，不是唯一途径。quality  time有很多成分，生活的质量是一部分，事业上的成功感是一部分，家庭是一部分，万事都是在寻找一个平衡。我做事的方式，价值观都因此而在改变，我们不  能改变一天只有24小时的事实，但怎么样来过好，过得有效率，过得开心，全部都在于自己。</p>
<p>2009  年8月12日，是我从上海rotation回来那天，也是来美6年纪念日，男朋友把一枚大大的T钻戒递到了我面前。这个男人等那么久，原来是要等自己攒够  三个月的工资去给我买戒指，真够傻的。这下我又有了一个新的project，就是准备婚礼，儿女的婚礼也是父母的梦想，所以我们决定借回去  rotation的机会在中国办两场婚礼，然后美国再办一场，给家人也给自己最好的回忆。现在中国的两个婚礼已经办好了，9月5号是我的美国婚礼，这也是  我现在正在做的事情。</p>
<p>写  到这里，把我这7年都差不多唐完了。之所以要写出来，完全因为这是给我自己的一个纪念。看看7年前的我和7年后的我，我不知道再过7年我会在做什么，又会  有什么样的感想。The beauty of life is in its uncertainties。我对未来非常非常的期待。</p>
<p><a href="http://www.douban.com/group/topic/17332247/">http://www.douban.com/group/topic/17332247/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/%e4%b8%80%e4%b8%aa%e5%a5%b3%e7%95%99%e5%ad%a6%e7%94%9f%e5%9c%a8%e7%be%8e%e5%9b%bd%e7%9a%84%e4%b8%83%e5%b9%b4%ef%bc%88%e8%bd%ac%e8%bd%bd%ef%bc%89/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>android.widget.Gallery getView, newView, bindView</title>
		<link>http://wyj.zhuwo.info/2011/02/android-widget-gallery-getview-newview-bindview/</link>
		<comments>http://wyj.zhuwo.info/2011/02/android-widget-gallery-getview-newview-bindview/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 04:27:58 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=273</guid>
		<description><![CDATA[在使用Gallery时，每一次bindView的同时也会有newView，这是Gallery的特殊性。从代码来看，Gallery从makeAndAddView里调用了 child = mAdapter.getView(position, null, this); 第二个参数是null，所以getView里面就调用了newView，然后bindView，而不是直接bindView。]]></description>
			<content:encoded><![CDATA[<p>在使用Gallery时，每一次bindView的同时也会有newView，这是Gallery的特殊性。从代码来看，Gallery从makeAndAddView里调用了</p>
<p>child = mAdapter.getView(position, null, this);</p>
<p>第二个参数是null，所以getView里面就调用了newView，然后bindView，而不是直接bindView。</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/android-widget-gallery-getview-newview-bindview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian 服务器网络问题解决</title>
		<link>http://wyj.zhuwo.info/2011/02/debian-%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%bd%91%e7%bb%9c%e9%97%ae%e9%a2%98%e8%a7%a3%e5%86%b3/</link>
		<comments>http://wyj.zhuwo.info/2011/02/debian-%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%bd%91%e7%bb%9c%e9%97%ae%e9%a2%98%e8%a7%a3%e5%86%b3/#comments</comments>
		<pubDate>Sat, 12 Feb 2011 13:08:53 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=267</guid>
		<description><![CDATA[过了年，开始工作，服务器却出了问题，可能是年前升级引起的问题吧，具体还不得而知。 现象：无法获取 ip。 解决办法：sudo ifconfig eth0 192.168.1.2 现象：域名服务无法启动。 错误信息：bind9rndc: connect failed: 127.0.0.1#953: connection refused 解决办法： sudo chown root.bind /etc/bind/rndc.key sudo /etc/init.d/bind9 restart 现象：lo 回环没有启动 解决办法：sudo ifconfig up lo 现象：bind重启后生效，自定义域名可用，但forwarder功能不起作用。 进一步：服务器 ping 外网不通。 错误信息：connect: Network is unreachable 解决办法：route add -net 0.0.0.0 &#8230; <a href="http://wyj.zhuwo.info/2011/02/debian-%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%bd%91%e7%bb%9c%e9%97%ae%e9%a2%98%e8%a7%a3%e5%86%b3/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>过了年，开始工作，服务器却出了问题，可能是年前升级引起的问题吧，具体还不得而知。</p>
<p>现象：无法获取 ip。<br />
解决办法：sudo ifconfig eth0 192.168.1.2</p>
<p>现象：域名服务无法启动。<br />
错误信息：bind9rndc: connect failed: 127.0.0.1#953: connection refused<br />
解决办法：<span id="more-267"></span></p>
<pre>sudo chown root.bind /etc/bind/rndc.key
sudo /etc/init.d/bind9 restart
</pre>
<p>现象：lo 回环没有启动<br />
解决办法：sudo ifconfig up lo</p>
<p>现象：bind重启后生效，自定义域名可用，但forwarder功能不起作用。<br />
进一步：服务器 ping 外网不通。<br />
错误信息：connect: Network is unreachable<br />
解决办法：route add -net 0.0.0.0 gw 192.168.1.3 eth0</p>
<p>到此为止，问题就解决了。</p>
<p>现象：sudo /etc/init.d/networking restart 没有反应，不起作用。<br />
根源：ifup, ifdown 命令不存在<br />
解决办法：sudo aptitude install ifupdown</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/debian-%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%bd%91%e7%bb%9c%e9%97%ae%e9%a2%98%e8%a7%a3%e5%86%b3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Sync: 在 Apple 设备上设置 Google Sync</title>
		<link>http://wyj.zhuwo.info/2011/02/google-sync-%e5%9c%a8-apple-%e8%ae%be%e5%a4%87%e4%b8%8a%e8%ae%be%e7%bd%ae-google-sync/</link>
		<comments>http://wyj.zhuwo.info/2011/02/google-sync-%e5%9c%a8-apple-%e8%ae%be%e5%a4%87%e4%b8%8a%e8%ae%be%e7%bd%ae-google-sync/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 00:47:57 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Mobile]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=263</guid>
		<description><![CDATA[google的sync非常好用，我的黑莓和iphone都用它。 黑莓比较容易，有专门软件iphone需要自己根据说明配置一下，有推送哦，很强大。 http://www.google.com/support/mobile/bin/answer.py?answer=138740&#38;topic=14252 http://www.google.com/mobile/sync/]]></description>
			<content:encoded><![CDATA[<p>google的sync非常好用，我的黑莓和iphone都用它。</p>
<p>黑莓比较容易，有专门软件iphone需要自己根据说明配置一下，有推送哦，很强大。</p>
<p>http://www.google.com/support/mobile/bin/answer.py?answer=138740&amp;topic=14252</p>
<p>http://www.google.com/mobile/sync/</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/02/google-sync-%e5%9c%a8-apple-%e8%ae%be%e5%a4%87%e4%b8%8a%e8%ae%be%e7%bd%ae-google-sync/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>undefined reference to `__cxa_end_cleanup&#8217;</title>
		<link>http://wyj.zhuwo.info/2011/01/undefined-reference-to-__cxa_end_cleanup/</link>
		<comments>http://wyj.zhuwo.info/2011/01/undefined-reference-to-__cxa_end_cleanup/#comments</comments>
		<pubDate>Sat, 29 Jan 2011 06:51:57 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=259</guid>
		<description><![CDATA[在使用Android里面使用stlport的时候出现错误 undefined reference to `__cxa_end_cleanup&#8217; 经查证，最后解决了该问题，是exception的问题。 去掉了try, catch和throw等语句，就OK了。 主要还要去掉：-fexceptions 后面附上参考链接。 http://groups.google.com/group/android-ndk/browse_thread/thread/3cde35eec53e0753?fwc=1&#38;pli=1 http://groups.google.com/group/android-ndk/browse_thread/thread/a5dd86e985e191fc/dae0067602d7bd0c?pli=1 https://groups.google.com/group/android-ndk/browse_thread/thread/513d5ba12c8981d0/6b0958e8e16854a1?hl=fr&#38;ie=UTF-8&#38;q=undefined+reference+to+%60__cxa_end_cleanup%27&#38;pli=1#6b0958e8e16854a1]]></description>
			<content:encoded><![CDATA[<div>在使用Android里面使用stlport的时候出现错误</div>
<div>undefined reference to `__cxa_end_cleanup&#8217; </div>
<div>经查证，最后解决了该问题，是exception的问题。</div>
<div>去掉了try, catch和throw等语句，就OK了。</div>
<div>主要还要去掉：<font face="Courier, Monospaced">-fexceptions</font></div>
<div>后面附上参考链接。</div>
<div></div>
<div>http://groups.google.com/group/android-ndk/browse_thread/thread/3cde35eec53e0753?fwc=1&amp;pli=1</div>
<div>http://groups.google.com/group/android-ndk/browse_thread/thread/a5dd86e985e191fc/dae0067602d7bd0c?pli=1</div>
<div>https://groups.google.com/group/android-ndk/browse_thread/thread/513d5ba12c8981d0/6b0958e8e16854a1?hl=fr&amp;ie=UTF-8&amp;q=undefined+reference+to+%60__cxa_end_cleanup%27&amp;pli=1#6b0958e8e16854a1</div>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/01/undefined-reference-to-__cxa_end_cleanup/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>九型人格測試(180題版)</title>
		<link>http://wyj.zhuwo.info/2011/01/%e4%b9%9d%e5%9e%8b%e4%ba%ba%e6%a0%bc%e6%b8%ac%e8%a9%a6180%e9%a1%8c%e7%89%88/</link>
		<comments>http://wyj.zhuwo.info/2011/01/%e4%b9%9d%e5%9e%8b%e4%ba%ba%e6%a0%bc%e6%b8%ac%e8%a9%a6180%e9%a1%8c%e7%89%88/#comments</comments>
		<pubDate>Sat, 29 Jan 2011 02:27:49 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[五味人生]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=257</guid>
		<description><![CDATA[九型人格，定了书，还没看，网上的测评题。 http://o3o.cc/ninetest ﻿http://types.yuzeli.com/survey/nine108/]]></description>
			<content:encoded><![CDATA[<p>九型人格，定了书，还没看，网上的测评题。</p>
<p>http://o3o.cc/ninetest</p>
<p>﻿http://types.yuzeli.com/survey/nine108/</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/01/%e4%b9%9d%e5%9e%8b%e4%ba%ba%e6%a0%bc%e6%b8%ac%e8%a9%a6180%e9%a1%8c%e7%89%88/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>csv 转 xml 软件，很好用。</title>
		<link>http://wyj.zhuwo.info/2011/01/csv-%e8%bd%ac-xml-%e8%bd%af%e4%bb%b6%ef%bc%8c%e5%be%88%e5%a5%bd%e7%94%a8%e3%80%82/</link>
		<comments>http://wyj.zhuwo.info/2011/01/csv-%e8%bd%ac-xml-%e8%bd%af%e4%bb%b6%ef%bc%8c%e5%be%88%e5%a5%bd%e7%94%a8%e3%80%82/#comments</comments>
		<pubDate>Fri, 07 Jan 2011 10:30:41 +0000</pubDate>
		<dc:creator>王永杰</dc:creator>
				<category><![CDATA[linux应用]]></category>
		<category><![CDATA[技术为本]]></category>

		<guid isPermaLink="false">http://wyj.zhuwo.info/?p=255</guid>
		<description><![CDATA[由于导入数据的需要，需要把Excel的CSV格式转为XML格式。 沙漠之周同学帮我找到一个很好的工具，地址在下面。很好用。http://csv2xml.sourceforge.net/ 另外还有一个perl的库也不错，只是对中文支持不好： http://search.cpan.org/~isterin/XML-CSV-0.15/CSV.pm 简介： csv2xml &#8211; A csv to xml converter As the name suggest, csv2xml is a simple csv to xml converter. It reads csv files from standard input, and output a valid xml file on standard output. &#8230; <a href="http://wyj.zhuwo.info/2011/01/csv-%e8%bd%ac-xml-%e8%bd%af%e4%bb%b6%ef%bc%8c%e5%be%88%e5%a5%bd%e7%94%a8%e3%80%82/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>由于导入数据的需要，需要把Excel的CSV格式转为XML格式。<br />
沙漠之周同学帮我找到一个很好的工具，地址在下面。很好用。<a href="http://csv2xml.sourceforge.net/">http://csv2xml.sourceforge.net/</a><br />
另外还有一个perl的库也不错，只是对中文支持不好：<br />
<a href="http://search.cpan.org/~isterin/XML-CSV-0.15/CSV.pm">http://search.cpan.org/~isterin/XML-CSV-0.15/CSV.pm</a><span id="more-255"></span></p>
<p>简介：</p>
<p>csv2xml &#8211; A csv to xml converter</p>
<p>As the name suggest, csv2xml is a simple csv to xml converter. It reads csv files from standard input, and output a valid xml file on standard output.</p>
<p>csv2xml is great if your client asks you to resend a data file as xml, no need to modify your scripts, or for when you have a large csv file and you would like to be able to view/edit it with your favourite xml utility.<br />
How to use csv2xml</p>
<p>If you have a csv file called test.csv and want to create a file test.xml after installing csv2xml you would type the following:</p>
<p>csv2xml &lt; test.csv &gt; test.xml</p>
]]></content:encoded>
			<wfw:commentRss>http://wyj.zhuwo.info/2011/01/csv-%e8%bd%ac-xml-%e8%bd%af%e4%bb%b6%ef%bc%8c%e5%be%88%e5%a5%bd%e7%94%a8%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

