dll文件

Navicat Premium 连接 Oracle 数据库

半世苍凉 提交于 2020-01-09 14:29:05
thunder://QUFodHRwOi8veGlhemFpLnhpYXphaWJhLmNvbS9Tb2Z0L04vTmF2aWNhdF9QcmVtaXVtXzEwLjEuN19YaWFaYWlCYS5leGVaWg== 首先下载navicat 10 安装到本地 http://119.188.72.52/0/ishare.down.sina.com.cn/27621454.zip?ssig=FKW8Vmty8q&Expires=1366473600&KID=sina,ishare&ip=1366336535,116.90.82.&fn=instantclient-basic-win32-11.2.0.1.0.zip 下载dll文件 下载完毕后解压到任意一个目录,然后打开 Navicat -> 工具 -> 选项 -> OCI ,如下图所示: 在 OCI library 地方选择解压的目录下的oci.dll文件,确定后即可。 接下来就是新建一个 Oracle 连接,注意连接类型必须选择 Basic,否则你就又要搞很多配置文件。 如下图所示: 最后, Navicat Premium 下载地址: http://download.navicat.com/download/navicat9_premium_cs.exe 注册码:NAVC-N7T9-WG9L-7U9B 来源: https:/

EXE和DLL调用关系,DLL制作,钩子

随声附和 提交于 2020-01-08 12:23:16
制作DLL时,在cpp种引入了头文件,但头文件里的全局变量在cpp种却不能用 参考大佬博客 https://blog.csdn.net/speargod/article/details/88854344 制作DLL DLL种包含 SetGlobalHook(设置钩子函数) UnsetGlobalHook(卸载钩子函数) GetMsgProc(钩子回调函数) 1、新建DLL空项目,我选的不到导出项的,导出项我们自己写,建好后是这样 2、右键源文件-》添加项-》添加cpp源文件 3、右键头文件-》添加项-》添加h头文件 4、在GH.cpp种写我们的函数实体 #include "GH.h" //这里包含了三个头文件,打开头文件菜单,把里面的都包含进去即可 #include "pch.h" #include "framework.h" LRESULT CALLBACK GetMsgProc(int code, WPARAM wParam, LPARAM lParam); //这三个不仅在头文件中需要写,在源文件中也需要写,这一定注意!!! extern "C" __declspec(dllexport) BOOL SetGlobalHook(); //用作声明函数 extern "C" __declspec(dllexport) BOOL UnsetGlobalHook(); HHOOK

Debug与Release版本的区别

房东的猫 提交于 2020-01-05 02:33:35
  Debug 和 Release 并没有本质的区别,他们只是VC预定义提供的两组编译选项的集合,编译器只是按照预定的选项行动。如果我们愿意,我们完全可以把Debug和Release的行为完全颠倒过来。当然也可以提供其他的模式,例如自己定义一组编译选项,然后命名为MY_ABC等。习惯上,我们仍然更愿意使用VC已经定义好的名称。   Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M)。至于是否需要DLL支持,主要看你采用的编译选项。如果是基于 ATL的,则Debug和Release版本对DLL的要求差不多。如果采用的编译选项为使用MFC动态库,则需要MFC42D.DLL等库支持,而 Release版本需要MFC42.DLL支持。Release不对源代码进行调试,不考虑MFC的诊断宏,使用的是 MFC Release库,编译时对应用程序的速度进行优化,而Debug则正好相反,它允许对源代码进行调试,可以定义和使用MFC的 诊断宏,采用MFC Debug库,对速度没有优化。   既然Debug和 Release仅仅是编译选项的不同,那么为什么要区分Debug和Release版本呢?   Debug和Release,在我看来主要是针对其面 向的目标不同的而进行区分的。Debug通常称为调试版本,通过一系列编译选项的配合,编译的结果通常包含调试信息

VS2008下编写调试dll的一个实例(参考msdn) .

