teky 的 blog
在vck中学习,在vck中进步~
<2008年7月>
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789
公告

留言簿(9)

随笔档案

文章分类

文章档案

相册

Windows Mobile

我的好友

朋友创业,其路漫漫

搜索

最新评论

阅读排行榜

评论排行榜

 
VC知识库BLOG   首页  新随笔  联系  聚合  登录 
  随笔-29 文章-15 评论-83 Trackbacks-3
2007年4月11日

看了一篇帖子,老话题又来了.

程序员的人生 该将如何规划?

http://www.cnblogs.com/freeliver54/archive/2007/02/12/648209.aspx


我们的人生 该如何规划呢?

相信大家都看了很多这样的文章,也和周围同事朋友讨论过这样的话题,我也是的,

看的多了,听的多了,看见类似的链接都不想点击了,呵呵,有逃避心理了.

其实这也许是程序员之间最持久,最无法解答,最不能避免的话题吧,

面对这样的问题,我也想过很多,结果也有靠"好好加油,好好生活,努力向前"来勉励自己了,

怎么办呢,将来的事情,谁也说不准阿,无力感阿,

hoho,早知道考个公务员,看看报纸,喝喝茶,混个十几年,当个科长主任之类的,多好 :)
或者生在大富大贵之家,每秒上下几千万多好 :)

哎,再仔细看了遍这个帖子,当给越发懒惰的我敲敲警钟,打打兴奋剂吧.

大家看了有什么感想吗?或许是规划好了,或许是银子赚够本了,老了也不怕了?

还是麻木了,无奈了,还是坚信作技术,作程序员一定有美好未来?

还是象那个mm一样,每天有一个愉快的心情,拥有一个健康的身体,比什么都重要呢?

发表于 2007-04-11 17:58 teky 阅读(2699) | 评论 (1)编辑 收藏
2007年3月16日

大家在安装的sdk的Samples下面都能找到Setupdll这个例子

这个例子会生成个Setup.dll.

我们可以把Setup.dll添加到到自己项目的cab安装文件中,来完成在安装时候的各种复杂的操作,如:安装,卸载提示,各种信息消息提示,注册表修改等操作.

ms提供的例子里面演示的是在安装/卸载的时候对cfgclient.exe进行register和unregister操作

我们可以把这部分去掉,在下面的接口中写入自己想要的东东

Install_Init   安装开始的时候
Install_Exit 安装结束的时候
Uninstall_Init 卸载开始的时候
Uninstall_Exit 卸载结束的时候

例:
如果我们要在安装完成时候提示"安装完成,重起才能有效".
只要把代码改成下面的样子就可以了

#include "Aygshell.h"
...
SETUP_API codeINSTALL_EXIT Install_Exit(
    HWND    hwndParent,
    LPCTSTR pszInstallDir,      // final install directory
    WORD    cFailedDirs,
    WORD    cFailedFiles,
    WORD    cFailedRegKeys,
    WORD    cFailedRegVals,
    WORD    cFailedShortcuts
    )
{
    if(MessageBox(hwndParent, L"安装完成,重起才能有效", L"提示", MB_OKCANCEL) == IDOK)
 {
  ExitWindowsEx(EWX_REBOOT, 0);
 }

   return codeINSTALL_EXIT_DONE;
}

完成自己的setup.dll以后把这个dll添加到cab打包就可以了

具体添加操作就是在cab属性里面ce setupdll 选中这个setup.dll就行


 

发表于 2007-03-16 14:01 teky 阅读(3580) | 评论 (4)编辑 收藏
 
zm说很有可能离开上海到南京来工作,真是个好消息

