我的一片天

我的一片天
posts - 27, comments - 12, trackbacks - 0, articles - 16
   :: 首页 :: 新随笔 :: 联系 ::  :: 管理

     摘要:
var
i:integer;
begin
for i:=0 to 10 do
begin
ary[i]:=0;
end;
end;

貌似简单的一段代码,却不简单。调试时,发现i居然是从11开始的,但是如果多声明一个j变量,变成
for i:=0 to 10 do
begin
j:=i;
ary[i]:=0;
end;

在这里j 完全没用,但是调试的时候却能使i正确地等于0.开始以为是程序哪里的内存操作过界造成的,但是即使是一个很简单的程序也是这样,折腾了半天不得其解。


通过搜索,才知道这个DELPHI的优化处理造成的,只要在 Project->options->compile中把Optimization项的沟去掉就一切都正常了。
  阅读全文

posted @ 2008-08-18 16:17 xyz 阅读(846) | 评论 (1)编辑 收藏

     摘要: 最近在编写一个游戏的脱机客户端,发现使用Socket.SendBuf发送时,总是会出现部分内容发送不出去。

通过搜索,终于找到原因所在。

原来在调用Socket.SendBuf(buf,count)后,立即freeMem(buf),造成socket还没来得及把buf发送完,就被free掉了。

因此把要发送的buf定义成全局变量,再程序开始创建,并在程序结束后释放。
  阅读全文

posted @ 2008-07-19 21:49 xyz 阅读(4069) | 评论 (0)编辑 收藏

     摘要: CAsyncSocket异步机制
当你获得了一个异步连接后,实际上你扫除了发送动作与接收动作之
间的依赖性。所以你随时可以发包,也随时可能收到包。发送、接收
函数都是异步非阻塞的,顷刻就能完成,所以收发交错进行着,你可
以一直工作,保持很高的效率。

但是,正因为发送、接收函数都是异步非阻塞的,所以仅调用它们并
不能保障发送或接收的完成。

例如发送函数Send,调用它可能有3种结果:错误、部分完成、全部完
成。其中错误又分两种情况:一种是由各种网络问题导致的失败,你
需要马上决定是放弃本次操作,还是启用某种对策;另一种是“忙”,
你实际上不用马上理睬。你需要调用GetLastError来判断是哪种情况,
GetLastError返回WSAEWOULDBLOCK,代表“忙”,为什么当你Send得
到WSAEWOULDBLOCK却不用理睬呢?因为CAsyncSocket会记得你的Send
WSAEWOULDBLOCK了,待发送的数据会写入CAsyncSocket内部的发  阅读全文

posted @ 2008-03-21 12:58 xyz 阅读(557) | 评论 (0)编辑 收藏

     摘要: 最近得到圣者无敌的VC源代码文件,初步运行提示几个错误。做了以下修正后成功运行:
1.安装DirectX 8 SDK
2.修正部分变量的声明
3.把部分没在项目文件列表的CPP文件补充回来(有文件,但没在项目列表)。

由于之前不是使用VC作为编程工具,搞不懂首先处理哪里,经过读了网上的一些文章(MFC程序设计之来龙去脉 )后,终于搞懂,总结如下:

根据VC的工程方式,SOMA工程产生了CSOMAAPP的一个应用程序类(soma.cpp),这个类在afxWinMain中被执行。
1.执行CSOMAAPP的InitInstance
初始化socket,建立登录界面.
2.执行CSOMAAPP的Run
定义消息处理  阅读全文

posted @ 2008-03-21 11:39 xyz 阅读(253) | 评论 (1)编辑 收藏

posted @ 2008-03-21 11:23 xyz 阅读(622) | 评论 (0)编辑 收藏

     摘要: 24日在广西出差,接到老婆的电话,说是驾校通知去拿驾驶证了。

26日回去抽了个时间去领了回来,交了60元的补考费(3科目补考,呵,水平菜!),原来9月18日驾证就批下来了。

想起考证的过程还真是痛苦曲折,06年2月报的名,到拿证居然拖了6个多月。总的算下来费用差不多4K了。

3000的报名费,200桩考,300九选三,300路面。
  阅读全文

posted @ 2007-09-27 23:03 xyz 阅读(120) | 评论 (0)编辑 收藏

     摘要: 以前也找过一两个BLOG,但由于速度不理想最后都荒废了,现在在此弄了个小窝,聊作安生了.  阅读全文

posted @ 2007-09-27 16:44 xyz 阅读(135) | 评论 (0)编辑 收藏

仅列出标题
共3页: 1 2 3