MFC DLL

其他:DLL劫持防范:可以采用数字签名,通过计算DLL文件的数字签名,在加在时候进行验证即可。

Regular DLL:凡是支持DLL技术的都可以使用,不限于MFC程序使用。

Exten DLL:MFC DLL的扩展,用来导出MFC类,一般仅在MFC中使用。

条件宏:AFX_EXT_CLASS
#ifndef AFX_EXT_DATA
    #ifdef _AFXEXT
        #define AFX_EXT_CLASS       AFX_CLASS_EXPORT
        #define AFX_EXT_API         AFX_API_EXPORT
        #define AFX_EXT_DATA        AFX_DATA_EXPORT
        #define AFX_EXT_DATADEF
    #else
        #define AFX_EXT_CLASS       AFX_CLASS_IMPORT
        #define AFX_EXT_API         AFX_API_IMPORT
        #define AFX_EXT_DATA        AFX_DATA_IMPORT
        #define AFX_EXT_DATADEF
    #endif
#endif

XXX.h

#ifdef DLL_API
#else
#define DLL_API __declspec(dllimport)

XXX.cpp

/*
在DLL的工程文件中定义导出宏,如果没有定义这个宏,头文件会自动设置为导入模式,这样在给到其他应用工程的时候无需手动填写__declspec(dllexport)
*/
#define DLL_API  __declspec(dllexport)
#include "XXX.h"

应用程序的配置信息保存:
通常可以自定义配置信息的格式,并写入文件,下次打开文件载入就可以使用。
windows下的保存配置信息手法:ini文件 注册表

//ini文件格式
[节]
key1 = value1
key2 = value2
key3 = value3
//“=”左边类似注册表中的键,“=”右边相当于键值
//微软提供的相应的API函数
WriteProfileString("节名", "键", "键值");
WritePrivateProfileString
//语法详见MSDN

//regedit 注册表编辑器,每个计算机一般有5个根键
扩展可以支持环境变量的识别(%windir%)
Metasploit windows渗透工具 获取明文密码

RegCreateKeyEx()
没有就创建,有了就直接打开它

LONG RegCreateKeyEx(
  HKEY hKey,        // handle to open key
  LPCTSTR lpSubKey, // subkey name
  DWORD Reserved,   // reserved
  LPTSTR lpClass,   // class string
  DWORD dwOptions,  // special options
  REGSAM samDesired,// desired security access
  LPSECURITY_ATTRIBUTES lpSecurityAttributes, // inheritance
  PHKEY phkResult,  // key handle 
  LPDWORD lpdwDisposition  // disposition value buffer
);

LONG RegSetValueEx(
  HKEY hKey,           // handle to key
  LPCTSTR lpValueName, // value name
  DWORD Reserved,      // reserved
  DWORD dwType,        // value type
  CONST BYTE *lpData,  // value data
  DWORD cbData         // size of value data
);

RegCloseKey(hKey);

LONG RegDeleteValue(
                    HKEY hKey,              // handle to key
                    LPCTSTR lpValueName);   // value name

)

查询注册表:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值