百度空间 | 百度首页 
               
 
文章列表
 
2009-07-15 09:11
第一部分:
其实Rp开始出现问题是在大约下午3点钟,和CR合作的程序测试版出现严重的乱码问题(以前修复过,又出现了),花了两个小时修复此BUG,然后保存工作,准备晚上给CR。
下午大约8点钟(应该是晚上了),程序发给CR,CR说用VS2008编译一下吧,结果发现这个问题。
char* pExt = strrchr(lpszPath, '.');
VS 说不能从const char* 转化为char*,CR在char* pExt前加了一个const 后编译通过(debug),结果运行后直接崩溃!
我用VC6编译通过,而且没有任何问题,后来发现VC6关于strrchr的声明和VS不一样,VC6返回值类型为char*,没有const。
但是这一个const 是不会导致程序崩溃的啊!我也用VS2008编译了一下工程,结果运行正常!

第二部分:
用VS2008 编译了lib,结果当然还是我这儿正常,CR那儿运行直接就挂掉了。后来发现CR不仅仅改动了EXE源码中的const,一个路径也由C改成了E,我也试着改成E,果然Crash!
由于debug版的lib不会出错,Release版又不好调试(无法通过调试器)下断。所以在lib中强行插入一个_asm int 3,生成工程时选区中Generate Debug Info,用VS的调试器挂上pdb搞了一阵,结果还是刚才乱码地方的BUG(虽然我没有看出有什么BUG,我估计我的思路是和DEBUG编译设置一致的),换了一种写法后,bug消失。

