VS2008下WinRar源码生成dll和 lib总结

WinRar官方提供了源码(http://www.rarlab.com/rar_add.htm);如果自己想要修改里面的内容就要重新生成DLL和LIB,我在网上找了很多资料都没有说得很清楚。花一两天的时间才把他生成成功。网上的资料都给了一些误导,所以改了很久才完成。现在给出正确的步骤,给这方面的学习者提供一下思路。

)建立一个空的win32 dll工程
2)把.hpp和.cpp都添加到工程里
3)从工程中移除不是删除arccmt.cpp、beosea.cpp、coder.cpp、model.cpp、log.cpp、suballoc.cpp、os2ea.cpp、unios2.cpp、unpack15.cpp、unpack20.cpp、uowners.cpp、win32acl.cpp、win32stm.cpp
4)在项目属性下的配置属性常规下字符集设置为未设置

5)定义RARDLL;UNRAR;SILENT,我是在OS.hpp里定义的。

#ifndef RARDLL
#define RARDLL 
#endif
#ifndef UNRAR
#define UNRAR 
#endif
#ifndef SILENT
#define SILENT
#endif

试了多个头只有在这里定义没问题。因为这里定义了很宏。
6)定义导出文件为dll.def ,源码里有这个文件。你可以扡他导入进来。后在项目属性里链接器下输入下的模块定义文件里输入DLL.DEF文件,这里(Debug和Release)都要输入这个文件。

这样运行就可以生成。

http://blog.csdn.net/yjwffgip456/article/details/6587404

时间: 2024-10-22 08:14:04

VS2008下WinRar源码生成dll和 lib总结的相关文章

OpenCV在Windows平台下的源码编译

OpenCV库官方网站为http://opencv.org/. 在该网站可以下载最新的OpenCV for Windows,例如当前我下载的是opencv-2.4.9.exe ,双击该文件解压到某个目录下,解压后的根目录为opencv,opencv目录下有2个子目录,分别为build和sources,build目录中存放的是已经编译好的库,而sources目录中存放的是源代码.下面我们会在sources目录中编译源代码. 在sources目录中可以看到有个CMakeLists.txt文件,这个文

Linux 平台下阅读源码的工具链

原文:http://blog.jobbole.com/101322/ 前言 看源代码是一个程序员必须经历的事情,也是可以提升能力的一个捷径.个人认为: 要完全掌握一个软件的方法只有阅读源码. 在Windows下有sourceinsight这个源码阅读软件(虽然我没用过,但是网上评价还不错),由于我是个Linuxer,并不喜欢用Windows,所以自然是选择在Linux下阅读源码的工具了. 下面我将逐一介绍在Linux下阅读源码的工具. vim + ctags + cscope 源码阅读三剑客.v

使用vs2010编译lua5.1源码生成lua.lib

一.打开vs2010 二.创建项目 新建项目->win32控制台应用程序->下一步->应用程序设置中选择静态库,不勾选预编译头->完成.具体如下图: 三.拷贝源码 将lua源码中的*.h文件拷贝到项目的头文件文件夹下,将lua源码中的*.c文件拷贝到项目的源文件文件夹下. 四.生成lua.lib 项目右键->生成.此时即可在项目的Debug文件夹下看到生成的 lua.lib了. 使用vs2010编译lua5.1源码生成lua.lib,布布扣,bubuko.com

[笔记&轮子]java源码 生成本地javadoc api文档

在用Eclipse写java代码时候,有时候因为不知道一个java函数的作用,会通过把鼠移动到java函数上,如果它有javadoc的相关内容就会显示出来.但是并非所有java代码都有javadoc:即使安装了javadoc,在eclipse中如果不进行设定,也可能无法使用. 我在win7下安装的是javase的jdk,发现eclipse中默认的javadoc路径是http://download.oracle.com/javase/7/docs/api/,显然这是一个在线资源,问题是网络总是不稳

又是正版!Win下ffmpeg源码调试分析二(Step into ffmpeg from Opencv for bugs in debug mode with MSVC)

最近工作忙一直没时间写,但是看看网络上这方面的资源确实少,很多都是linux的(我更爱unix,哈哈),而且很多是直接引入上一篇文章的编译结果来做的.对于使用opencv但是又老是被ffmpeg库坑害的朋友们,可能又爱又恨,毕竟用它处理和分析视频是第一选择,不仅是因为俩者配合使用方便,而且ffmpeg几乎囊括了我所知道的所有解编码器,但是正是因为这个导致了一些bug很难定位,所以有必要考虑一下如何快速定位你的ffmpeg bug. sorry,废话多了.首先给个思路: 1.使opencv 的hi

centos下lamp源码安装

LAMP指的Linux(操作系统).ApacheHTTP 服务器,MySQL(有时也指MariaDB,数据库软件) 和PHP(有时也是指Perl或Python) 的第一个字母,一般用来建立web 服务器. 安装mysql这里我们用的是mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz的绿色软件包 解压mysql绿色软件包 [[email protected] lamp]# tar -zxvf mysql-5.6.15-linux-glibc2.5-x86_64.t

完整版linux下android源码下载、编译、模拟器启动运行

一.环境说明: 1.VMware版本:8.0.3 build-703057 2.liunx系统:Ubuntu10.10 3.jdk:sun-java6-jdk 二.Ubuntu 10.10更新源列表 由于??Ubuntu 10.10版本的源已经过期了,所以,需要对其进行更新,Ubuntu 10.10 已经发布了,下面提供更新源方法与更新源列表地址: 1.sudo gedit /etc/apt/sources.list     编辑你的源列表,将原来的内容全部删除,添加下面的源,复制到你的列表中,

.NET Core项目修改project.json来引用其他目录下的源码等文件的办法 & 解决多框架时 project.json 与 app.config冲突的问题

作者: zyl910 一.缘由 项目规模大了后,经常会出现源码文件分布在不同目录的情况,但.NET Core项目默认只有项目目录下的源码文件,且不支持“Add As Link”方式引入文件.这时需要手工修改project.json文件了. 可能是因为最新版本已将 project.json 转为 .csproj,导致我花了一些功夫才找到配置办法,故写了这篇笔记. 二.引用其他目录下的源码等文件的办法 2.1 官网说明 官网的 project.json 和 csproj 属性之间的映射 里简单介绍了

Linux下基于源码方式安装MySQL 5.6

MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文描述了如何在源码方式下安装MySQL. 1.安装环境及介质#安装环境SZDB:~ # cat /etc/issueWelcome to SUSE Linux Enterprise Server 10 SP3