zm来吧,南京帮副帮主的宝座等着你呢 :)
发表于 2007-03-16 10:51 teky 阅读(999) | 评论 (0)编辑 收藏
2007年2月26日
teky太乐观了,以为提前买到有座票就一定能顺利返京了,早上9点的车,8:40到汽车站,一看傻了,汽车居然已经被坐满了,不准上人了,靠,一打听,其实不用打听,旁边全是上不去的乘客,一辆大巴40几个位子,汽车站居然卖出了100多张有座票,要极度鄙视PZ汽车站的管理了,上不去,怎么办,凉办!不带我们走,车子也别想走哎,在集体利益下,大家团结就是力量,几十个人把大巴堵住了,要求车主想办法解决问题,车主那帮子人对我们甜言蜜语,威胁恐吓,软硬兼施,调虎离山,无间道罗,离间计罗,但在人民战争面前,什么计谋都是无效的,大巴两度逃跑未成,抗争到中午,车主终于调了个跑短途的小巴士过来,一辆空巴士的到来,使我们集体利益的捍卫变成了个人利益的争夺,混乱中,第一辆被堵的大巴以风一样的速度开跑了,50多人开始哄抢1辆巴士,teky身强力壮,当然抢到了好位子,一阵风雨过后,巴士被瓜分完毕,10多个没有抢到位子的战败者开始了新一轮的集体作战,把我们的车子堵住了,哈,搞了半天,teky从堵车的变成了被堵的了,还是走不了,一直拖到下午4点,又调了一辆巴士过来才解决问题,两车才慢慢悠悠出站,本以为雨过天晴见彩虹的,但小巴就是小巴,没开一个小时,前面的2个胎都先后爆了,拉到东至修了半天才重新上路,而且发现司机是跑庐山的,没跑过南京,在路上几次迷路,shit,一路战战兢兢的,晚上3点多才到南京.
发表于 2007-02-26 17:48 teky 阅读(2302) | 评论 (2)编辑 收藏
2007年2月2日
跟贴即可~
发表于 2007-02-02 10:25 teky 阅读(2582) | 评论 (2)编辑 收藏
2007年1月26日

代码如下:主要就是利用SetForegroundWindow

[DllImport("coredll.dll", EntryPoint = "GetCapture")]
private static extern IntPtr GetCapture();

[DllImport("coredll.dll", EntryPoint = "SetForegroundWindow")]
private static extern bool SetForegroundWindow(IntPtr hwnd);

public  bool SetFormTop(Form form)
 {
           form.Capture = true;
           IntPtr hwnd = GetCapture();
           form.Capture = false;

           return SetForegroundWindow(hwnd);
}

 private void bt_Click(object sender, EventArgs e)
{
            Form1 fdlg = new Form1();
            string title = this.Text;
            this.Text = string.Empty;//隐藏窗口标题

            fdlg .ShowDialog();   

            this.Text = title;

            SetFormTop(this);//在上个Form窗口返回的时候,把自己设置到最上面显示
  }

如果是在Smartphone中,那么结合上次说的对Back Key健的响应处理就更完美了.