第三部分:
……
N次调试后,把程序再发给CR,CR惊奇地说能用了!我想这下可完了,由安培环路定理的RP守恒定律(详见《RP场论》:http://tieba.baidu.com/f?kz=587028249),RP已经转移了!
把路径从E改成C,祈祷了半天囧RP别转移到我这儿。然后运行(Release版),然后console一闪直接消失!用cmd运行时发现了它的提示信息:
runtime error! R6002, floating point support not loaded. 晕,我得罪了谁啊,我的代码中连个float,%f,double都没有出现,连变量的名字中都没!看来RP真的转移了!
后来发现好像是exe的callback的问题(这个思路给了我强大的误导),因为我把callback直接返回FALSE,或者不调用stricmp等函数,就不会崩溃。如果说是这些函数的BUG,我真的不信。

第四部分:
把路径从C改成E后正常,改成C:\\Program Files依然正常,改成C:\\Documents and settings后崩溃,进一步发现改成C:\\Documents and settings\\Lightning后崩溃,但是改成C:\\Documents and settings\\Lightning\\桌面 后正常!
难道是所谓的临时文件和一些设置坏了我的事?为什么其它盘的文件就不会导致出错?无解。

第五部分:
从网上找了一些资料,说单单使用printf("%f", 10/3)这句是未定义的,可能导致C6002异常(可是我没用"%f"啊),抱着试一试的心理——————————





打开lib的源代码,在任意的地方(我选的是DllMain)添加下面一句:

float a = 0; 问题解决!!!


最后总结一句:我一般是不会遇到RP问题的,我遇到的不是一般的RP问题T_T!
类别:默认分类 | 评论(3) | 浏览()
 
2009-07-14 19:45
http://tieba.baidu.com/f?kz=608115191



白色絮 状的沉淀 跃然试管底
铜离子 遇氢氧根 再也不分离
当溶液 呈金黄色 因为碘酸钾
浅绿色二假亚铁把人迷

电石偷偷去游泳 生成乙炔气
点燃后变乙炔焰 高温几千几
逸散那二氧化碳
石灰水点缀白色沉底

苯遇高锰酸钾 变色不容易
甲苯上加x 小心tnt
在苯中的碘分子紫色多美丽
就为萃取埋下了伏笔

电解池电解质 通电阴阳极
化合价有高低 电子来转移
精练了铜铁锌锰镍铬铝和锡
留下阳极泥

稀释那浓硫酸 浓酸入水滴
沿器壁慢慢倒 搅拌手不离
浓酸沾皮肤立即大量水冲洗
涂抹上碳酸氢钠救急

甘油滋润皮肤 光滑又细腻
熟石灰入土地 酸碱度适宜
看酸红碱紫的试纸多美丽
你眼带笑意
类别:默认分类 | 评论(2) | 浏览()
 
2009-07-11 12:19
添加了一些代码,初步支持了磁吸功能。没有多优化,速度可能比较慢……
发一个图:



下载地址:http://aegisys.ys168.com/ ==>Aegisys Lightning Storm ==>KsSuperGraphEx[Beta1].exe 291KB
或者:http://kxsystem.googlepages.com/KsSuperGraphExBeta1.exe
类别:默认分类 | 评论(8) | 浏览()
 
2009-07-10 15:56
foo_input_ksp_midi 插件(V 1.002)使用说明

软件名:foo_input_ksp_midi
作者:Lightning[0GiNr]
作者BLOG:http://hi.baidu.com/aegisys
团队:0GiNr: http://bbs.0GiNr.com/
软件大小:30 KB
文件:[0.83]foo_input_ksp_midi.dll 适用于foobar2000 0.83版
[0.9x]foo_input_ksp_midi.dll 适用于foobar2000 0.9x版,如0.96
Foobar MIDI 插件使用说明.txt
DLL的MD5:753246423afa1d279c50a69e1e001615 [0.83]foo_input_ksp_midi.dll
ddd95ceb2cd4dbdd3613e5fb2710264e [0.9x]foo_input_ksp_midi.dll

下载:
http://aegisys.ys168.com/ ===> Aegisys Lightning Storm ====>foo_input_ksp_midi(1.002Beta).rar 26KB

或者:
http://kxsystem.googlepages.com/foo_input_ksp_midi1.002Beta.rar

foo_input_ksp_midi是一个foobar2000的MIDI插件,通过直接连接windows的解码器来播放MIDI,不像以往的MIDI插件使用自带单色库而播放出古怪的音乐。

使用方法:将foo_ksp_midi复制到foobar安装目录下的components文件夹内,重启foobar即可。(本插件仅仅在0.9.6.2 beta2下测试成功,其它版本的支持情况未知)

V 1.001 更新
修正了不能播放中文名称MIDI 的BUG。

V 1.002 更新
支持广大foobar迷所喜爱的foobar2000 0.83版本,本压缩包两个文件夹内分别放着适用于0.83版本和0.9x版本的插件,请对号入座。

目前0.83版的插件在一首MIDI播放完后不能自动跳到下一首,这个BUG有待清除……

V 1.002 Beta 更新
已经修正一首MIDI播放完后不能自动跳到下一首的BUG。


foo_ksp_midi是Lightning[0GiNr]学习Foobar SDK的练习之作,由于目前对foobar sdk的研究还停留在表面,因而这个插件的功能上也有一些不足.如果您在使用中还发现了什么问题或者有什么好的建议话,请到这里留言。
类别:默认分类 | 评论(2) | 浏览()
 
2009-07-09 21:46
网上查了一下,使用Foobar2000 v 0.8.3版本的人数还是相当地多。原来0.9系列新版本更新SDK后,许多插件就不能使用了,新版本中默认也没有APE插件,这一点让很多foobar迷们放弃了新版。
十分艰难地以5KB/s的蜗牛速度从网上下载到了绝世的foobar2000 v 0.83 special英文原版,仅2.9MB。安装后果然遭遇到了一堆插件(共66个DLL),DSP、ABX、APE等插件自然都在(这一点确实比0.9x版本屈指可数的插件数目要强)。
可是我编译foo_input_ksp_midi用的是0.9版本的SDK + VS2008,当然这样编译出来的DLL被foobar0.83直接报告说:This component appears to have been built with newer version of foobar2000 SDK, please download latest version of foobar2000 in order to use it.
看来需要古老的SDK了,去搜0.83的SDK,没找着,却发现了0.82 SDK的链接,可是都不能下。然后花费了更多的时间在一个相当隐蔽的地方找到了foobar的0.82版SDK(这个过程比找0.83 special还辛苦)。
Foobar2000 v0.82 SDK默认采用VC6来编译工程。这个SDK包中也包括了相当数量插件的源代码,但是其中相当数量的(包括ABX,APE插件等源码)因为缺少文件而不能编译。不过好的是,SDK的核心foobar200-_sdk, foobar_sdk_helpers,foobar_component_client, pfc还能编译成功。
直接把foo_input_ksp_midi的源码放进来后按下F7,结果以编译器报告了几百个错误后假死而告终。看来又得学习一次SDK了……幸好包含播放MIDI类的lib原先就是VC6编译通过的,可以直接利用……


23:14
经过一个晚上的努力,结果是foobar 0.83成功认出了修改后的插件,目前仅仅拥有拖入MIDI后立即播放的功能……

发个图,然后睡觉去~

类别:默认分类 | 评论(3) | 浏览()
 
2009-07-08 20:14
来自百度物理吧,有修改。

问:听说相对论和二进制都来自于易经的启发,是不是真的?又证明了我们中华民族的伟大智慧。
答:每当看见现代文明让中国人感到无力和自卑时,中国人就会翻老祖宗的故纸堆然后找出一个说“看,我们的祖宗在这。” by 58.63.18.*
类别:默认分类 | 评论(8) | 浏览()
 
2009-07-07 07:58
发贴之前,先纪念一下今天这个特殊的日子。


http://bbs.pediy.com/showthread.php?t=92912


MPEG-2 0day续:一个&引发的漏洞:
http://hi.baidu.com/yicong2007/blog/item/74d99f82f78d0a99f703a600.html

原文太长,贴不上来。只好写点感想了。

C++好像有类型检查吧,buff写成&buff应该报错的。
可惜的是,这一个Read函数对应的参数说明是LPVOID,这个把类型检查也巧妙地绕过了。
看来以后用buffer的时候还是写BYTE*比较好。

.text:59F0D748                      lea          ecx, [ebp+8]       ; 27楼的云砉生说得很中肯,这里本来[ebp+8]里保存的就是已分配的0x34字节缓冲区,因此必须是mov ecx, [ebp+8]才是正确的

.text:59F0D74B                  push     ecx
.text:59F0D74C                  push     edi
.text:59F0D74D                  call     dword ptr [eax+0Ch] ; (17)mshtml!FatStream::Read,直接读了,因为指针搞错,结果溢出了

Read 原型:
int __stdcall FatStream__Read(int,LPVOID lpBuffer,DWORD nNumberOfBytesToRead,LPDWORD lpNumberOfBytesRead)

例子:

#include <windows.h>
#include <stdio.h>

void Print(void* p)
{
    printf("%p", p);
}


int main(void)
{
    int* x = new int[5];
    Print(&x); // 这里写x还是写&x编译器都不会报错。
    delete[] x;
    system("pause");
    return 0;
}
类别:默认分类 | 评论(3) | 浏览()
 
2009-07-06 18:18
类别:默认分类 | 评论(6) | 浏览()
 
2009-07-05 12:15
旧版:


准备改成:


类别:默认分类 | 评论(11) | 浏览()
 
2009-07-04 20:02
http://news.163.com/09/0704/04/5DBP69QB0001124J.html

这还了贷也没地方住啊。

四川新闻网-成都商报7月4日报道上海市政府3日召开新闻发布会宣布,上海“莲花河畔景苑”在建楼房倒覆事故的主要原因是,楼房北侧在短期内堆土高达10米,南侧正在开挖4.6米深的地下车库基坑,两侧压力差导致过大的水平力,超过了桩基的抗侧能力。

编一个对话:
购房者:楼塌了,贷款我们不能还了!
银行:对不起,你必须得还。
购房者:那我要是不还呢?
银行:提醒一句,你们贷款是拿房子做抵押的……
购房者:(打断银行的话)哦,尽管拿去罢,房子还在那儿躺着呢。
银行:……
类别:默认分类 | 评论(0) | 浏览()
 
     
 
 
文章分类
 
 
     
 
文章存档
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     
 
最新文章评论
   

其实不是RP问题,是寂寞。
 

同情。。
 

其实我沙的不是发,是寂寞
 

我不禁想起了《内核欢迎您》。
 

还可以。
 
     


©2009 Baidu