2004年4月29日

MSDN里的一篇文章:

Building Applications Using Win32.mak

15:29 | 评论 (0)

原代码

...

//Code block A

OldFunc();

//Code block B

FooFunc();

//Code block C

...

我修改的代码

...

//把Code block A执行逻辑挪至Code block C

//Code block A

//OldFunc();

//Code block B

FooFunc();

//Code block C

NewFunc(); // The same function of old one

...

然后出错,蚂蚁昨天还一直以为是NewFunc的问题,可是今天把NewFunc替换成OldFunc也是同样的!

教训

  • 一步一步改变,顺序的逻辑块可以任意交换位置-除非你能确认这种交换是没有错误的
  • 出问题就问自己:改变了什么?

15:27 | 评论 (0)

2004年4月28日

在单元测试通过之后,我误以为集成到原有系统中是轻而易举的事情,结果折腾了两天,也没有搞定集成测试中出现的问题!

  • Context Research有多重要?
  • Continous Intergation有多重要?

进度比我原估计的多了2天,也许还要多:(,郁闷……

21:50 | 评论 (0)

2004年4月27日

昨天在china-pub顶的书今天就收到了,很快啊!:)

  • Doom启示录
  • 测试驱动开发

10:24 | 评论 (0)

思考一下网络游戏重审清洗 网游节目禁播会扩散吗?,思考两个问题:

  • 人治与法治
  • 对待新事物的态度

简单地禁止一项新生事物是一种幼稚的表现,这世界上的很多事是宜导不宜堵的。

10:23 | 评论 (0)

买到了30日的火车票:N215,下午3点多。

8点领号,蚂蚁的号码是24,然后抱着希望等待9点开始放票。结果直到11点那个排队的售票点才开始卖票,11点半才拿到手。

买票就像打仗,需要勤于争先,勇于坚持。呵呵。

10:00 | 评论 (0)

2004年4月26日

  • 如何让你的网络程序支持NTLM代理服务器-本来以为使用WinInet应该轻而易举,结果发现不是那么回事儿:(,今天折腾了一天,到现在才找了2个例子:httpauth和httpdump,以后研究研究。
  • 列出明天要实现的项目的新版本特征

17:50 | 评论 (0)

Mark this for later reading:

Crash Finder by John Robbins

15:17 | 评论 (0)

方法一:

运行命令“windbg -I”,关于该命令的更多说明请参阅windbg的帮助文件。

方法二:

修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug,设置"Debugger"="\"C:\\Program Files\\Debugging Tools for Windows\\windbg.exe\" -p %ld -e %ld -g"(我直接看了运行方法一的结果)。

请先备份注册表的改动前的部分。

15:01 | 评论 (0)

2004年4月23日

  • 继续熟悉Winsock2编程
  • 仔细研究layered例程

17:04 | 评论 (1)

nmake的Hello World中,蚂蚁简单示范了一个使用nmake构建程序的例子,在这个例子里,我们将给生成的可执行文件增加版本资源。

有所改变的文件如下

  • clean.cmd

DEL *.obj
DEL *.res
DEL *.exe

  • SpikeCmdBuild.cpp

#include <stdio.h>

void main()
{
printf("Spike Command Line Build v1.0.0.0.\n");
}

  • makefile

#
# File Name: makefile
# Summary:
# Simply demonstrate how to use nmake to build a exe file with version info.
#

#
# You must define link yourself, i'm trapped at this point for a while...:(
#
link=link.exe

#
# Spike excuted binary file name
#
EXE=SpikeCmdBuild.exe

#
# Spike source file & object file
#
APPSRC=SpikeCmdBuild.cpp
# Note how we replace the .cpp with .obj in a macro
APPOBJ=$(APPSRC:.cpp=.obj)

#
# Spike resource file
#
APPRC=SpikeCmdBuild.rc
# Also macro replacement as above
APPRES=$(APPRC:.rc=.res)

#
# nmake entry point
#
all: $(EXE)

#
# Note: We use some infered rules, such as
# .cpp.obj
# $(CPP) $(CPPFLAGS) /c $<
# .rc.res
# $(RC) $(RFLAGS) /r $*
# Please type commmand "nmake /P" to view the detail info.
#
$(EXE):$(APPOBJ) $(APPRES)
$(link) $(APPOBJ) $(APPRES)

新增加的文件

  • SpikeCmdBuild.rc

#include <windows.h>

#define P_VERSION 1,0,0,0
#define F_VERSION 1,0,0,0

#define P_VERSTR "1, 0, 0, 0\0"
#define F_VERSTR "1, 0, 0, 0\0"


VS_VERSION_INFO VERSIONINFO
FILEVERSION F_VERSION
PRODUCTVERSION P_VERSION
FILEFLAGSMASK 0x3fL
FILEFLAGS 0x0L
FILEOS 0x4L
FILETYPE 0x1L
FILESUBTYPE 0x0L
{
BLOCK "StringFileInfo" {
BLOCK "080004B0" {
VALUE "CompanyName", "Spike Inc.\0"
VALUE "FileDescription", "Spike exe for command build.\0"
VALUE "FileVersion", F_VERSTR
VALUE "InternalName", "Spike\0"
VALUE "LegalCopyright", "Leftright twinsant@sina.com\0"
VALUE "LegalTrademarks", "twinsant(tm)\0"
VALUE "OriginalFilename", "SpikeCmdBuild.exe\0"
VALUE "ProductName", "SpikeCmdBuild\0"
VALUE "ProductVersion", P_VERSTR
}
}

BLOCK "VarFileInfo" {
VALUE "Translation", 0x800, 1200
}
}

15:23 | 评论 (0)

蚂蚁一直认为自己是在一个传统式的中国家庭里:

父亲忙碌于工作而很少与子女有只言片语-即使现在依然如此,唯一几次和蚂蚁谈话时间多于一个小时的时候,还是蚂蚁在人生路程上出现转折坎坷而失意时,父亲特意对他的鼓励与支持。母亲单纯而直白,每次电话里总是一次次唠叨她的儿子在外有没有好好吃饭,有没有自己知冷暖。

从父亲身上,我学会了对待工作的认真态度和强烈的责任心,学会了投入。从母亲身上,我体会到中国母亲特有的平凡中的伟大,感受着亲情。

02年开始步入社会,蚂蚁才体会到工作的艰辛、生活的烦杂,才真正从内心里感受到父亲在工作中遇到问题,却从不让不快影响子女生活的良苦用心,真正从内心里感动于母亲操劳于生活琐事却引以为乐的淳朴本质。

蚂蚁有幸于生长在这样一个民主而幸福的家庭,蚂蚁很珍惜。

但宝贵的东西从来都不是永恒的,有一天,爸妈会变老,我们能为他(她)们做些什么?

写下来自勉,并给所有的子女。

13:04 | 评论 (0)

<<  94 95 96 97 98 99 100 101 102 103 104 105 106 >>

Copyright twinsant.