- 博客(64)
- 资源 (2)
- 收藏
- 关注
转载 #include <unistd.h> 的作用
由字面意思,unistd.h是unix std的意思,是POSIX标准定义的unix类系统定义符号常量的头文件,包含了许多UNIX系统服务的函数原型,例如read函数、write函数和getpid函数。 参考自 http://hi.baidu.com/w_dalu/item/e8d29860374ae02369105b11unistd.h在unix中类似于window中的windows.h!
2017-04-05 11:16:51
10875
转载 linux中fork()函数详解(原创!!实例讲解)
一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进程的值不
2017-04-05 11:11:27
472
转载 Total Commander基础使用教程(吐血整理)
配置好了Total Commander后,那么开始一段神奇的高效之旅吧!下面奉上小编吐血整理的Total Commander基础使用教程!(只是整理,不是原创哦)一. 常用操作常用的操作如查看、复制、移动、删除退出已经在Total Commander下方列出,选择好文件后单击相应的按钮或是按下相应的快捷键(F3~F7)就可以完成操作。也可以像Windows中那样用鼠
2016-06-23 09:56:08
43859
2
转载 JAVA多线程实现的三种方式
JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。1、继承Thread类实现多线程继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的
2016-06-02 10:03:05
337
转载 RESTful API 设计最佳实践
from:http://blog.jobbole.com/41233/目前互联网上充斥着大量的关于RESTful API(为方便,下文中“RESTful API ”简写为“API”)如何设计的文章,然而却没有一个”万能“的设计标准:如何鉴权?API 格式如何?你的API是否应该加入版本信息?当你开始写一个app的时候,特别是后端模型部分已经写完的时候,你不得不殚精竭虑的设计和实现自己app
2016-05-05 10:42:39
305
转载 组播(多播)的C程序实战
from:http://blog.csdn.net/stpeace/article/details/44657671每个人都有不同的认知规律和习惯, 有的人喜欢搞一套严密的大理论, 论述起来滔滔不绝, 不管自己懂不懂, 反正读者/听者是没搞懂。 有的人喜欢从实践出发, 没看到代码, 不运行一下, 不看到结果, 就不太舒服。 我感觉, 我偏向后者, 必须有一个结果作用于我, 我才
2016-04-14 14:59:23
4477
1
转载 Core Java (七) Java中的static修饰符
From:http://blog.csdn.net/xujinsmile/article/details/8523251static为静态的意思,常用来修饰内部类,方法,变量。静态域static修饰的变量在每个类中只有一个副本,即这个类的所有对象共享一个变量,它属于类,不属于任何独立的对象。[java] view
2016-03-06 20:44:17
267
转载 Object类的重要方法
from:http://blog.csdn.net/xujinsmile/article/details/8531135目录(?)[+]Object是所有类的最终祖先。,可以使用Object类引用任何类型的对象。在Java中,只有基本类型不是对象。Equals方法Object类中的equals方法用于检测一个对象是否等于另外一个对象。
2016-03-06 16:25:21
296
转载 JAVA的Random类(转)
Random类 (java.util) Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。相同种子数的Random对象,相同次数生成的随机数字是完全相同的。也就是说,两个种子数相同的Random对象,第一次生成的随机数字完全相同,第二次生成的随机
2016-02-01 19:08:04
276
原创 VC MFC 屏蔽ESC和ENTER键关闭对话框
方法一:窗体头文件中加入:1 protected:2 virtual BOOL PreTranslateMessage(MSG* pMsg); // PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的3 public:4 virtual void OnOK(); 在CPP中加入:
2015-12-30 10:01:49
1307
原创 ShellExecuteEx(&ShExecInfo) 和 WinExec
//SHELLEXECUTEINFO ShExecInfo = {0};//ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);//ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;////wchar_t wszFile[MAX_PATH] = L"C:\\test\\test.exe";//
2015-12-28 01:02:09
1158
转载 VisualSVN Server的配置和使用方法
1.为什么要用VisualSVN Server,而不用Subversion?回答:因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Server为windws service,还要通过修改配置文件来控制用户权限,另外如果要想以Web方式【http协议】访问,一般还要安装配置Apache,如果是新手,岂不是很头痛?而VisualS
2015-12-15 16:31:16
440
转载 Window 通过cmd查看端口占用、相应进程、杀死进程等的命令
如何查看程序占用的端口 一、 查看所有进程占用的端口 在开始-运行-cmd,输入:netstat –ano可以查看所有进程二、查看占用指定端口的程序 当你在用tomcat发布程序时,经常会遇到端口被占用的情况,我们想知道是哪个程序或进程占用了端口,可以用该命令 netstat –ano|findstr “指定端口号” 二、查看占用指定端口的程
2015-12-13 18:53:03
430
转载 Eclipse快捷键 10个最有用的快捷键
转自:http://www.cnblogs.com/iamfy/archive/2012/07/11/2586869.htmlEclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合。通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升。 1. ctrl+shift+r:打开资
2015-11-06 10:08:16
293
转载 Rational Rose2007(v7.0)下载地址、安装及激活详解教程
转自:http://www.cnblogs.com/leaven/p/3718361.htmlhttp://blog.csdn.net/skl_tz/article/details/8925152 最近需要画uml图,之前用的是Rose 2003版的,由于好久没进去了,结果发现原来的激活又失效了,omg又要激活一次?2003的激活真的很烦。。于是就去百度找新版的
2015-11-02 00:02:24
3006
原创 SSL工作原理
转自:http://blog.csdn.net/zhuyingqingfen/article/details/7610098[-]概述1 产生背景2 技术优点协议安全机制1 数据传输的机密性2 身份验证机制3 消息完整性验证4 利用非对称密钥算法保证密钥本身的安全5 利用PKI保证公钥的真实性协议工作过程1 S
2015-10-27 10:12:39
359
转载 数字证书原理
转自:http://www.cnblogs.com/JeffreySun/archive/2010/06/24/1627247.html#!comments文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用。接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makece
2015-10-27 10:05:24
321
转载 每个初学者都应该搞懂的问题
对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。内容均来自于CSDN的经典老贴。 问题一:我声明了什么! String s = "Hello world!"; 许多人都做过这样的事情,但是,我们到底声明了什么?回答通常是:一个String,内容是“Hell
2015-10-23 09:19:58
286
转载 【MFC】创建显示对话框的DLL(共享DLL问题分析解决)
url:http://blog.sina.com.cn/s/blog_4e3197f20100a9ou.html现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题。这里我们从Win32 DLL和MFC DLL两个方面来分析并解决这个问题。一.Win32 DLL 在Win32 DLL中使用对话框很简单,你
2015-08-18 11:34:35
1215
转载 SQLITE3 使用总结
前序:Sqlite3 的确很好用。小巧、速度快。但是因为非微软的产品,帮助文档总觉得不够。这些天再次研究它,又有一些收获,这里把我对 sqlite3 的研究列出来,以备忘记。这里要注明,我是一个跨平台专注者,并不喜欢只用 windows 平台。我以前的工作就是为 unix 平台写代码。下面我所写的东西,虽然没有验证,但是我已尽量不使用任何 windows 的东西,只使用标准 C 或标准C+
2015-06-09 16:25:15
266
转载 COM学习笔记8_IDispatch (调度接口) 自动化
一般的通讯方式:客户 COM(vbtl)接口 COM组件自动化通讯方式:客户(自动化控制器) IDispatch::Invoke 调度接口(或vbtl接口) 实现IDispatch接口的COM组件 (自动化服务器)自动化服务器 : COM组件自动化控制器 :COM客户相关知识:IDispatch, 调度接口,双重接口,类型库,IDL, VARIANT,
2015-06-09 16:00:38
647
转载 COM学习笔记4_创建COM组件的实现
为了实现COM的动态链接,必须把组件的实现和客户代码分隔开。一种处理是把组件放入DLL中。这样为了支持客户创建组建,组件需要导出一个类似CreateInstance的函数。[cpp] view plaincopyextern "C" IUnknown* CreateInstance() { IUnknown* pI
2015-06-09 15:27:35
1225
转载 COM学习笔记3_IUnknown的三个接口函数
对于COM组件,正确处理IUnknown的三个接口函数非常重要。对于QueryInterface,一个参考处理如下:[cpp] view plaincopyHRESULT __stdcall CA::QueryInterface(const IID& iid, void** ppv) { if (iid ==
2015-06-09 15:24:38
605
转载 COM学习笔记2_COM接口vbtl内存布局
这里要注意的是,虽然图中显示IY的虚函数表中QueryInterface,AddRef和Release指向的函数地址与IX的虚函数表中对应函数相同,都直接指向CA::QueryInterface等。但其实并不完全是这样。如果看汇编实现,可以看到IY中的AddRef指向的地址是这样:[thunk]:CA::AddRef`adjustor{4}':00401740 sub
2015-06-09 15:21:29
541
转载 COM学习笔记1_COM初步探索
COM组件的两个重要需求:1。 动态链接2。 隐藏实现细节COM初步探索一个典型C++客户和组件的例子[cpp] view plaincopy// 组件模块 interface IX { virtual void __stdcall Fx1() = 0 ; virtual void __
2015-06-09 15:11:50
913
转载 COM一些小知识
参考来源:http://www.host01.com/article/software/VisualC/2006091718392288.htm1 COM组件是一个C++类,他从一系列接口派生而来,并实现了所有的接口。这些接口都是纯虚类。2 COM组件有三个最基本的接口类,分别是IUnknown、IClassFactory、IDispatch。 COM规范规定任何组件、任
2015-06-09 15:02:09
338
原创 枚举注册表子键
int CLogOp::GetWINLogFilePath(){HKEY hKey = NULL;wchar_t* pBasePath = L"SYSTEM\\CurrentControlSet\\services\\eventlog";if ( ERROR_SUCCESS != RegOpenKeyEx(HKEY_LOCAL_MACHINE, pBasePath, 0,
2015-04-29 14:24:12
763
原创 各数据类型占用的内存字节数、范围
VS下//类型 对齐方式(变量存放的起始地址相对于结构的起始地址的偏移量) char // 偏移量必须为sizeof(char)即1的倍数 范围:-128(-2^7) ~ 127(2^7 - 1)int // 偏移量必须为sizeof(int)即4的倍数 范围:-2147483648(-2^31) ~ 214748364
2015-04-14 14:49:53
1213
转载 UML类图几种关系的总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特
2015-04-14 09:26:23
263
转载 重构代码的一个例子
概述:重构无止境,重构你的代码,精雕细琢,千锤百炼。 我相信不少人都有这种感觉:某天闲暇下来回顾整理以前所写的代码,发现很多地方写得都不够好,代码中竟然存在着如此之多的“坏味道”。这对于追求艺术的程序员来说是无法接受的。所以要重构代码。通过下面的例子,看看什么是代码重构:void PrintHello(){ CTextHandler s
2015-04-13 10:25:07
1324
原创 堆 和 栈的 区别(经典)
此文章虽然是面向C/C++程序员写得,但是对咱们Java程序员还是很有帮助的。 堆和栈的区别 一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序
2015-04-03 09:32:25
239
原创 【数据结构】联合union范例
typedef enum{INTERFACE_TYPE_NULL = 0,INTERFACE_TYPE_FIREWARE = 1,INTERFACE_TYPE_IR = 2,INTERFACE_TYPE_PCMCIA = 3,INTERFACE_TYPE_PS2 = 4,INTERFACE_TYPE_USB = 5,INTERFACE_TYPE_SERIAL = 6
2015-03-03 11:25:39
881
原创 【数据结构】枚举enum范例
typedef enum{PERMISSION_RESERVE = 0, //保留PERMISSION_ALLOWED = 1, //允许PERMISSION_DENY = 2, //禁止PERMISSION_READ_ONLY = 3 //只读}PERMISSION_TYPE;typedef enum{INTERFACE_TYPE_NULL = 0
2015-03-03 10:51:08
1076
转载 IoEnumerateDeviceObjectList 枚举驱动的所有设备 文件过滤驱动 windows内核开发
转自:http://blog.csdn.net/baund/article/details/7059920IoEnumerateDeviceObjectList函数,用来枚举某驱动下的所有设备,主要是遍历deviceobject->nextobject字段,该函数第一次可以将DeviceObjectListSize传递0,来获取实际的设备个数,第二次调用,再获取整个设备列表,实
2015-02-09 11:51:47
1083
原创 GetModuleFileName获取当前进程已加载模块的文件的完整路径
DWORD CMonPrtAndSScard::_LoadUploadModule(){DWORD dwRet = 0;wchar_t wszAppPath[MAX_PATH] = {NULL};GetModuleFileName(NULL, wszAppPath, MAX_PATH);wstring wsTemp(wszAppPath);wstring wsUploadp
2015-01-28 16:15:42
1258
原创 CreateEvent举例
#include #include "Locker.h"HANDLE GetLock(const TCHAR * lockName){HANDLE h = OpenEvent( EVENT_ALL_ACCESS, false, lockName );if( h == NULL ){SECURITY_ATTRIBUTES sa;SECURITY_DES
2015-01-22 17:30:36
516
原创 RegCreateKey、RegSetValueEx、RegOpenKey、RegQueryValueEx操作注册表
//========================================================//写注册表HKEY hKey; DWORD state = 0;if ( ERROR_SUCCESS == RegCreateKey(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Centerm\\DomainOrGroupInfos", &hKe
2015-01-15 11:39:39
2289
1
原创 CRegKey 操作注册表
//================================================//写注册表CRegKey key;if( ERROR_SUCCESS == key.Create(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Centerm\\DomainOrGroupInfos") ){if ( ERROR_SUCCESS !=
2015-01-15 10:56:09
619
原创 【示例】ShellExecuteEx起一个进程和SHGetValue读取注册表值
SHELLEXECUTEINFO info = {0};Sleep(1000);if ( NOERROR == SHGetValue(HKEY_LOCAL_MACHINE, L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{CB2A97B5-EAC2-40D1-82B2-80E1AB9C7997}_is1",
2015-01-07 09:35:21
1232
Effective C++
2014-12-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人