- 博客(48)
- 资源 (6)
- 收藏
- 关注
原创 Adope flash player ActiveX10安装文件Flash10l.ocx手动注册后不能被删除的解决方案
<br />需求:软件在安装时注册Flash10l.ocx文件,卸载时删除Flash10l.ocx,安装包工具:NSIS<br /> <br />问题:卸载Flash10l.ocx文件失败,文件可以重命名,拷贝,不能被覆盖,删除,delete(这里的delete包括手动删除,shift删除,cmd删除,你懂的!!)时提示“Access is denied” or “此文件正在被另一个程序使用”or“磁盘空间不足或被写保护”等错误信息<br /> <br />方法1:<br />1.将Flash10l.ocx
2010-12-15 16:40:00
4119
1
原创 memcpy和memmove的区别
以前在动态申请分配内存时,都使用memcpy,而看到别人的源码上使用的是memmove,本着一个优秀程序员的好奇心和进取心 (O(∩_∩)O哈哈~,别打我),就到网上查了查,很多网友都说是memcpy不支持overlap,memmove支持overlap。 MSDN上如是描述:memmove:RemarksThe memmove function copies
2010-03-17 16:43:00
1062
转载 一名网络人员必须明白的网络通信原理
在当今的以太网络通信中,在IP数据包中有两个必不可少的地址,那就是IP地址和网卡地址(即MAC地址),在数据包中,无论是IP地址还是MAC地址,都有源地址和目标地址,因为通信是双方的,所以就必须同时拥有双方的地址!在同一IP网络中通信,将会发生以下事件:主机A与主机B通信,这时主机A肯定首先要封装这些需要发给主机B的数据包,那么对于主机A来说,自己的IP地址和MAC自己肯定能够轻易得到,对于主机B
2010-03-12 21:10:00
738
转载 Win32下两种用于C++的线程同步类(下)
上一篇中我介绍了一种通过封闭Critical Section对象而方便的使用互斥锁的方式,文中所有的例子是两个线程对同一数据一读一写,因此需要让它们在这里互斥,不能同时访问。而在实际情况中可能会有更复杂的情况出现,就是多个线程访问同一数据,一部分是读,一部分是写。我们知道只有读-写或写-写同时进行时可能会出现问题,而读-读则可以同时进行,因为它们不会对数据进行修改,所以也有必要在C++中封装一种方
2010-03-12 21:08:00
533
转载 Win32下两种用于C++的线程同步类(上)
线程同步是多线程程序设计的核心内容,它的目的是正确处理多线程并发时的各种问题,例如线程的等待、多个线程访问同一数据时的互斥,防死锁等。Win32提供多种内核对象和手段用于线程同步,如互斥量、信号量、事件、临界区等。所不同的是,互斥量、信号量、事件都是Windows的内核对象,当程序对这些对象进行控制时会自动转换到核心态,而临界区本身不是内核对象,它是工作在用户态的。我们知道从用户态转换到核心态是需
2010-03-12 21:06:00
612
原创 两道编程题,思想很重要
用户输入年月日,计算该日是该年的第几天并输出int days(int y, int m, int d){ /* 数组mt存放各月天数 */int n=0,mt[ ]={31,28,31,30,31,30,31,31,30,31,30,31}; if (LEAP_YEAR(y)) mt[2]=29;
2010-03-12 21:04:00
893
原创 C语言的malloc()和free()函数原理【整理】
一、malloc()和free()的基本概念以及基本用法:1、函数原型及说明:void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。关于分配失败的原因,应该有多种,比如说空间不足就是一种。void free(void *FirstByte): 该函数是将之前用malloc分
2010-03-12 21:01:00
20825
原创 C语言数据类型大小和结构体中变量的地址分配方法【整理】
数据类型: char short int long float double (long double) gcc3.2.2: 1 2 4 4 4 8 12 Visual C++:1 2 4 4 4 8
2010-03-08 22:09:00
2147
原创 Strcpy / Strncpy的工作方式
Strcpy的函数原型: char *strcpy(char *dst, const char *src)函数功能: 将字符串src拷贝到字符串dst中去。用法解析: 在执行字符串拷贝之前,“用户需要保证”dst指向的空间足够大。否则的话,可能会产生意想不到的后果。 如果dst所指向的空间不足以存储src中的字符串的话,不要以为只是遗失了src中存储
2010-03-08 22:08:00
1287
原创 sprintf函数使用详解【整理】
printf 可能是许多程序员在开始学习C 语言时接触到的第二个函数(我猜第一个是main),说起来,自然是老朋友了,可是,你对这个老朋友了解多吗?你对它的那个孪生兄弟sprintf 了解多吗?在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也
2010-03-08 22:06:00
1086
原创 C++程序调用已编译的C程序【整理】
如果C++程序要调用已经被编译后的C 函数,该怎么办?假设某个C 函数的声明如下:void foo(int x, int y);该函数被C 编译器编译后在库中的名字为_foo,而C++编译器则会产生像_foo_int_int之类的名字用来支持函数重载和类型安全连接。由于编译后的名字不同,C++程序不能直接调用C 函数。C++提供了一个C 连接交换指定符号extern“C”来解决
2010-03-08 22:05:00
872
转载 打败你的十五个坏习惯
人从诞生之日起,各种习惯就开始或早或晚地在人们的大脑中扎根。我记得我女儿小时候从跟大人一起吃饭开始就不吃带调味品的菜,比如葱姜蒜等等,直到她长成了大姑娘依然如此。这可说已经成了习惯。还有的人从小就喜欢趴着睡觉,人都奔本“好几张”了还是这种睡觉姿势。以上这两类习惯均属生活方面,说不上好坏,对他人对自己也都没有什么太不好的影响。有些习惯则不成,先不说对别人有什么影响,光是自己时间长了都吃不消——不仅妨
2010-03-08 22:01:00
521
原创 很有用的60个小常识
1.吃了辣的东西,感觉就要被辣死了,就往嘴里放上少许盐,含一下,吐掉,漱下口,就不辣了; 2.牙齿黄,可以把花生嚼碎后含在嘴里,并刷牙三分钟,很有效; 3.若有小面积皮肤损伤或者烧伤、烫伤,抹上少许牙膏,可立即止血止痛; 4.经常装茶的杯子里面留下难看的茶渍,用牙膏洗之,非常干净; 5.仰头点眼药水时微微张嘴,这样眼睛就不会乱眨了; 6.嘴里有溃疡,就用维生素C贴在溃疡处,等它溶化后溃疡基本就好了
2010-03-08 21:58:00
872
转载 所谓伊人,在水一方
所恋的那个心上人,在水的另一边。蒹葭苍苍,百露为霜。美人隔着秋水,在那一方。相思无限,想象如见。浪漫的伤感、给人无限遐想的空间。往往你最爱的人,在水的那一边。仿佛近在咫尺,却又不可触及。只能远远的望着她。能看见她的一瞥一笑却与她身处两个世界。水,清澈纯净的地方,如梦如幻的地方。海也是水,是飘渺无限、浩瀚千里的不可逾越的距离......你最爱的人在水的那一边..........
2010-03-08 21:58:00
1065
转载 名著名人语录
1.神要是公然去跟人作对,那是任何人都难以对付的。 (《荷马史诗》) 2.生存还是毁灭,这是一个值得思考的问题。 (《哈姆霄特》) 3.善良人在追求中纵然迷惘,却终将意识到有一条正途。(《浮士德》) 4.认识自己的无知是认识世界的最可靠的方法。 (《随笔集》) 5.你以为我贫穷、相貌平平就没有感情吗?我向你发誓,如果上帝赋予我财富和美貌,我会让你无法离开我,就像我现在无
2010-03-08 21:54:00
710
转载 60句网络经典
1、吃自助最高境界:扶墙进,扶墙出。 2、结婚必备条件:有车有房,父母双亡。 3、没有钱,没有权,再不对你好点,你能跟我? 4、拿份报纸上厕所,俺是读书人。 5、上Google上百度一下。 6、女人一定要对自己好一点。一旦累死了,就会有别的女人花你的钱,住你的房,睡你的老公,打你的娃! 7、你的丑和你的脸没有关系…… 8、长个包子样,就别怨狗跟着。 9、争吵的时候,
2010-03-08 21:53:00
655
原创 C#计算表达式方法【整理】
C#中,不用自己费劲儿写计算表达式的东西了,如下,formula为表达式,例如(3*(2+4))using Microsoft.JScript.Vsa;using Microsoft.JScript; Eval.JScriptEvaluate(formula, VsaEngine.CreateEngine())
2010-03-08 21:52:00
1255
原创 当搜索时,使DataGridView中的当前行处于画面中段
高手写的:IDC_DGV_HOSTONLINETRACER.FirstDisplayedScrollingRowIndex =Math.Max(0, row.Index - this.IDC_PNL_GDV_HOSTONLINE_TRACE_INORMATION.VScrollBar.BMLargeChange / 2); this.IDC_DGV_HOSTONLINETRAC
2010-03-08 21:48:00
667
转载 微软EPG老大让秘书发给所有员工的邮件
思考1 : 大局上面仍然有另一个大局 思考2 : 公平永远有不同角度的公平 思考3 : 这个游戏只有站在切换器旁边的人可以决定结果 有一群小朋友在外面玩 而那个地方有两条铁轨, 一条还在使用, 一条已经停用 只有一个小朋友选择在停用的铁轨上玩 其它的小朋友全都在仍在使用的铁轨上玩 很不巧,火车来了(而且理所当然的往上面有很多小孩的,仍在使
2010-03-08 21:48:00
919
原创 两个UserControl共用一个BMUserControl的功能建
条件:UserControl Panel1,panel2;BMUserControl panel3; Panel1、panel2下面没有buttonPanel3 下面有buttonPanel1,panel2是panel3中的数据成员他们共用panel3的button问题:如何实现panel3接收功能键? 答:Panel1:Public void Pr
2010-03-08 21:45:00
616
原创 初探C#中Graphic的描画函数
protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); /*paint the blue title*/ using (SolidBrush b = new SolidBrush(Color.FromArgb(45,65,
2010-03-08 21:45:00
900
原创 Window 中窗口的层次关系以及窗口的属性【整理】
Window 窗口层次关系 相信在Window 下面编程的很多兄弟们都不是很清楚Window 中窗口的层次关系是怎么样的,这个东西很久已经研究过一下,后来又忘记了,今天又一次遇到了这个问题,所以便整理一下。下面就说说Window 中桌面(Deskkop)以及顶层窗口,以及子窗口之间的关系。 在Window 的图形界面下,最基本显示信息的元素就是窗口,每一个Window 窗口都管理着自己与其
2010-03-08 21:41:00
734
原创 了解C#中的预定义事件处理机制【整理】
在写代码前我们先来熟悉.net框架中和事件有关的类和委托,了解C#中预定义事件的处理。 EventArgs是包含事件数据的类的基类,用于传递事件的细节。 EventHandler是一个委托声明如下 public delegate void EventHandler( object sender , EventArgs e ) 注意这里的参数,前者是
2010-03-08 21:38:00
622
转载 C#中的事件处理程序
C#中的事件处理程序是一个带有特定输入参数的代理,如下所示: public delegate void MyEventHandler(object sender, MyEventArgs e); 上面定义中的第一个参数(sender)指定了发生事件的对象,第二个参数(e)存储着在事件处理程序中要用到的数据。MyEventArgs类是继承EventArgs类得来的,EventArgs类是MouseE
2010-03-08 21:36:00
691
转载 C#事件
简介 任何编写过图形用户界面(GUI)软件的开发人员都熟悉事件处理编程,当用户与GUI控制进行交互时(例如点击表格上的按钮),作为上述事件的反应,就会执行一个或多个方法。没有用户的参与,事件也可能执行。事件处理程序是对象的方法,是根据应用程序中发生的事件而执行的。为了理解.Net框架下的事件处理模式,我们需要理解代理的概念。 C#中的代理 C#中的代理允许我们将一个类中的方法传递给其他类的对象。我
2010-03-08 21:27:00
470
原创 翻页算法
m_PageCount = m_Items.Length / m_Buttons.Length;//最大页码数 if((m_Items.Length % m_Buttons.Length) != 0) { ++m_PageCount; } void Pag
2010-03-08 21:27:00
1196
原创 .net2.0提供的TextBox候选文字提示功能
首先要设置TextBox的AutoCompleteMode为SuggestAutoCompleteSource为CustomSource。然后就写代码了:) private void Form1_Load(object sender, EventArgs e) { AutoCompleteStringCollection collection
2010-03-08 21:19:00
518
转载 .Net组件设计中Attrbute的使用
这篇文章是写给.net 高级用户使用的:)主要针对于编写组件与控件的朋友而言的。 我们编写的组件或控件,最常规的作法是包括属性,方法以及事件等东东。但是如果想把组件或控件做得更加专业,我们就必须为属性或方法得供必要的说明或者是分类。而这一切都包含在组件的Attribute中。 对于它,相信写过C#程序的都不会忘记,它就是包含在[]中的东东,比如 [DefaultValue("ASP
2010-03-08 21:19:00
691
原创 C#中ToString格式大全【整理】
C货币2.5.ToString("C") ¥2.50 D十进制数25.ToString("D5") 00025E科学型25000.ToString("E")2.500000E+005F固定点25.ToString("F2")25.00G常规2.5.ToString("G")2.5N 数字2500000.
2010-03-08 21:17:00
480
原创 String类的split方法
虽然使用正则表达式能很好的进行字符串的解析、提取、替换,但是对于一些简单的应用,使用 String 类提供的一些方法就可以很好的完成,最突出的就是 split 方法。 split 方法能够很方便的将字符串按照一定的规则拆分开。 比如对于下面的字符串: Tom,Jane,Tony,Elva,Gigi 只要调用如下的代码就可以将各个名字提取出来: String value = "T
2010-03-08 21:17:00
1281
转载 DataGridView相关知识[整理]
DataGridColumnStyle.MappingName="列名"DataGridColumnStyle.MappingName="列名" 绑一下就不受排序影响了啊目录:① 取得或者修改当前单元格的内容② 设定单元格只读③ 不显示最下面的新行④ 判断新增行⑤ 行的用户删除操作的自定义⑥ 行、列的隐藏和删除⑦ 禁止列或者行的Resize⑧ 列宽和行高以及
2010-03-08 21:14:00
484
原创 c#中out与ref的用法与区别
Out表示这个变量要回传值,最简单的应用是除法,比如你需要一个除法方法,同时得到余数和商,但是普通的方法只能得到一个返回值,这个时候就可以使用Out参数,把另一个值返回。 比如,你定义了一个方法int a(int b,out int c),它除了能得到返回值外,还可以在方法里对C进行赋值,这样你就可以使用C的值了。c#中out与ref的用法与区别1、out必须在函数体内初始化,在外面初始化
2010-03-08 21:14:00
823
转载 10个寓言故事
有很多人去听一位哲学家讲授人生成功的秘诀,结果那位哲学家给每位听众一本小册子,上面有10个寓言故事,人们看了以后,都觉得受益匪浅。 ▲ 相信自己是一只雄鹰 ▲ 一个人在高山之巅的鹰巢里,抓到了一只幼鹰,他把幼鹰带回家,养在鸡笼里。这只幼鹰和鸡一起啄食、嬉闹和休息。它以为自己是一只鸡。 这只鹰渐渐长大,羽翼丰满了,主人想把它训练成猎鹰,可是由于终日和鸡混在一起,它已经变得和鸡完全一样,根本没有飞
2010-03-08 21:12:00
774
转载 二叉树创建及遍历算法(递归及非递归)[整理]
//二叉树处理头文件//包括二叉树的结构定义,二叉树的创建,遍历算法(递归及非递归),/* 作者:成晓旭 时间:2001年10月7日(18:49:38-20:00:00) 内容:完成二叉树创建,二叉树的前,中,后序遍历(递归) 时间:2001年10月7日(21:09:38-22:09:00) 内容:完成二叉树的前,中序遍历(非递归) 时间:2001年10月8日(10:09:38-11:29:00)
2010-03-08 21:08:00
466
原创 对话框再次弹出,textbox内容被选中
要求实现功能如下:初始进入画面时,对话框中的textbox设定数值,关闭此画面;再次打开对话框,textbox聚焦,textbox中显示上回设定值,并被选中;解决方案:设置textbox的tabIndex属性为1,并在Form_Closed事件中添写如下代码:This.IDC_ED_Textbox.focus();This.IDC_ED_Textbox.SelectAll();
2010-03-08 21:08:00
822
原创 五个小故事
1、 情况不同 一只小猪、一只绵羊和一头乳牛,被关在同一个畜栏里。有一次,牧人捉住小猪,牠大声号叫,猛烈地抗拒。绵羊和乳牛讨厌牠的号叫,便说:「他常常捉我们,我们并不大呼小叫。小猪听了回答道:「捉你们和捉我完全是两回事,他捉你们,只是要你们的毛和乳汁,但是捉住我,却是要我的命呢! 立场不同、所处环境不同的人,很难了解对方的感受;因此对别人的失意、挫折、伤痛,不宜幸灾乐祸,而应要有关怀、了解的心
2010-03-08 21:07:00
539
转载 写给对前途迷茫的朋友:五句话定会改变你的人生
第一句话是:优秀是一种习惯。 这句话是古希腊哲学家亚里士多德说的。如果说优秀是一种习惯,那么懒惰也是一种习惯。人出生的时候,除了脾气会因为天性而有所不同,其他的东西基本都是后天形成的,是家庭影响和教育的结果。所以,我们的一言一行都是日积月累养成的习惯。我们有的人形成了很好的习惯,有的人形成了很坏的习惯。所以我们从现在起就要把优秀变成一种习惯,使我们的优秀行为习以为常,变成我们的第二天性。让我们习惯
2010-03-08 21:04:00
3922
原创 二叉树
在这个二叉树中, 前序遍历的结果:2, 7, 2, 6, 5, 11, 5, 9, 4 后序遍历的结果:2, 5, 11, 6, 7, 4, 9, 5, 2 中序遍历的结果:2, 7, 5, 6, 11, 2, 5, 4, 9 以上的递归算法使用与树的高度成比例的栈空间。如果我们在每个结点中存储指向父结点的指针,那样可以使用迭代算法,只使
2010-03-08 20:57:00
629
xml轻松学习手册,最新版本,XML快速入门
2009-06-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人