• 没错儿!这就是传说中C# hook中的虚拟键盘!~

    #region 注册键盘 private const int KEYEVENTF_EXTENDEDKEY = 0x1; private const int KEYEVENTF_KEYUP = 0x2; private const int KEYEVENTF_KEYDOWN = 0x00; private const int VK_SHIFT = 0x10; // shift键 private const int VK_SPACE = 0x20; // 空格键 private const int VK_TAB = 0x09; //字母键,Shift private const int KEY_A = 0x41; private const int KEY_B = 0x42; private const int KEY_C = 0x43; private const int KEY_D = 0x44; private const int KEY_E = 0x45; private const int KEY_F = 0x46; private const int KEY_G = 0x47; private const int KEY_H = 0x48; private const int KEY_I = 0x49; private const int KEY_J = 0x4A; private const int KEY_K = 0x4B; private const int KEY_L = 0x4C; private const int KEY_M = 0x4D; private const int KEY_N = 0x4E; private const int KEY_O = 0x4F; private const int KEY_P = 0x50; private const int KEY_Q = 0x51; private const int KEY_R = 0x52; private const int KEY_S = 0x53; private const int KEY_T = 0x54; private const int KEY_U = 0x55; private const int KEY_V = 0x56; private const int KEY_W = 0x57; private const int KEY_X = 0x58; private const int KEY_Y = 0x59; private const int KEY_Z = 0x5A; //数字键,shift private const int KEY_0 = 0x30; private const int KEY_1 = 0x31; private const int KEY_2 = 0x32; private const int KEY_3 = 0x33; private const int KEY_4 = 0x34; private const int KEY_5 = 0x35; private const int KEY_6 = 0x36; private const int KEY_7 = 0x37; private const int KEY_8 = 0x38; private const int KEY_9 = 0x39; //小键盘数字键 private const int VK_NUMPAD0 = 0x60; private const int VK_NUMPAD1 = 0x61; private const int VK_NUMPAD2 = 0x62; private const int VK_NUMPAD3 = 0x63; private const int VK_NUMPAD4 = 0x64; private const int VK_NUMPAD5 = 0x65; private const int VK_NUMPAD6 = 0x66; private const int VK_NUMPAD7 = 0x67; private const int VK_NUMPAD8 = 0x68; private const int VK_NUMPAD9 = 0x69; private const int VK_RETURN = 0x0D; //字符键,shift private const int VK_OEM_PLUS = 0xBB; // =/+ private const int VK_OEM_1 = 0xBA; // ;/: private const int VK_OEM_COMMA = 0xBC; // ,/< private const int VK_OEM_MINUS = 0xBD; // -/_ private const int VK_OEM_PERIOD = 0xBE; //.> private const int VK_OEM_2 = 0xBF; // //? private const int VK_OEM_3 = 0xC0; // `/~ private const int VK_OEM_4 = 0xDB; // [/{ private const int VK_OEM_5 = 0xDC; // \/| private const int VK_OEM_6 = 0xDD; //]/} private const int VK_OEM_7 = 0xDE; //'/" #endregion
  • recently

    2008-03-04

    1.I'v finished the platform asked by Mr. Hu.
    But,there was something like Page-style etc.,not be done.
    b-coz,the god-damn Jerry hadn't be back.
    2.Everyday,Little honey wanna talk with me in English.
    Frankly,she always said short words what we called Chinglish.
    So,take it easy,whatever,she did.
    3.Some old officemates asked me what about my job,
    the answer is not yet. eh~~
    and,about this matter I had asked for Master Liu's suggests,
    he told me taking a good position what not like before.
    4.As days went on, I've got many buddies...
    but I couldn't fetch what they wanna  as my way.
    There wasn't one same way among us.

  • 离职门?嘿嘿

    2007-12-30

    今天起得很早。
    媳妇大人说我精神状态有所改变?!汗呐...
    据几位同事的反映情况来看,目前给公司造成的假象是,我突然地离开,撒手公司的工作不去做交接。
    寒呐... ...
    事情的原委是这样滴,早在12月上旬,就已经通知主管大人,年后不打算续签合同,准备离职。而在这之前,早在11月份就做好离开打算的我,已经多次催促主管大人招聘新的开发人员,而事情的进展并不像我想想的那么顺利,原因很多,总之,这招聘的消息我听了大概能有一个月了,也没见能招聘上来人... ...

    工作要交接的也大都是一些前辈们留下的技术文档,老老实实的“坦白从宽”了。因为,我还是希望自己待过的地方不要因为自己的离开给这个地方造成这样那样的损失,毕竟我在这个地方有这样一段经历,很多生活,很多机会是这一年当中把握住的,所以要记得主任大人的那句话“懂得感恩”,嗯。

    诸位大GG大MM们听说小弟即将离职的消息,纷纷发来“贺电”,“贺电”内容大致分为以下几类:
    1. 同情+鼓励型
    2. 中立+方向指导型
    3. 肯定+指定路线型
    4. 佩服+自我激励型
    5. 哦型
    and etc.
    媳妇大人在这次“离职门”事件中,充分发挥了其主管能动性,积极鼓励和推动我完成了这一项在众多老领导(媳妇他们领导也算啦)、老同事(include 新恒基的旧相识)都默认为错误的决定。我只能说,同志们,咱们目前不在一个战壕,你不能够体会到,我的战壕有多浅,根本挡不住迎面而来的枪子儿和弹片,So,与其坐等吃枪子儿,还不如趁着刺刀没有锈蚀,装上刺刀,和敌人肉搏一番,我还年轻,怕什么。

  • 我的2007

    2007-12-18

    最近在网上看到了很多同行们在写自己的2007.
    我的2007是个什么样子呢?

    2007年做了三个比较成形的asp.net项目。
    第一个是网上展会项目,这个算是第一个asp.net项目,项目在Vs2005平台下做开发,整个项目进行的比较顺利,对于asp.net程序人员和美工的配合方面上有了进一步的认识,这为了以后在asp.net项目上和美工进一步合作打下了一定的基础,掌握了合作的技巧。
    第二个是农产品产地价格监测系统。这个项目重点在数据的运用上,由于声讯部的同事提出的设计需求在数据的显示上很复杂,但是开始的数据结构设计完全采用第三范式,所以在存取数据上按照常规的方式去做的话,存在一些难度,但是,同时,带来的正面影响是体会到第三范式设计对于数据结构设计的简洁等特性。在这个项目中运用了刚刚接触的ajax asp.net以及学会了灵活运用控件来做开发。
    第三个是内部业务流程系统。在这个系统上,完全采用了ajax asp.net。用户体验自然不用说,只是在一些工作流程上的设计发现自己还是有欠缺,需要在这方面加强一下,思维缜密一些。
    还有一些比较散的项目,基本上是做了一些就停滞下来,原因很多。
    最近在做的项目完全采用了三层架构设计模式,还没有完全体会到三层架构对于做独立开发的程序设计人员的好处,呵呵,我还是太看重效果和开发速度了。
    三层架构的设计模式有些不好把握,特别对于我这样没有足够的项目开发经验的人来说。数据层和业务逻辑层没有分得很彻底,一个是因为习惯问题,一个是因为着急看到效果。
    在工作中,逐渐发现自己的E文水平没有提升,貌似有些下降了。
    So,在2008年,主要的学习方向是外文水平,以及技术上的更大进步。

  • 力挽狂啥啊?

    2007-12-08

    这段时间经历很多的事情。

    有时发现努力了却未必能去实现,未必能按自己意愿中去执行,未必会采纳你的意见或建议,为了维护所谓的决策权,可能会铤而走险。 

    到现在的部门时的初衷是想有一个完整的团队,把现有的web产品进行彻底地改良,依靠自己、团队的力量高效地去实现预期的目标。 

    现在发现我们的团队实际上是不完整的。从做事的态度、职责的分配,大家都过于随意,也许是个人主义太强。 

    有时美工发现技术人员做出来的页面并不是按设计稿来的,而上司却又觉得美工做的东西与他想像中的不符。其实整个产品从规划、讨论、确定、开发、发布都过于随意,也许有时因为一句话会改变整个产品的设计逻辑,没有对一个产品的风险进行有效的评估,也许的确是团队不够完整。 

    一个一个专案接踵而至,需求讨论会实质上是不存在的,开发人员只是收到一个静态的html页面,其余的什么也没有了。更谈不上数据的读取逻辑、数据源的获取,这应该是产品上欠缺的,在设计、规划该产品时就应该考虑到这些,并且这样的需求须有正式的文档说明,这一方面也是欠缺的。 

    代码重用性不好把握。目前的网站项目并不是一气呵成、一个页面接一个页面地去实现,而在其间会掺杂着其它各式各样的需求进来。前台页面开发并不是一整套页面一次性扔过来,而是一个页面一个页面、一个css一个css、一个js一个js地往这边扔,会发现可以重用的Header/Footer却在页面结构上却完全不一样,同名的.css文件、同名的.js文件也不知是新建的还是在原有的基础上进行更新。 

    其实很想改变这些现状,但发现努力未必能实现。