关闭

初识pe结构--手写可执行程序

【详细过程】                最近,学习PE结构的知识。之后深有感触,随即便萌发了不依赖任何开发环境和编译器,纯手工写一个小程序的念   头。为了简单而又令所有学习程序开发的人感到亲切,就写一个Hello World! 程序吧...              在这里,我们首先复习一下Win32可执行程序的大体结构,就是通常所说的PE结构。     PE 的意思就是Port...
阅读(564) 评论(0)

从内存中加载动态库

typedef   BOOL (__stdcall *ProcDllMain)(HINSTANCE, DWORD,  LPVOID ); class CMemLoadDll { public: CMemLoadDll(); ~CMemLoadDll(); BOOL    MemLoadLibrary( void* lpFileData , int DataLength);  // ...
阅读(1447) 评论(0)

直接运行内存中的程序

#include "stdafx.h"   #include     typedef IMAGE_SECTION_HEADER (*PIMAGE_SECTION_HEADERS)[1];       // 计算对齐后的大小    unsigned long GetAlignedSize(unsigned long Origin, unsigned long Alignment)    ...
阅读(827) 评论(0)

从内存中加载并启动一个exe

windows似乎只提供了一种启动进程的方法:即必须从一个可执行文件中加载并启动。 而下面这段代码就是提供一种可以直接从内存中启动一个exe的变通办法。 用途嘛, 也许可以用来保护你的exe,你可以对要保护的 exe 进行任意切分、加密、存储, 只要运行时能将exe的内容正确拼接到一块内存中,就可以直接从内存中启动,而不必不安全地去 生成一个临时文件再从临时文件启动进程。另...
阅读(2101) 评论(0)

VC释放EXE资源文件

1、工程A要释放的程序是一个简单的MessageBox,源码如下:   [cpp] view plaincopyprint? #include       int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nSho...
阅读(497) 评论(0)

开源日志系统 log4c 使用心得+总结

本人最近研究了一下开源的日志系统log4c。简单总结一下: 一、安装  我看网上好多人介绍log4c安装的时候都说有两个步骤:先下载expat安装包并安装expat,然后下载log4c安装包并安装log4c。这么看来,log4c是依赖expat的。但是有时候我们不想使用的日志系统还要依赖别的库,毕竟现在的开源日志系统很多,这样一来log4c就没有那么大的优势了。所以我仔细看了log4c的R...
阅读(652) 评论(0)

PHP解析RSS

[代码] php代码 01 02    03 require "XML/RSS.php"; 04 $rss = new XML_RSS("http://php.net/news.rss"); 05 $rss->p...
阅读(359) 评论(0)

php生成RSS类

002 class RSS 003 { 004     /** 005      +---------------------------------------------------------- 006      * RSS频道名...
阅读(291) 评论(0)

VC6.0调试技巧

一、基本的调试设置 1、CTRL+F10:运行到当前光标处 2、设置 为了调试一个程序,首先必须使程序中包含调试信息。一般情况下,一个从AppWizard创建的工程中包含的Debug Configuration自动包含调试信息,但是是不是Debug版本并不是程序包含调试信息的决定因素,程序设计者可以在任意的Configuration中增加调试信息,包括Release版本。 为了增加调试...
阅读(351) 评论(0)

Linux下用gcc生成静态库和动态库

一、基本概念 1.1 什么是库 在 windows 平台和 linux 平台下都大量存在着库。 本质上来说库是 一种可执行代码的二进制形式,可以被操作系统载入内存执行。 由于 windows 和 linux 的平台不同(主要是编译器、汇编器和连接器 的不同),因此二者库的二进制是不兼容的。 本文仅限于介绍 linux 下的库。...
阅读(487) 评论(0)

Linux下动态库的生成及链接方法

Linux下动态库的生成及链接方法 (1)       Linux 下动态库文件的扩展名为".so"(Shared Object)。按照约定,所有动态库文件名的形式是libname.so(可能在名字中加入版本号)。这样,线程函数库被称作 libthread.so。静态库的文件名形式是libname.a。共享archive的文件名形式是libname.sa。共享archive只是一种过渡形式,帮助...
阅读(356) 评论(0)

新一代跨平台C++开发工具Code::Blocks简介

Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境,目前1.0版正在紧锣密鼓地开发过程中。我们正殷切期待Code::Blocks 1.0的正式发布,不过当前1.0 revision 2220已经处于绝大部分功能可用状态。 相比于QT designer这类界面设计工具而言,Code::Blocks是完整的开发环境;相比于基于Delphi的Dev-C++共享C++ID...
阅读(479) 评论(0)

C++跨平台开发方法/工具

1. cygwin + vc    vc当然用于来开发/调试windows程序的部分    cygwin是在windows平台模拟linux的工具,核心是cygwin1.dll, cygwin带的大部分工具,比如gcc/gdb都depend on这个dll。    从cygwin.com上下载setup.exe,然后从网上下载安装,比较慢,我花了大概一个下午才装好,记住下gcc/g++(...
阅读(326) 评论(0)

一个简单组件的制作过程——delphi教程

接下来要动手来做一个组件了,我想了一个计数器组件,功能方面是比较简单的,但这不是本章的重点,这一章的重点是说明一个组件的制作全过程。在其中可以学到很多组件制作的技巧,当然这些也是我从书上学得的。好了,开始制作吧:   这是一个可以计数的组件,为了简单,我以秒为单位,当开始时,他就从0开始增加,并显示出来,到3600时,它又回到0,如此循环。当然它也可以停止,暂停,继续。另外,他还有一个...
阅读(618) 评论(0)

Delphi关于多线程同步的一些方法

线程是进程内一个相对独立的、可调度的执行单元。一个应用可以有一个主线程,一个主线程可以有多个子线程,子线程还可以有自己的子线程,这样就构成了多线程应用了。由于多个线程往往会同时访问同一块内存区域,频繁的访问这块区域,将会增加产生线程冲突的概率。一旦产生了冲突,将会造成不可预料的结果(比如:该公用区域的值是不可预料的),可见处理线程同步的必要性。    (注意:本文中出现的所有代码都是用DELPH...
阅读(463) 评论(0)

WaitForSingleObject & WaitForMultipleObjects

这两个第一个是等一个信号,第二个可以等多个信号。用WaitForSingleObject这种方式可以暂时让线程等待,什么也不做,直到这个语句有返回值的时候这个线程就可以继续执行了,但是当什么时候他可以返回值,退出这个等待状态哪 ?下面我们详细讲解一下;它的原形: DWORD WaitForSingleObject( HANDLE hHandle,        // handle to obj...
阅读(448) 评论(0)

Delphi开发的WebService如何和Tomcat集成

随着B/S程序得到越来越广的应用,Delphi由开发C/S程序的主战场逐步转移到以开发WebService后台服务程序为主。由于我们前台通常用JSP作为脚本语言,因此Tomcat作为简单的Web服务器使用也比较广泛。   Delphi开发的WebService主要有4种发布形式:   1、ISAPI/NSAPI的DLL,一般必须集成与IIS服务器,由于IIS的漏洞太多,我们一般不使用。...
阅读(2368) 评论(0)

Delphi开发WebService给ASP.NET调用

说明: 1、本文档分3个部分,分别为: 用Delphi编写WebService 在IIS下部署WebService 在ASP.NET中调用webservice 2、开发环境为Windows XP SP2、Delphi 7.0、IIS 5.1、VS 2008(C#)   一、用Delphi编写WebService 第1步:File → New → Other → WebService...
阅读(6968) 评论(0)

Delphi7下开发Webservice以及部署问题概述

Delphi7支持五种部署方式来开发Webservice,分别介绍: Isapi是在IIS下运行; CGI是可以在IIS和apache下运行;我自己只在iis下部署了,没试apache。 Apache 1.x需要部署到apache1的版本下; Apache2.x需要部署到apache2; Debugger 是可以在方便Delphi中继承调试的; 以上可以在编写完业务代码后,再根据部署环...
阅读(3338) 评论(0)

Delphi Web Service 的创建及调试运行

一、Web Service程序创建 1.        新建Web Service工程,选择SOAP ServerApplication. 2.        选择Web AppDebugger executable,Class Name中添入类名“Demo1”. 3.        单击“Yes” 按钮. 4.        Service name中添入“Mai...
阅读(1011) 评论(0)
208条 共11页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:286509次
    • 积分:3757
    • 等级:
    • 排名:第9459名
    • 原创:16篇
    • 转载:192篇
    • 译文:0篇
    • 评论:29条
    最新评论