解决出现的LNK2005“符号已定义”错误(转)
解决出现的LNK2005“符号已定义”错误(转)[@more@]许多Visual C++的使用者都碰到过LNK2005:symbol already defined和LNK1169:one or more multiply defined symbols found这样的链接错误,而且通常是在使用第三方库时遇到的。对于这个问题,有的朋友可能不知其然,而有的朋友可能知其然却不知其所以然,那么本文就试图为大家彻底解开关于它的种种疑惑。大家都知道,从C/C++源程序到可执行文件要经历两个阶段:(1)编译器将源文件编译成汇编代码,然后由汇编器(assembler)翻译成机器指令 (再加上其它相关信息)后输出到一个个目标文件(object
VC++中进程与多进程管理的方法(转)
VC++中进程与多进程管理的方法(转)[@more@]进程是当前操作系统下一个被加载到内存的、正在运行的应用程序的实例。每一个进程都是由内核对象和地址空间所组成的,内核对象可以让系统在其内存放有关进程的统计信息并使系统能够以此来管理进程,而地址空间则包括了所有程序模块的代码和数据以及线程堆栈、堆分配空间等动态分配的空间。进程仅仅是一个存在,是不能独自完成任何操作的,必须拥有至少一个在其环境下运行的线程,并由其负责执行在进程地址空间内的代码。在进程启动的同时即同时启动了一个线程,该线程被称作主线程或是执行线程,
C++箴言:理解inline化的介入和排除(转)
C++箴言:理解inline化的介入和排除(转)[@more@]inline 函数——多么棒的主意啊!它们看起来像函数,它们产生的效果也像函数,它们在各方面都比宏好得太多太多,而你却可以在调用它们时不招致函数调用的成本。你还有什么更多的要求呢? 实际上你得到的可能比你想的更多,因为避免函数调用的成本只是故事的一部分。在典型情况下,编译器的优化是为了一段连续的没有函数调用的代码设计的,所以当你 inline 化一个函数,你可能就使得编译器能够对函数体实行上下文相关的特殊优化。大多数编译器都不会对 "outlined" 函数调用实行这样的优化
应用实例:VC++实现广告窗口自动关闭(转)
应用实例:VC++实现广告窗口自动关闭(转)[@more@]一、 引言 我们在上网浏览时,有时访问到某些网站的网页时会自动弹出一些广告窗口,甚至有不少个人主页为了利用网络广告来赚钱一下同时弹出几个甚至十几个广告窗口。这些窗口一个一个的关掉十分麻烦,而且如果不关的话又会占用大量的系统资源,所以不少人对此深恶痛绝,作为程序员可以利用自身技术优势根据自己的实际需要编制一些很适合自己的小工具。因此本文就对如何通过软件编程来实现对广告窗口的自动关闭进行介绍,以期能起到抛砖引玉之效。 二、 程序设计思路与实现 首先要
即时通讯是企业信息安全的要害之处(转)
即时通讯是企业信息安全的要害之处(转)[@more@]说到安全性问题,企业的要害在于即时通讯(instant messaging)软件。总的来说,与即时通讯有关的威胁其危险性越来越高,因为这类软件在企业和一般家庭中无处不在。 根据互联网安全企业Symantec的最新报告,估计2005年里家庭及企业即时通讯软件用户大约有3亿人,其中美国在线公司的AIM、微软的MSN Messenger和雅虎的Yahoo! Messenger每天发送的信息都超过10亿条。另外,报告还称即时通讯的信息流量到今年年底估计将超过电子邮件的流量。据报告中的分析,即时通讯的最大威胁是蠕虫病毒。在20
安全研究十大臭名昭著的瞬间(转)
安全研究十大臭名昭著的瞬间(转)[@more@]【导读】安全研究的历史上,十大令人尴尬的事件。 1、SQL Slammer 在微软发布SQL补丁软件一周后,研究人员大卫在Black Hat会议上展示了该缺陷。利用该缺陷的Slammer蠕虫在2003年曾经使互联网出现大塞车。2、Windows即插即用 互联网安全系统公司的研究人员在2005年4月份发现了该Windows缺陷,它使黑客能够控制有缺陷的系统,并远程地执行代码。到8月份,出现了利用该缺陷的Zotob蠕虫。3、思科IOS堆栈溢出 前ISS研究人员迈克尔在2005年7月份表明,利用此缺陷黑客能够控制一家公司的网络。思科后来发布
求助:关于linux下共享内存的问题(转)
求助:关于linux下共享内存的问题(转)[@more@]我已经在/etc/sysctl.conf中加入了kernel.shmmax = 536870912,也使用了sysctl -p执行,执行后显示的也是没错的,但是当我用ipcs -lm查看共享内存的时候却是这样显示的:max number of segments = 4096max seg size (kbytes) = 524288max total shared memory (kbytes) = 0 //问题就是这行,请指教min seg size (bytes) = 1我在别的机器上看到的是第三行应该是显示我的共享内存数,但是无论我怎么改,总是显示为0,请问是什么原因,如何改过来.下面是我用sysctl -p 看到的代码:[root@localhost ~]# sysc
grub安装(转)
grub安装(转)[@more@]在grub下, 磁盘的命名是bsd格式, hd0是第一个盘,hd1第二个盘, hd1可能是hdb也可能是hdc也可能是sdahd0,0是第一分区, hd0,0 是 /dev/hda1 hd0,1 是 /dev/hda2 .... hd0,5 是 /dev/hda6....grub的有一个自己的命令界面,在启动时,安c可以进入, 或者在linux下直接执行grub出现命令界面.grub下的命令支持tab补全. 也可以用tab对文件名进行补全.在grub命令界面, 常用的几个命令有:root (hd0,0) ;指定/dev/hda1做为根kernel /boot/vmlinuz root=.... ;指定要调入的内核 以及参数 initrd /boot/initrd.img ;指定ramfs启动映像
acpi 遇到 linux(转)
acpi 遇到 linux(转)[@more@]在启动项(lilo.conf,menu.lst)后面加上 acpi=on在debian 下,apt-get install acpid就行了,可以用power开关来关机了。看acpid有哪些文件,感兴趣的可以看看这些文件。dpkg -L acpid/usr/sbin/acpid/usr/bin/acpi_listen/usr/share/man/man8/acpid.8.gz/usr/share/man/man8/acpi_listen.8.gz/usr/share/doc/acpid/examples/usr/share/doc/acpid/examples/default.gz/usr/share/doc/acpid/examples/ac.gz/usr/share/doc/acpid/examples/ac.sh.gz/usr/share/doc/acpid/examples/default.sh.gz/usr/share/doc/acpi
mysql密码忘记的修改(转)
mysql密码忘记的修改(转)[@more@]如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。 启动 MySQL :/usr/bin/safe_mysqld --skip-grant-tables & 就可以不需要密码就进入 MySQL 了。 然后就是 >use mysql >update user set password=password("new_pass") where user="root"; >flush privileges; 重新杀 MySQL ,用正常方法启动 MySQL 。 Redhat的safe_mysqld在/usr/bin下, 而使用tarball缺省安装在/usr/local/bin下。
关于"在Linux下访问Windows分区"的补充(转)
关于"在Linux下访问Windows分区"的补充(转)[@more@] 这篇文章对于初学者是相当有用的,但是还不很完善。 第一,windows系统分区有不同格式的问题,如9x的fat和fat32,nt的ntfs,以及2000和最新的xp的ntfs5,至于fat(fat32)格式,该文已经讲得非常清楚了,而ntfs的访问需要编译内核。因为现在装win2000和xp的读者也很多了,必须说一下。 第二,现在新版的linux如redhat已经不再在其package中包括linuxconf了,即使光盘上还带得有此软件包,默认状态下也是不会安装的,因此使用linuxconf并不是最好的方法,也绝非最简单的方法。
在双引导Linux系统上实现OS自动切换(转)
在双引导Linux系统上实现OS自动切换(转)[@more@]利用本文中介绍的这些技巧,我们可以在一个双引导的机器上自动从一个操作系统切换到另外一个操作系统,无需任何人工干预。您可以使用本文提供的脚本在自己的机器上复制这种同时运行 Linux? 和 Windows? 的设置。既然我们可以非常简单地直接手工实现这种操作系统的切换,为什么还希望自动化此操作呢?简单的答案是自动化过程可以让使用多个操作系统变得容易得多。例如您要在多个操作系统平台上测试软件,那么这种功能就会特别有用。本文在介绍这些技巧时假设您已经安装好了操作系统,并使用
实力的终极挑战:RHCE认证难点剖析(转)
实力的终极挑战:RHCE认证难点剖析(转)[@more@]??其实RHCE并不是想象之中那么困难,尤其是Troubleshooting部份,因为在过往的考试试题中得知,来来去去都是在系统背后改动了某些Config File,才导致你无法正常开机,根据资料搜集,这里大约有六至八个不同的"Hang"机情况出现,如果你能够一一掌握,或者略知一二,要通过这部份考试确实易如反掌。 ??继续讲RHCE第二部份的考试,吃完午饭后,已经是下午二时左右,主考官让所有考生回来之后便会正式开始第二部份的考试,这就是多项选择题(Multiple Choice)。考试完全在考生自己所坐的计算机
自己做个迷你型linux(转)
自己做个迷你型linux(转)[@more@]作者:cexoyqhda1----新装的RH9 hdc1----64M的硬盘,生成的小型linux就装在这个盘上,还未分区格式化。 环境:ms的虚拟机5.1版。 先重新编译内核,把不需要的全部去掉,这样模块也只有几M了。编译后生成了 内核:vmlinuz-2.4.20-8custom initrd:initrd-2.4.20-8custom.img(这个没用到,在GRUB中使用它反而不能启动了,提示要加init内核参数。) 可加载模块:/lib/modules/2.4.20-8custom fdisk /dev/hdc 分区,并激活,保存后退出。 mkext2fs /dev/hdc1 mkdir /mnt/hd2 mount /dev/hdc1 /mnt/hd2 mkdir /mnt/
Linux网络编程--原始套接字(转)
Linux网络编程--原始套接字(转)[@more@]原始套接字 我们在前面已经学习过了网络程序的两种套接字(SOCK_STREAM,SOCK_DRAGM).在这一章 里面我们一起来学习另外一种套接字--原始套接字(SOCK_RAW). 应用原始套接字,我们可以编写出由TCP和UDP套接字不能够实现的功能. 注意原始套接字只能够由有root权限的人创建. 原始套接字的创建 int sockfd(AF_INET,SOCK_RAW,protocol) 可以创建一个原始套接字.根据协议的类型不同我们可以创建不同类型的原始套接字 比如:IPPROTO_ICMP,IPPROTO_TCP,IPPROTO_UDP等等.详细的情况查看 下面我们以一个实例来说明原
Linux的shell基础教学(转)
Linux的shell基础教学(转)[@more@] Linux的shell好比DOS的COMMAND.COM,在用户和系统之间架起一座桥梁,让用户方便地操作系统。由于Linux是一个完全开放的平台,有许多人都为它编写了Shell程序。其中的BASH(Baurne Again SHell)容纳了其他Shell程序的许多特征,功能十分全面,所以我们以它为例来讲解Shell的一些用法。 在开始讲解Linux的一些用法之前,我们将先介绍一些命令,以便读者在以后的文中做参考。 1.ls命令 格式:ls [选项] [文件列表] 选项:无,显示当前目录的文件,类似DOS下的dir/w命令; -l,显示文
AMD建立新研究中心:看准Linux(转)
AMD建立新研究中心:看准Linux(转)[@more@]来源:驱动之家 INQ报道--AMD刚刚宣布在Dresden建立新操作系统研究中心(OSRC,Operating System Research Center )。 AMD表示,新OSRC将成为AMD处理器针对不同操作系统平台开发/优化的桥头堡,保证AMD处理器能够在任何平台发挥最高效用。 AMD新OSRC的工程师们将针对Linux平台系统进行开发研究,着力于虚拟化技术完善和改进,其他涉及内容还将包括多核心芯片工具、系统/电源管理系统等。 在谈到新OSRC选址问题时,AMD认为Dresden是个好地方--旁边就是工厂,开发/生产不过咫尺之遥,
Linux发行商支持统一标准 集体挑战Windows(转)
Linux发行商支持统一标准 集体挑战Windows(转)[@more@]来源:天极网 据外电报道,上周五,一些主要Linux发行商宣布,为了在桌面系统市场挑战Windows,它们已经在桌面Linux标准化问题上达成一致。 自由标准集团创建的该标准将使开发人员能够更方便地开发可以在不同版本的Linux上运行的软件。 Linux在桌面系统市场上不能成为主流的部分原因是,各种版本的Linux互不兼容,用户很难知道一种软件能否在一台具体的Linux桌面系统上运行。自由标准集团的执行主任吉姆说,而这正是Windows的优势所在,Linux在这方面需要向Windows学习。标准化
Firefox拿什么和IE赌明天(转)
Firefox拿什么和IE赌明天(转)[@more@]作者:王利兴 据外电报道,美国计算机紧急响应小组(CERT)日前表示,早期版本的Firefox浏览器,以及基于Firefox内核的Mozilla软件存在大量安全漏洞,用户要尽早升级。而根据CNET的报道,安全机构Secunia称,在包括Firefox 1.5在内的老版本浏览器中发现了21处漏洞,其中很多为“高危”漏洞,允许黑客完全控制整个系统。 在此之前,Firefox凭借“优良”的安全性,曾一度获得用户的认可,并在过去的一年里用户数量有了很大提高。根据有关研究机构的数据,Firefox的市场占有率已经超过10%,这被认为是
因受红帽收购JBoss刺激 传IBM计划收购SAP(转)
因受红帽收购JBoss刺激 传IBM计划收购SAP(转)[@more@]来源:赛迪网 4月24日消息,据外电报道,甲骨文CEO拉里-艾里森上周曾表示,红帽收购JBoss之后,甲骨文和IBM都应该重新考虑各自的Linux策略,以及和这两家公司的合作关系。此后便有传闻称,IBM可能收购SAP。 据澳大利亚媒体报道,艾里森上周在接受《金融时报》采访时称,由于红帽已经收购JBoss,因此甲骨文正在考虑收购Novell,从而推出自己的Linux操作系统。最终,艾里森希望这款操作系统能够成为Windows的替代品。 艾里森称,甲骨文必须重新Linux策略策略,IBM也是如此。随后便