发表于 2007-01-26 17:41 teky 阅读(2196) | 评论 (2)编辑 收藏
2007年1月22日
~开心,终于看到南大的录取公告了,原来12号就出复试结果了~今天才看到~~哈哈~南大我来罗~
发表于 2007-01-22 21:51 teky 阅读(985) | 评论 (0)编辑 收藏
2007年1月1日
祝大家元旦快乐,新年快乐~新年新气象,vck的兄弟姐妹们加油哟! teky也要加油!
发表于 2007-01-01 10:46 teky 阅读(1039) | 评论 (0)编辑 收藏
2006年12月28日
用Dopod710 调用ChooseContactDialog 来调用联系人对话框,发现有问题,经常是一片空白,不能显示联系人,偶尔联系人显示出来了,点选中或者取消,返回就当掉了,郁闷,不知道是不是所有的Dopod710都是这样的,询问Dopod技术人员也没有回复 :(
发表于 2006-12-28 11:22 teky 阅读(1733) | 评论 (1)编辑 收藏
2006年12月19日
       上个星期天,一年一次的旺年会在中心大酒店成功举办了,这次规模很大,除了各地分公司人员都来宁以外,还 邀请了各个友谊公司和外包团队的人员,所以这次旺年会又叫作泛明日大家庭2006岁末联谊会,从下午2点就开始表演和抽奖,一直到晚上9点结束,在高额的奖金刺激下,这次的节目都非常精彩,美女们的节目都走的 性感路线,象舞娘,印度热舞,肚皮舞杀伤力都是一片一片的,广州办的CosPlay走秀也非常棒,据说服装都是小泉兄自己搞定的,真是佩服,当然,和往年一样,南京和上海推出的2部DV片,还是节目的重头戏,豪华的演出阵容(帅哥美女,哈),完美搞笑的剧情设计(强力企划),加上强力的后期制作(平面美术,3D动画人员参加),使得2部DV都十分精彩,搞笑,大家都在想如果公开放到网上下载,那必定十分火爆,说不定那能拿个什么年度最佳DV人气奖,作为晚会工作人员(公司绝对廉价劳动力,搬运工,保管员,司仪),teky也是从中午忙到晚上,节目没有好好看,大餐没有好好吃,终于感动老天,实现了抽奖零的突破,抽到了一个奖:四等奖饭盒一套 ......什么笔记本阿,psp,IPod,豪华游阿都是浮云阿,teky有套饭盒就已经很满足了。
发表于 2006-12-19 13:49 teky 阅读(1099) | 评论 (0)编辑 收藏
2006年12月5日

昨天sun要把我们新写的程序安装到董事长用的Dopod818Pro上,刚装了上cf2,手机就死机了,开机以后就是白屏,进不了系统,重起,拔电池,拔卡,reset都没有用,那个急阿,都已经准备刷rom了,还好最后想到了硬启动,启动以后终于可以进去了,不过机子上装的东东都没有了~~

硬启动方法:
按住照相键和照相键下面那个语音键不松
然后用手写笔按住USB旁边的Reset 键几秒钟就可以了

发表于 2006-12-05 17:46 teky 阅读(1200) | 评论 (0)编辑 收藏
2006年11月10日

老文章了:

Windows Mobile 5.0 中为开发人员提供的新功能

使用 Windows Mobile 5.0 中的图片、视频和照相机

SelectPictureDialog  图片选择对话框

CameraCaptureDialog  摄像捕捉对话框

State and Notification Broker API

Windows Media Player媒体播放器控件

ChooseContactDialogcontactDialog 

Pocket Outlook ,Phone,SMS,Direct3D等等

windows mobile 5.0提供的新功能真是很强大很方便,ms早就该提供了,哈。
这次利用 CameraCaptureDialog  摄像捕捉对话框和上次说的Gif编码类 AnimatedGifEncoder 写了个小程序,用CameraCaptureDialog  来拍照片,然后把拍到的几张照片合成一张gif图片显示出来。

using Microsoft.WindowsMobile.Forms;
......
CameraCaptureDialog cameraCaptureDialog = new CameraCaptureDialog();
          
cameraCaptureDialog.Owner = this;
           
cameraCaptureDialog.Title = "Take your Photo";
           
cameraCaptureDialog.Mode = CameraCaptureMode.Still;//捕捉图像 
              
if (cameraCaptureDialog.ShowDialog() == DialogResult.OK &&

             cameraCaptureDialog.FileName.Length > 0)
         
{
            //图片路径    cameraCaptureDialog.FileName
            ......    
}
......

记录拍下照片的路径,然后利用AnimatedGifEncoder 合成就可以了。

在手机上运行的还不错,把拍到的照片连成一个gif来看还是挺有意思的,但是要把摄像头的分辨率设低点,不然要是用1600*1200的话,合成gif的时候速度实在是忍受不了唠。

发表于 2006-11-10 19:57 teky 阅读(1320) | 评论 (0)编辑 收藏
2006年11月9日
昨晚又梦到高中上学了,几乎所有人都能梦到,我晕,真是强悍的可以了,怎么老作上学的梦阿,是不是我比较单纯,或者说是无聊,哈哈,要不就是心无所恋(没有林林幸福),梦里兄弟姐妹是那么亲切,可爱,美好而赋有特色的高中时光阿,不记的在哪看到的,据说高中生活,经历,对人一生影响很大,因为那时间段是人第一次心智成熟成长的过程,很多性格爱好都是那时候养成的,不过鉴于我国教育体制的失败,估计我们性格当中就有被迫害的烙印了,哈,这个不谈,我希望很多很多年以后,自己还能作这样的梦,起码,这份记忆,这份感情,一人一辈子只有一份的......6点多钟,不知道是梦醒了,还是被冻醒了,睡不着了,起来绕南湖小跑两圈,或者叫跑加走两圈,胖的实在跑不动了,hoho.
发表于 2006-11-09 09:23 teky 阅读(1068) | 评论 (0)编辑 收藏
2006年11月7日

用CF1真可怜,想要用bitmap.Save()把bitmap保存为gif格式都不让,还要用自己写的编码来实现,还好最近有了新发现,在网上找到一个比较好用的gif编码,解码C#封装类库,它由4个文件AnimatedGifEncoder.cs  GifDecoder.cs LZWEncoder.cs  NeuQuant.cs 组成.

加到工程里面,就可以象下面这样使用了,有兴趣可以试试.

使用例子:
  /* 合成 Gif */
  String [] imageFilePaths = new String[]{"d:\\Frame0.jpg","d:\\Frame1.jpg","d:\\Frame2.jpg"};

  string outputFilePath = "c:\\test.gif";

  AnimatedGifEncoder e = new AnimatedGifEncoder();

  e.Start( outputFilePath );
  //图片转换时间
  e.SetDelay(50);
  //1表示只动一次,0:表示循环,n:表示循环n次
  e.SetRepeat(0);

  for (int i = 0, count = imageFilePaths.Length; i < count; i++ )
  {
    e.AddFrame( Image.FromFile( imageFilePaths[i] ) );
    //或者e.AddFrame(Bitmap对象);
  }
  e.Finish();

   /* 分解 Gif */
   string outputPath = "c:\\";

   GifDecoder gifDecoder = new GifDecoder();

   gifDecoder.Read( "c:\\test.gif" );

   for ( int i = 0, count = gifDecoder.GetFrameCount(); i < count; i++ )
   {
    Image frame = gifDecoder.GetFrame( i );  // 第i帧
    frame.Save( "......\\image.png",ImageFormat.Png );
   } 

发表于 2006-11-07 17:23 teky 阅读(6189) | 评论 (12)编辑 收藏
2006年10月31日

刚作smartphone程序的时候有个功能就是设置一张图片为sp桌面背景,这个功能很长时间都没有完全实现,设置桌面有时成功,有时候则没有反应,几经辗转,最近还是ningxu告诉我是一个参数错了,才有了眉目,哈,发挥vckbase精神,分享之.

系统的主题文件和主题背景是放在\Storage\Application Data\Home下面的,所以习惯的,先把图片拷到这个文件夹下面,当然你不拷也可以。

1. 通过更改注册表设置图片路径,把HKEY_CURRENT_USER\\ControlPanel\\Home下的BgImage健的值设置为图片的路径.

CF1里面没有提供直接操作注册表的类,我们只有转调用api了,用CF2的就幸福了,直接用Registry 类实现吧

......
RegCreateKeyEx(HKEY_CURRENT_USER, L"\\ControlPanel\\Home", 0, NULL, 0, 0, NULL, &hKey, NULL);

RegSetValueEx(hKey, L"BgImage", 0, REG_SZ,(BYTE*)path, len);
......

2 .注册表修改完以后,要通知系统刷新一下,如下就可以了

 [System.Runtime.InteropServices.DllImport("Coredll")]
 private static extern IntPtr GetDesktopWindow();

 [System.Runtime.InteropServices.DllImport("Coredll")]
  private static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);

 IntPtr hWindow = GetDesktopWindow();
 SendMessage((IntPtr)hWindow, 0x001A, 0, 0);