廉价感情. 提交于 2020-01-04 21:13:19
演练:创建和使用动态链接库 在本演练中,您将创建一个动态链接库 (DLL),其中包含可供其他应用程序使用的有用例程。使用 DLL 是一种重用代码的绝佳方式。您不必在自己创建的每个程序中重新实现这些例程,而只需对这些例程编写一次,然后从需要该功能的应用程序引用它们即可。 本演练使用本机 C++。有关使用本机 C++ 创建静态库的演练,请参见 演练:创建和使用静态库 。有关使用面向公共语言运行库的 Visual C++ 的演练,请参见 演练:创建和使用托管程序集 。 本演练涵盖以下内容: 创建新的动态链接库 (DLL) 项目 向动态链接库添加类 创建引用动态链接库的应用程序 在控制台应用程序中使用类库的功能 运行应用程序 先决条件 本主题假定您具备 C++ 语言的基础知识。 创建新的动态链接库 (DLL) 项目 从“文件”菜单中,选择“新建”,然后选择“项目…”。 从“项目类型”窗格中选择“Visual C++”下的“Win32”。 从“模板”窗格中,选择“Win32 控制台应用程序”。 为项目选择一个名称,如 “MathFuncsDll” ,并将其输入“名称”字段。为解决方案选择一个名称,如 “DynamicLibrary” ,并将其输入“解决方案名称”字段。 按“确定”启动 Win32 应用程序向导。在“Win32 应用程序向导”对话框的“概述”页中,按“下一步”。 从“Win32

创建一个动态链接库 (DLL),使用VS2010

烂漫一生 提交于 2020-01-04 21:13:03
在本演练中,您将创建一个动态链接库 (DLL),其中包含可供其他应用程序使用的有用例程。使用 DLL 是一种重用代码的绝佳方式。您不必在自己创建的每个程序中重新实现这些例程,而只需对这些例程编写一次,然后从需要该功能的应用程序引用它们即可。 本演练使用本机 C++。有关使用本机 C++ 创建静态库的演练,请参见 演练:创建和使用静态库 。有关使用面向公共语言运行库的 Visual C++ 的演练,请参见 演练:创建和使用托管程序集 。 本演练涵盖以下内容: 创建新的动态链接库 (DLL) 项目 向动态链接库添加类 创建引用动态链接库的应用程序 在控制台应用程序中使用类库的功能 运行应用程序 先决条件 本主题假定您具备 C++ 语言的基础知识。 创建新的动态链接库 (DLL) 项目 从“文件”菜单中,选择“新建”,然后选择“项目…”。 从“项目类型”窗格中选择“Visual C++”下的“Win32”。 从“模板”窗格中,选择“ Win32 控制台应用程序 ”。 为项目选择一个名称,如 “ MathFuncsDll ” ,并将其输入“名称”字段。为解决方案选择一个名称,如 “DynamicLibrary” ,并将其输入“解决方案名称”字段。 按“确定”启动 Win32 应用程序向导。在“Win32 应用程序向导”对话框的“概述”页中,按“下一步”。 从“Win32 应用程序向导”中的

未能加载文件或程序集“XXX”或它的某一个依赖项。系统找不到指定的文件。

佐手、 提交于 2020-01-04 03:06:28
2009年8月28日 昨晚我宿舍的舍友跟我讲,我们要是能将每天遇到的问题跟解决方法,总结一下做个记录,那不是挺好的; 我也觉得有道理,所以就开始记录一下: 今天第一个问题: "未能加载文件或程序集“XXX”或它的某一个依赖项。系统找不到指定的文件。" 网上找了一下,方法如下: 很明显,缺少DLL文件,可能原因 1。DLL文件名与加载时的DLL文件名不一致, 2.DLL文件根本不存在,即出现丢失情况, 3.加载DLL路径错误,即DLL文件存在,但加载路径不正确 我查了自己项目的情况: 文件名一致,在WEB工程里面没有引用到那个程序集,我就不明白别的程序集都可以在程序启用的时候自动加载到web工程的bin文件夹下,就是那个引用不到,我就手动添加了进去,在运行,没有错误了; 我那个违法引用到的程序集是利用反射引用的,有影响吗?不知道,以后知道了再添加来吧? 来源: https://www.cnblogs.com/landylee/archive/2009/08/28/1555624.html

dnf小小外挂外挂原理及使用

