dll相关
文章平均质量分 52
焦三仙本仙
学无止境,共同进步
展开
-
win32中调用dll测试(简单)
今天突然学习,如何远程注入dll首先新建项目->win32项目->应用程序类型选择dll // DLL.cpp : 定义 DLL 应用程序的导出函数。//#include "stdafx.h"_declspec(dllexport) int add(int a,int b){ return a+b;}_declspec(dllexport) int subtrac原创 2012-11-01 16:46:27 · 3254 阅读 · 0 评论 -
Activex控件
ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。在创建包括ActiveX程序时,主要的工作就是组件,一个可以自足的在ActiveX网络(现在的网络主要包括Windows和Mac)中任意运行的程序。这个组件就是ActiveX近控件。ActiveX是Microsof原创 2013-10-22 13:55:07 · 1719 阅读 · 1 评论 -
在VC中创建DLL文件的方法步骤
一.Win32动态链接库 1.制作的步骤: (1)新建WIN32 Dynamic-link Library工程,工程名为MyDll,选择A simple DLL project类型。 (2)MyDll.h的内容如下:以下是引用片段: extern "C" _declspec(dllexport) int sum(int a,int b);//本文所有的例原创 2013-10-09 15:39:35 · 1362 阅读 · 0 评论 -
MFC调用c#的dll
一、使用 /clr 编译 MFC 可执行文件或规则 DLL 1、打开“项目属性”对话框,方法是右键单击“解决方案资源管理器”中的项目并选择“属性”。 2、展开“配置属性”旁边的节点并选择“常规”。在右侧窗格中的“项目默认值”下,将“公共语言运行库支持”设置为“公共语言运行库支持 (/clr)”。 3、在相同的窗格中,确保将“MFC 的使用”设置为“在共享 DLL 中使原创 2013-09-26 19:13:14 · 5252 阅读 · 1 评论 -
构建自己的插件开发框架(c++)
博客《C/C++:构建你自己的插件框架 》,原文的链接:http://blog.chinaunix.net/u/12783/showart_662937.html 。看了一下里面讲的方法,自己倒是可以实现。所以有了构建自己的c/c++插件开发框架的想法。今天先写一下初步的设想。 C/C++插件开发框架的要素 BlueDavy有一篇介绍服务框架要素的文章(链接:http://www.bl原创 2013-12-25 14:31:50 · 3042 阅读 · 0 评论 -
c++实现dll注入其它进程
DLL注入其他进程技术阅读本篇文章,需要有《线程注入其他进程技术》基础。DLL注入技术才具有强大的功能和使用性,同时简单易用,因为DLL中可以实现复杂的功能和很多的技术。 技术要点:1、宿主进程调用LoadLibrary,就可以完成DLL的远程注入。可以通过CreateRemoteThread将LoadLibrary作为宿主进程的一个线程来启动,就可以完成“控制目标进程调原创 2014-03-18 09:18:00 · 13826 阅读 · 3 评论 -
LoadLibrary加载库失败,getlasterror = 193.
无效的EXE格式,你调用LoadLibrary参数中的DLL是损坏的。原创 2015-05-06 17:56:37 · 11010 阅读 · 0 评论 -
c++动态库中使用命名空间的问题
这是C++才会有的语言特性.假如你使用一个程序库,他里面有桓霰淞拷衋bc,但是你自己也不小心定义了一个叫abc的变量,这样就会引起重定义错误.所以为了避免这种现象,C++引入了名字空间(namespace)的概念,编写程序库的时候最好把所有东西放在一个namespace中,例如namespace MY{int abc;char cab;}这样,你在外界就要通过MY::a原创 2015-07-13 14:04:51 · 3753 阅读 · 0 评论 -
c#调用dll详解
大家在实际工作学习C#的时候,可能会问:为什么我们要为一些已经存在的功能(比如Windows中的一些功能,C++中已经编写好的一些方法)要重新编写代码,C#有没有方法可以直接都用这些原本已经存在的功能呢?答案是肯定的,大家可以通过C#中的DllImport直接调用这些功能。DllImport所在的名字空间 using System.Runtime.InteropServices;MSDN中原创 2013-09-24 14:43:20 · 2795 阅读 · 0 评论 -
动态链接库与静态链接库的区别
静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了。但是若使用 DLL,该 DLL 不必被包含在最终 EXE 文件中,EXE 文件执行时可以“动态”地引用和卸载这个与 EXE 独立的 DLL 文件。静态链接库和动态链接库的另外一个区别在于静态链接库中不能再包含其他的动态链接库或者静态库,而在动态链接库中还可原创 2013-10-09 14:05:11 · 2389 阅读 · 0 评论 -
dll和lib文件的区别
什么是dll和lib文件动态链接库(Dynamic Link Library,缩写为DLL)是一个可以被其它应用程序共享的程序模块,其中封装了一些可以被共享的例程和资源。动态链接库文件的扩展名一般是dll,也有可能是drv、sys和fon,它和可执行文件(exe)非常类似,区别在于DLL中虽然包含了可执行代码却不能单独执行,而应由Windows应用程序直接或间接调用。转载 2012-11-02 11:34:34 · 1368 阅读 · 0 评论 -
dll注入学习
先解释一下远程进程,其实就是要植入你的代码的进程,相对于你的工作进程(如果叫本地进程的话)它就叫远程进程,可理解为宿主。首先介绍一下我们的主要工具CreateRemoteThread,这里先将函数原型简单介绍以下。CreateRemoteThread可将线程创建在远程进程中。函数原型HANDLE CreateRemoteThread( HANDLE hProcess原创 2012-11-09 11:46:35 · 868 阅读 · 0 评论 -
C++如何执行dll文件中的代码
可以通过注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows 键项右边窗口的 AppInit_DLLs 自动加载;还可以通过HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks自原创 2012-11-08 18:23:53 · 991 阅读 · 0 评论 -
关于c++和C#如何调用自己用c++写的dll文件
今天学习了,如何在c++和c#中通过调用自己写的dll文件中的函数来实现一定的功能。可能有些简单,但是有助于初学者学习。 首先分开讲解:用c++编写dll文件(就是编写c++控制台程序):// DLL.cpp : 定义 DLL 应用程序的导出函数。//#include "stdafx.h"extern "C" _declspec(dllexport) int add(i原创 2012-12-17 18:35:18 · 1798 阅读 · 0 评论 -
动态连接库和静态连接库的区别
静态连接库: 简介: 静态连接就是,使用普通的函数库,在程序连接时将库中的代码拷贝到可执行文件中。 存在问题:假设有多个程序同时执行,并且同时调用了同一个库文件,这是内存中就会保留着许多重复的代码副本。造成内存浪费。 出现现象:出现警告对话框:“系统资源不足,请关闭部分Wind原创 2013-01-21 18:21:57 · 1559 阅读 · 0 评论 -
vs2010测试第一个OpenGL开发
OpenGL开发环境简介基于OpenGL标准开发的应用程序运行时需有动态链接库OpenGL32.DLL、Glu32.DLL,这两个文件在安装Windows NT时已自动装载到C:\WINDOWS\SYSTEM32目录下(这里假定用户将Windows NT安装在C盘上)。OpenGL的图形库函数封装在动态链接库OpenGL32.DLL中,开发基于OpenGL的应用程序,必须先原创 2013-08-15 18:09:00 · 1760 阅读 · 0 评论 -
`DllImport' could not be found 错误
错误:`DllImport' could not be found 方法:给你的类添加"using System.Runtime.InteropServices;"原创 2013-09-26 19:41:19 · 2812 阅读 · 0 评论 -
C/C++中动态链接库的创建和调用
动态链接库英文为DLL,是Dynamic Link Library 的缩写形式,DLL 是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。本文介绍的是动态链接库的创建和调用,一起来看。AD: 2013云计算架构师峰会精彩课程曝光 DLL 有助于共享数据和资源。多个应用程序可同时访问内存中单个DLL 副本的内容。DLL 是一个包含可原创 2013-10-09 15:08:53 · 1572 阅读 · 0 评论 -
C/C++:函数的编译方式与调用约定以及extern “C”的使用
函数在C++编译方式与C编译方式下的主要不同在于:由于C++引入了函数重载(overload),因此编译器对同名函数进行了名称重整(name mangle)。因此,在C++中引用其他C函数库时,需要对声明使用的函数做适当的处理,以告知编译器做出适应的名称处理。函数的调用约定涉及了函数参数的入栈顺序、清栈主体(负责清理栈的主体:函数自身还是调用函数者?)、部分名称重整。如,在C编译方式下原创 2015-07-15 17:45:10 · 1318 阅读 · 0 评论