以上就完成了设置桌面背景的功能了。

上面是只是修改了sp主题风格的背景图片,并不改变现在使用的主题,如果想换个主题来使桌面图片更好看,也有办法哟,

更改注册表HKEY_CURRENT_USER\\ControlPanel\\Home下Scheme健值为主题文件的路径然后刷新一下就可以了。

其他的背景图片参考
路径:HKEY_LOCAL_MACHONE\SOFTWARE\Microsoft\Shell\Rai\

各项对应的背景图片:

:MSScut\BKBitmapFile
 快速拨号
 
:ErrorBox\BKBitmapFile
 错误信息
 
:CallAlert\BKBitmapFile
 来电时的背景
 
:InformationBox\BKBitmapFile 
 信息
 
:MSCdial\BKBitmapFile  
 输入号码 
 
:MSClog\BKBitmapFile  
 通话记录
 
:MSCONTACTS\BKBitmapFile
 联系人
 
:MSCPROG\BKBitmapFile
 正在拨号
 
:MSStart\BKBitmapFile 
 开始菜单
 
:MSSYNCAPP\BKBitmapFile
 ActiveSync背景
 
:QuestionBox\BKBitmapFile 
 确认
 
:VolDlg\BKBitmapFile 
 耳机音量
 
......

  如果在对应的目录下,同时有BannerImage和BKBitmapFile,那么,前者图片大小为176×20,后者为176×160。如果只有BKBitmapFile,图片大小为176×180。当然,如果你觉得麻烦,可以把BannerImage删除,直接把BKBitmapFile设置为176×180就可以了。

开关机画面

路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Splash Screen

开机(按顺序显示):
MSBitmap
CarrierBitmap

关机(按顺序显示):
MSShutdownBitmap
CarrierShutdownBitmap

开关机图片大小为176×220,也就是全屏显示的图片。

 

 

 


 

发表于 2006-10-31 19:33 teky 阅读(3640) | 评论 (3)编辑 收藏