≯℡__Kan透↙ 提交于 2020-01-03 03:26:37
dnf小小外挂几乎所有的中都使用了鼠标来改变角色的位置和方向,玩家仅用一个小小的鼠 标,就可以使角色畅游天下。 那么,我们如何实现在没有玩家的参与下角色也可以自动行走呢。其实实现这个并不 难,仅仅几个Windows API函数就 可以搞定dnf小小外挂,让我们先来认识认识这些API函数。   (1) 模拟鼠标动作API函数mouse_event,它可以实现模拟鼠标按下和放开等动作。     VOID mouse_event(       DWORD dwFlags, // 鼠标动作标识。       DWORD dx, // 鼠标水平方向位置。       DWORD dy, // 鼠标垂直方向位置。       DWORD dwData, // 鼠标轮子转动的数量。       DWORD dwExtraInfo // 一个关联鼠标动作辅加信息。     );   其中,dwFlags表示了各种各样的鼠标动作和点击活动,它的常用取值如下:    MOUSEEVENTF_MOVE 表示模拟鼠标移动事件。    MOUSEEVENTF_LEFTDOWN 表示模拟按下鼠标左键。    MOUSEEVENTF_LEFTUP 表示模拟放开鼠标左键。    MOUSEEVENTF_RIGHTDOWN 表示模拟按下鼠标右键。    MOUSEEVENTF_RIGHTUP 表示模拟放开鼠标右键。

web调用DLL(小记)

邮差的信 提交于 2020-01-03 03:06:48
用web站点调用dll,然后在dll里封装实现数据,或者资源文件或者执行其他程序,比如网页图片等, dll注册到客户端,然后每次访问该网站都先检测是否有该dll已经注册,没有就再注册,有些asp网站木马就是这样实现的,首先获得服务器的WScript.Shell的权限,然后利用FSO判断DLL是否存在,shell调用 regsvr32注册dll 。可以用vc编写ISAPI DLL,也可以在IIS里增加ISAPI映射调用。ActiveX DLL需要注册,不像C#有程序集,好象ASP只能调用ActiveX DLL,是不是它比较老的缘故。使用HTTP的GET方法将DLL从服务器端下载下来。 另外,asp中不需要注册DLL即可调用的方法,加入DLL <!-- METADATA TYPE="typelib" FILE="D:\abs\ee.dll" -->,FILE为绝对路径,没注册找不到。 在“开始→运行”中键入“regsvr32 /u scrrun.dll”就可以禁用FSO对象;如果需要使用FSO对象,键入“regsvr32 scrrun.dll”命令 来源: https://www.cnblogs.com/kuaile/archive/2009/09/12/1565218.html

CEF C++环境搭建

拥有回忆 提交于 2020-01-01 01:00:27
第一步:下载CEF 到这里下载最新版本的CEF http://cefbuilds.com/ 下载解压之后,大概会看到如下图所示的文件 cefclient:是一个比较复杂的示例代码 cefsimple:是一个简单的示例代码 Debug:是用于调试的库 include:是一系列的头文件 libcef_dll:里面的代码是对libcef.dll的包装 Release:是用于发布的库 Resources:是必要的资源文件 其他文件暂时就不一一解释了。 第二步:编译工程 用VS打开程序,开始编译 如果你需要调试程序,那么就选择Debug,如果你要发布,那么就选Release (此编译过程主要是为了编译libcef_dll_wrapper,编译之后在\out\Debug\lib目录下会看到编译的DLL,以后步骤会用到) 第三步:新建工程 第四步:写代码 把cef_binary_3.1921.1661_windows32\cefsimple目录(注意是拷贝文件夹)拷贝到新工程下 并包含在项目中 示意图(一) 示意图(二) 第五步:拷贝支撑文件 在新工程所在目录下,新建一个dll文件夹 把Debug目录下的文件全部拷贝到该文件夹下 把resource目录下的文件全部拷贝到该文件夹下 把include文件夹拷贝到该文件夹下(注意是拷贝文件夹) 把out\Debug\lib\libcef_dll

全局键盘钩子

这一生的挚爱 提交于 2019-12-31 23:15:57
这是在系统的范围内截获键盘消息,所以需要全局键盘钩子,全局键盘钩子需要DLL文件的支持,这样系统才能把DLL强行的加载到进程中去。 建立一个新的DLL文件 ,在DllMain()函数所在的CPP中添加: 定义两个全局变量:钩子句柄和DLL模块句柄。 HHOOK g_Hook = NULL; HINSTANCE g_Instance = NULL; 在DllMain函数中保存DLL模块句柄,安装钩子SetWindowsHookEx()参数需要用到。 BOOL APIENTRY DllMain( HMODULE hModule, DWORD ul_reason_for_call,LPVOID lpReserved) { g_Instance = (HINSTANCE)hModule; //保存DLL模块句柄 return TRUE; } 键盘钩子函数,调用约定为_stdcall: LRESULT _stdcall KeyboradProc(int code ,WPARAM wParam,LPARAM lParam) { if (code < 0) { return CallNextHookEx(g_Hook,code,wParam,lParam); } if (code == HC_ACTION&&lParam>0) { char Buffer[10] = { 0 };