在windows Service程序中为什么调用Findwindow查找窗口失败?

2373088 2002-10-21 06:19:38
在服务程序中调用Findwindow查找窗口老是返回126获0,在可执行程序和控制台程序却正确调用。哪位高人知道,请指点一下。
...全文
443 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
2373088 2002-10-28
  • 打赏
  • 举报
回复
qqchen79,thank you for your explanation.
qqchen79 2002-10-24
  • 打赏
  • 举报
回复
Within a Windows Service, all Desktop related APIs won't work as you expected.
That's because Windows Services run in different logon sessions than the current logon user. They have separate user accounts (you can check it out in Service Manager) and "desktops"(invisible). So, those windows shown up in your desktop won't be found by any windows services.
As an alternative, you could use a background application rather than service, like MSN Messenger stuff. Those app really runs within the logon user's session and desktop.
qqchen79 2002-10-24
  • 打赏
  • 举报
回复
Within a Windows Service, all Desktop related APIs won't work as you expected.
That's because Windows Services run in different logon sessions than the current logon user. They have separate user accounts (you can check it out in Service Manager) and "desktops"(invisible). So, those windows shown up in your desktop won't be found by any windows services.
As an alternative, you could use a background application rather than service, like MSN Messenger stuff. Those app really runs within the logon user's session and desktop.
qqchen79 2002-10-24
  • 打赏
  • 举报
回复
Within a Windows Service, all Desktop related APIs won't work as you expected.
That's because Windows Services run in different logon sessions than the current logon user. They have separate user accounts (you can check it out in Service Manager) and "desktops"(invisible). So, those windows shown up in your desktop won't be found by any windows services.
As an alternative, you could use a background application rather than service, like MSN Messenger stuff. Those app really runs within the logon user's session and desktop.
nike_hao 2002-10-22
  • 打赏
  • 举报
回复
当然找不到,因为Findwindow只有找有winform,而service程序里根本就没有,我以前也有这样的问题,现在还没解决,不过我发现用Process.GetProcessesByName()+PostThreadMessage应该可以,我正在试
2373088 2002-10-22
  • 打赏
  • 举报
回复
在Service中进行SendMessage或PostMessage都不起作用。我用FindWindow是想查找外部程序主窗口并向它发送消息。真不知在Service中还有哪些函数不起作用。
2373088 2002-10-22
  • 打赏
  • 举报
回复
谢谢nike_hao(nike) ,我也按你方法试一试,也请你把试的结果说一下,共同学习。
对于希望自己软件加密的,绝对值得你研究,我自己就从书代码获益颇多,给自己的商业软件加密了。共分为五个文件,希望对你有帮助。本人缺分,也希望多些人下载,(*^__^*) 嘻嘻…… 光盘目录说明 {第1章 基础知识} chap01\Regedit...................注册表读写示例 \IniFile...................Ini文件读写示例 \CustomFile................自定义文件读写示例 \CreateDLL.................DLL的创建示例 \YSCall....................DLL的隐式调用 \XSCall....................DLL的显式调用 \CreateComponent...........包的示例 \FindWindow................防止多个实例运行(查找窗口法) \Mutex.....................防止多个实例运行(互斥对象) \ATom......................防止多个实例运行(全局原子) \OnceRun(File).............防止多个实例运行(文件保存标志法) \BASM-Source...............Delphi嵌入汇编例子 \BASM-Class................BASM访问Delphi对象 \BASM-JMP..................BASM的跳转示例 \BASM-DB、DD、DW...........BASM的汇编指令 \BASM-Call.................BASM调用Delphi的函数和过程 \BASM-CallApi..............BASM调用API函数 \BASM-Var..................BASM访问函数或过程的参数 \BASM-Asm..................Delphi的全汇编例程 {第2章 加密算法} chap02\CRC32-Dym.................CRC32算法动态码表实现 \CRC32-Static..............CRC32算法静态码表实现 \MD5.......................MD5算法示例 \SHA.......................SHA算法示例 \DES.......................DES算法示例 \2DES......................双重DES算法示例 \3DES......................两个密钥的三重DES算法示例 \3DES3.....................三个密钥的三重DES算法示例 \Blowfish..................BlowFish算法示例 \AES.......................AES算法示例 \RSA.......................RSA算法示例 \BASE64....................BASE64算法示例 {第3章 软件试用期} chap03\TrialTime(Reg)............软件试用次数(信息写入注册表) \TrialTime(Ini)............软件试用次数(信息写入Ini文件) \TrialDate(Reg)............软件试用天数(信息写入注册表) \TrialDate(Ini)............软件试用天数(信息写入Ini文件) \LastDate(Reg).............软件最后试用日期(信息写入注册表) \LastDate(Ini).............软件最后试用日期(信息写入Ini文件) \RunTime-Timer.............限制软件启动后的执行时间(Timer控件) \RunTime-APi...............限制软件启动后的执行时间(API) \Nag.......................实现Nag窗口的第一种方法 \Nag-Time..................实现Nag窗口的第二种方法 \Time-ing..................时间段限制的第一种方法 \Time-run..................时间段限制的第二种方法 {第4章 反跟踪技术} chap04\Anti-SoftICE..............Anti-SoftICE示例 ├──BackDoor...........SoftICE后门指令 ├──Service............判断NTICE服务是否运行 ├──UEF................利用UnhandledExceptionFilter检测; └──INT41..............INT 41子类型; \Anti-Loader...............Anti-Loader示例 ├──PEB................利用TEB检测 ├──FindWindow.........查找句柄检测 ├──IsDebuggerPresent..利用IsDebuggerPresent检测 ├──Parent.............检查父进程 └──STARTUPINFO........检查STARTUPINFO结构 \Anti-Monitor..............Anti-Monitor示例 ├──FindWindow.........通过查找窗口标题栏 └──Process............通过查找进程 \Anti-Static...............反静态分析示例 ├──Example1...........一般程序示例 ├──Example2...........插入花指令示例 └──Example3...........12组花指令 \Anti-DeDe.................Anti-DeDe示例 ├──Find...............查找进程和窗口 └──Hide...............隐藏事件 \Anti-Unpacking............反脱壳示例 ├──FileSize...........用文件大小校验软件 └──FileCRC32..........校验文件完整性 \Message-Hide..............信息隐藏示例 ├──FileSelf...........把信息隐藏在程序本身 └──OtherFile..........信息隐藏于外部文件 {第5章 注册认证和注册机} chap05\Algorithms................选用加密算法 ├──MD5Check...........Hash算法作为注册码验证算法 ├──DESCheck...........对称算法作为注册码验证算法 ├──MoreAlg............多种对称算法实现注册验证 └──RSACheck...........公开密钥算法作为注册码验证算法 \Check.....................验证模式 ├──CurrentCheck.......注册码直接验证示例 └──RebootCheck........注册码重启校验示例 \Serial....................硬盘系列号保护方式 ├──HDID...............获取硬盘系列号示例 ├──Check..............硬件系列号保护示例 └──KeyGen.............注册机制作示例 \UserName..................用户名保护方式 ├──Check..............用户名保护示例 └──KeyGen.............注册机制作示例 \SerilaAndName.............硬件系列号与用户名保护方式 ├──Check..............硬件系列号与用户名保护示例 └──KeyGen.............注册机制作示例 \Random....................随机注册码模式 ├──Check..............随及注册码保护示例 └──KeyGen.............注册机制作示例 \KeyFile...................KeyFile保护方式 ├──Check..............KeyFile保护示例 └──KeyGen.............注册机制作示例 \CallDllCheck..............用DLL实现注册认证 └──CallCheck..........用DLL实现注册认证的示例 \DLLProtect................DLL控件保护示例 ├──Delphi.............Delphi调用示例 └──VB.................VB调用示例 \BPLProtect................BPL控件保护示例 └──CallBPL............调用BPL控件示例 \Compelet..................一套完整的软件保护示例 ├──Check..............软件保护示例 └──KeyGen.............注册机制作示例 {第6章 网络验证} chap06\WebCheck..................WEB服务器验证 ├──Client.............客户端实现示例 └──LocalControl.......本地控制程序实现示例 \ServerCheck...............本地服务器验证 ├──Client.............客户端实现示例 └──Server.............服务器实现示例 \Update....................在线升级验证示例 {第7章 PE文件知识} chap07\DOS Header................获取DOS头部信息示例 \PE Header.................获取PE头部信息示例 \Optional Header...........获取可选头部信息示例 \Section Table.............获取区块表信息示例 \Import Table..............获取输入表信息示例 \Export Table..............获取输出表信息示例 {其它源码} ToolsTest\OllyDbg................OllyDbg调试例子 \DeDe...................DeDe反编译例子
对于希望自己软件加密的,绝对值得你研究,我自己就从书代码获益颇多,给自己的商业软件加密了。共分为五个文件,希望对你有帮助。本人缺分,也希望多些人下载,(*^__^*) 嘻嘻…… 光盘目录说明 {第1章 基础知识} chap01\Regedit...................注册表读写示例 \IniFile...................Ini文件读写示例 \CustomFile................自定义文件读写示例 \CreateDLL.................DLL的创建示例 \YSCall....................DLL的隐式调用 \XSCall....................DLL的显式调用 \CreateComponent...........包的示例 \FindWindow................防止多个实例运行(查找窗口法) \Mutex.....................防止多个实例运行(互斥对象) \ATom......................防止多个实例运行(全局原子) \OnceRun(File).............防止多个实例运行(文件保存标志法) \BASM-Source...............Delphi嵌入汇编例子 \BASM-Class................BASM访问Delphi对象 \BASM-JMP..................BASM的跳转示例 \BASM-DB、DD、DW...........BASM的汇编指令 \BASM-Call.................BASM调用Delphi的函数和过程 \BASM-CallApi..............BASM调用API函数 \BASM-Var..................BASM访问函数或过程的参数 \BASM-Asm..................Delphi的全汇编例程 {第2章 加密算法} chap02\CRC32-Dym.................CRC32算法动态码表实现 \CRC32-Static..............CRC32算法静态码表实现 \MD5.......................MD5算法示例 \SHA.......................SHA算法示例 \DES.......................DES算法示例 \2DES......................双重DES算法示例 \3DES......................两个密钥的三重DES算法示例 \3DES3.....................三个密钥的三重DES算法示例 \Blowfish..................BlowFish算法示例 \AES.......................AES算法示例 \RSA.......................RSA算法示例 \BASE64....................BASE64算法示例 {第3章 软件试用期} chap03\TrialTime(Reg)............软件试用次数(信息写入注册表) \TrialTime(Ini)............软件试用次数(信息写入Ini文件) \TrialDate(Reg)............软件试用天数(信息写入注册表) \TrialDate(Ini)............软件试用天数(信息写入Ini文件) \LastDate(Reg).............软件最后试用日期(信息写入注册表) \LastDate(Ini).............软件最后试用日期(信息写入Ini文件) \RunTime-Timer.............限制软件启动后的执行时间(Timer控件) \RunTime-APi...............限制软件启动后的执行时间(API) \Nag.......................实现Nag窗口的第一种方法 \Nag-Time..................实现Nag窗口的第二种方法 \Time-ing..................时间段限制的第一种方法 \Time-run..................时间段限制的第二种方法 {第4章 反跟踪技术} chap04\Anti-SoftICE..............Anti-SoftICE示例 ├──BackDoor...........SoftICE后门指令 ├──Service............判断NTICE服务是否运行 ├──UEF................利用UnhandledExceptionFilter检测; └──INT41..............INT 41子类型; \Anti-Loader...............Anti-Loader示例 ├──PEB................利用TEB检测 ├──FindWindow.........查找句柄检测 ├──IsDebuggerPresent..利用IsDebuggerPresent检测 ├──Parent.............检查父进程 └──STARTUPINFO........检查STARTUPINFO结构 \Anti-Monitor..............Anti-Monitor示例 ├──FindWindow.........通过查找窗口标题栏 └──Process............通过查找进程 \Anti-Static...............反静态分析示例 ├──Example1...........一般程序示例 ├──Example2...........插入花指令示例 └──Example3...........12组花指令 \Anti-DeDe.................Anti-DeDe示例 ├──Find...............查找进程和窗口 └──Hide...............隐藏事件 \Anti-Unpacking............反脱壳示例 ├──FileSize...........用文件大小校验软件 └──FileCRC32..........校验文件完整性 \Message-Hide..............信息隐藏示例 ├──FileSelf...........把信息隐藏在程序本身 └──OtherFile..........信息隐藏于外部文件 {第5章 注册认证和注册机} chap05\Algorithms................选用加密算法 ├──MD5Check...........Hash算法作为注册码验证算法 ├──DESCheck...........对称算法作为注册码验证算法 ├──MoreAlg............多种对称算法实现注册验证 └──RSACheck...........公开密钥算法作为注册码验证算法 \Check.....................验证模式 ├──CurrentCheck.......注册码直接验证示例 └──RebootCheck........注册码重启校验示例 \Serial....................硬盘系列号保护方式 ├──HDID...............获取硬盘系列号示例 ├──Check..............硬件系列号保护示例 └──KeyGen.............注册机制作示例 \UserName..................用户名保护方式 ├──Check..............用户名保护示例 └──KeyGen.............注册机制作示例 \SerilaAndName.............硬件系列号与用户名保护方式 ├──Check..............硬件系列号与用户名保护示例 └──KeyGen.............注册机制作示例 \Random....................随机注册码模式 ├──Check..............随及注册码保护示例 └──KeyGen.............注册机制作示例 \KeyFile...................KeyFile保护方式 ├──Check..............KeyFile保护示例 └──KeyGen.............注册机制作示例 \CallDllCheck..............用DLL实现注册认证 └──CallCheck..........用DLL实现注册认证的示例 \DLLProtect................DLL控件保护示例 ├──Delphi.............Delphi调用示例 └──VB.................VB调用示例 \BPLProtect................BPL控件保护示例 └──CallBPL............调用BPL控件示例 \Compelet..................一套完整的软件保护示例 ├──Check..............软件保护示例 └──KeyGen.............注册机制作示例 {第6章 网络验证} chap06\WebCheck..................WEB服务器验证 ├──Client.............客户端实现示例 └──LocalControl.......本地控制程序实现示例 \ServerCheck...............本地服务器验证 ├──Client.............客户端实现示例 └──Server.............服务器实现示例 \Update....................在线升级验证示例 {第7章 PE文件知识} chap07\DOS Header................获取DOS头部信息示例 \PE Header.................获取PE头部信息示例 \Optional Header...........获取可选头部信息示例 \Section Table.............获取区块表信息示例 \Import Table..............获取输入表信息示例 \Export Table..............获取输出表信息示例 {其它源码} ToolsTest\OllyDbg................OllyDbg调试例子 \DeDe...................DeDe反编译例子
光盘目录说明 {第1章 基础知识} chap01\Regedit...................注册表读写示例 \IniFile...................Ini文件读写示例 \CustomFile................自定义文件读写示例 \CreateDLL.................DLL的创建示例 \YSCall....................DLL的隐式调用 \XSCall....................DLL的显式调用 \CreateComponent...........包的示例 \FindWindow................防止多个实例运行(查找窗口法) \Mutex.....................防止多个实例运行(互斥对象) \ATom......................防止多个实例运行(全局原子) \OnceRun(File).............防止多个实例运行(文件保存标志法) \BASM-Source...............Delphi嵌入汇编例子 \BASM-Class................BASM访问Delphi对象 \BASM-JMP..................BASM的跳转示例 \BASM-DB、DD、DW...........BASM的汇编指令 \BASM-Call.................BASM调用Delphi的函数和过程 \BASM-CallApi..............BASM调用API函数 \BASM-Var..................BASM访问函数或过程的参数 \BASM-Asm..................Delphi的全汇编例程 {第2章 加密算法} chap02\CRC32-Dym.................CRC32算法动态码表实现 \CRC32-Static..............CRC32算法静态码表实现 \MD5.......................MD5算法示例 \SHA.......................SHA算法示例 \DES.......................DES算法示例 \2DES......................双重DES算法示例 \3DES......................两个密钥的三重DES算法示例 \3DES3.....................三个密钥的三重DES算法示例 \Blowfish..................BlowFish算法示例 \AES.......................AES算法示例 \RSA.......................RSA算法示例 \BASE64....................BASE64算法示例 {第3章 软件试用期} chap03\TrialTime(Reg)............软件试用次数(信息写入注册表) \TrialTime(Ini)............软件试用次数(信息写入Ini文件) \TrialDate(Reg)............软件试用天数(信息写入注册表) \TrialDate(Ini)............软件试用天数(信息写入Ini文件) \LastDate(Reg).............软件最后试用日期(信息写入注册表) \LastDate(Ini).............软件最后试用日期(信息写入Ini文件) \RunTime-Timer.............限制软件启动后的执行时间(Timer控件) \RunTime-APi...............限制软件启动后的执行时间(API) \Nag.......................实现Nag窗口的第一种方法 \Nag-Time..................实现Nag窗口的第二种方法 \Time-ing..................时间段限制的第一种方法 \Time-run..................时间段限制的第二种方法 {第4章 反跟踪技术} chap04\Anti-SoftICE..............Anti-SoftICE示例 ├──BackDoor...........SoftICE后门指令 ├──Service............判断NTICE服务是否运行 ├──UEF................利用UnhandledExceptionFilter检测; └──INT41..............INT 41子类型; \Anti-Loader...............Anti-Loader示例 ├──PEB................利用TEB检测 ├──FindWindow.........查找句柄检测 ├──IsDebuggerPresent..利用IsDebuggerPresent检测 ├──Parent.............检查父进程 └──STARTUPINFO........检查STARTUPINFO结构 \Anti-Monitor..............Anti-Monitor示例 ├──FindWindow.........通过查找窗口标题栏 └──Process............通过查找进程 \Anti-Static...............反静态分析示例 ├──Example1...........一般程序示例 ├──Example2...........插入花指令示例 └──Example3...........12组花指令 \Anti-DeDe.................Anti-DeDe示例 ├──Find...............查找进程和窗口 └──Hide...............隐藏事件 \Anti-Unpacking............反脱壳示例 ├──FileSize...........用文件大小校验软件 └──FileCRC32..........校验文件完整性 \Message-Hide..............信息隐藏示例 ├──FileSelf...........把信息隐藏在程序本身 └──OtherFile..........信息隐藏于外部文件 {第5章 注册认证和注册机} chap05\Algorithms................选用加密算法 ├──MD5Check...........Hash算法作为注册码验证算法 ├──DESCheck...........对称算法作为注册码验证算法 ├──MoreAlg............多种对称算法实现注册验证 └──RSACheck...........公开密钥算法作为注册码验证算法 \Check.....................验证模式 ├──CurrentCheck.......注册码直接验证示例 └──RebootCheck........注册码重启校验示例 \Serial....................硬盘系列号保护方式 ├──HDID...............获取硬盘系列号示例 ├──Check..............硬件系列号保护示例 └──KeyGen.............注册机制作示例 \UserName..................用户名保护方式 ├──Check..............用户名保护示例 └──KeyGen.............注册机制作示例 \SerilaAndName.............硬件系列号与用户名保护方式 ├──Check..............硬件系列号与用户名保护示例 └──KeyGen.............注册机制作示例 \Random....................随机注册码模式 ├──Check..............随及注册码保护示例 └──KeyGen.............注册机制作示例 \KeyFile...................KeyFile保护方式 ├──Check..............KeyFile保护示例 └──KeyGen.............注册机制作示例 \CallDllCheck..............用DLL实现注册认证 └──CallCheck..........用DLL实现注册认证的示例 \DLLProtect................DLL控件保护示例 ├──Delphi.............Delphi调用示例 └──VB.................VB调用示例 \BPLProtect................BPL控件保护示例 └──CallBPL............调用BPL控件示例 \Compelet..................一套完整的软件保护示例 ├──Check..............软件保护示例 └──KeyGen.............注册机制作示例 {第6章 网络验证} chap06\WebCheck..................WEB服务器验证 ├──Client.............客户端实现示例 └──LocalControl.......本地控制程序实现示例 \ServerCheck...............本地服务器验证 ├──Client.............客户端实现示例 └──Server.............服务器实现示例 \Update....................在线升级验证示例 {第7章 PE文件知识} chap07\DOS Header................获取DOS头部信息示例 \PE Header.................获取PE头部信息示例 \Optional Header...........获取可选头部信息示例 \Section Table.............获取区块表信息示例 \Import Table..............获取输入表信息示例 \Export Table..............获取输出表信息示例 {其它源码} ToolsTest\OllyDbg................OllyDbg调试例子 \DeDe...................DeDe反编译例子
对于希望自己软件加密的,绝对值得你研究,我自己就从书代码获益颇多,给自己的商业软件加密了。共分为五个文件,希望对你有帮助。本人缺分,也希望多些人下载,(*^__^*) 嘻嘻…… 光盘目录说明 {第1章 基础知识} chap01\Regedit...................注册表读写示例 \IniFile...................Ini文件读写示例 \CustomFile................自定义文件读写示例 \CreateDLL.................DLL的创建示例 \YSCall....................DLL的隐式调用 \XSCall....................DLL的显式调用 \CreateComponent...........包的示例 \FindWindow................防止多个实例运行(查找窗口法) \Mutex.....................防止多个实例运行(互斥对象) \ATom......................防止多个实例运行(全局原子) \OnceRun(File).............防止多个实例运行(文件保存标志法) \BASM-Source...............Delphi嵌入汇编例子 \BASM-Class................BASM访问Delphi对象 \BASM-JMP..................BASM的跳转示例 \BASM-DB、DD、DW...........BASM的汇编指令 \BASM-Call.................BASM调用Delphi的函数和过程 \BASM-CallApi..............BASM调用API函数 \BASM-Var..................BASM访问函数或过程的参数 \BASM-Asm..................Delphi的全汇编例程 {第2章 加密算法} chap02\CRC32-Dym.................CRC32算法动态码表实现 \CRC32-Static..............CRC32算法静态码表实现 \MD5.......................MD5算法示例 \SHA.......................SHA算法示例 \DES.......................DES算法示例 \2DES......................双重DES算法示例 \3DES......................两个密钥的三重DES算法示例 \3DES3.....................三个密钥的三重DES算法示例 \Blowfish..................BlowFish算法示例 \AES.......................AES算法示例 \RSA.......................RSA算法示例 \BASE64....................BASE64算法示例 {第3章 软件试用期} chap03\TrialTime(Reg)............软件试用次数(信息写入注册表) \TrialTime(Ini)............软件试用次数(信息写入Ini文件) \TrialDate(Reg)............软件试用天数(信息写入注册表) \TrialDate(Ini)............软件试用天数(信息写入Ini文件) \LastDate(Reg).............软件最后试用日期(信息写入注册表) \LastDate(Ini).............软件最后试用日期(信息写入Ini文件) \RunTime-Timer.............限制软件启动后的执行时间(Timer控件) \RunTime-APi...............限制软件启动后的执行时间(API) \Nag.......................实现Nag窗口的第一种方法 \Nag-Time..................实现Nag窗口的第二种方法 \Time-ing..................时间段限制的第一种方法 \Time-run..................时间段限制的第二种方法 {第4章 反跟踪技术} chap04\Anti-SoftICE..............Anti-SoftICE示例 ├──BackDoor...........SoftICE后门指令 ├──Service............判断NTICE服务是否运行 ├──UEF................利用UnhandledExceptionFilter检测; └──INT41..............INT 41子类型; \Anti-Loader...............Anti-Loader示例 ├──PEB................利用TEB检测 ├──FindWindow.........查找句柄检测 ├──IsDebuggerPresent..利用IsDebuggerPresent检测 ├──Parent.............检查父进程 └──STARTUPINFO........检查STARTUPINFO结构 \Anti-Monitor..............Anti-Monitor示例 ├──FindWindow.........通过查找窗口标题栏 └──Process............通过查找进程 \Anti-Static...............反静态分析示例 ├──Example1...........一般程序示例 ├──Example2...........插入花指令示例 └──Example3...........12组花指令 \Anti-DeDe.................Anti-DeDe示例 ├──Find...............查找进程和窗口 └──Hide...............隐藏事件 \Anti-Unpacking............反脱壳示例 ├──FileSize...........用文件大小校验软件 └──FileCRC32..........校验文件完整性 \Message-Hide..............信息隐藏示例 ├──FileSelf...........把信息隐藏在程序本身 └──OtherFile..........信息隐藏于外部文件 {第5章 注册认证和注册机} chap05\Algorithms................选用加密算法 ├──MD5Check...........Hash算法作为注册码验证算法 ├──DESCheck...........对称算法作为注册码验证算法 ├──MoreAlg............多种对称算法实现注册验证 └──RSACheck...........公开密钥算法作为注册码验证算法 \Check.....................验证模式 ├──CurrentCheck.......注册码直接验证示例 └──RebootCheck........注册码重启校验示例 \Serial....................硬盘系列号保护方式 ├──HDID...............获取硬盘系列号示例 ├──Check..............硬件系列号保护示例 └──KeyGen.............注册机制作示例 \UserName..................用户名保护方式 ├──Check..............用户名保护示例 └──KeyGen.............注册机制作示例 \SerilaAndName.............硬件系列号与用户名保护方式 ├──Check..............硬件系列号与用户名保护示例 └──KeyGen.............注册机制作示例 \Random....................随机注册码模式 ├──Check..............随及注册码保护示例 └──KeyGen.............注册机制作示例 \KeyFile...................KeyFile保护方式 ├──Check..............KeyFile保护示例 └──KeyGen.............注册机制作示例 \CallDllCheck..............用DLL实现注册认证 └──CallCheck..........用DLL实现注册认证的示例 \DLLProtect................DLL控件保护示例 ├──Delphi.............Delphi调用示例 └──VB.................VB调用示例 \BPLProtect................BPL控件保护示例 └──CallBPL............调用BPL控件示例 \Compelet..................一套完整的软件保护示例 ├──Check..............软件保护示例 └──KeyGen.............注册机制作示例 {第6章 网络验证} chap06\WebCheck..................WEB服务器验证 ├──Client.............客户端实现示例 └──LocalControl.......本地控制程序实现示例 \ServerCheck...............本地服务器验证 ├──Client.............客户端实现示例 └──Server.............服务器实现示例 \Update....................在线升级验证示例 {第7章 PE文件知识} chap07\DOS Header................获取DOS头部信息示例 \PE Header.................获取PE头部信息示例 \Optional Header...........获取可选头部信息示例 \Section Table.............获取区块表信息示例 \Import Table..............获取输入表信息示例 \Export Table..............获取输出表信息示例 {其它源码} ToolsTest\OllyDbg................OllyDbg调试例子 \DeDe...................DeDe反编译例子
对于希望自己软件加密的,绝对值得你研究,我自己就从书代码获益颇多,给自己的商业软件加密了。共分为五个文件,希望对你有帮助。本人缺分,也希望多些人下载,(*^__^*) 嘻嘻…… 光盘目录说明 {第1章 基础知识} chap01\Regedit...................注册表读写示例 \IniFile...................Ini文件读写示例 \CustomFile................自定义文件读写示例 \CreateDLL.................DLL的创建示例 \YSCall....................DLL的隐式调用 \XSCall....................DLL的显式调用 \CreateComponent...........包的示例 \FindWindow................防止多个实例运行(查找窗口法) \Mutex.....................防止多个实例运行(互斥对象) \ATom......................防止多个实例运行(全局原子) \OnceRun(File).............防止多个实例运行(文件保存标志法) \BASM-Source...............Delphi嵌入汇编例子 \BASM-Class................BASM访问Delphi对象 \BASM-JMP..................BASM的跳转示例 \BASM-DB、DD、DW...........BASM的汇编指令 \BASM-Call.................BASM调用Delphi的函数和过程 \BASM-CallApi..............BASM调用API函数 \BASM-Var..................BASM访问函数或过程的参数 \BASM-Asm..................Delphi的全汇编例程 {第2章 加密算法} chap02\CRC32-Dym.................CRC32算法动态码表实现 \CRC32-Static..............CRC32算法静态码表实现 \MD5.......................MD5算法示例 \SHA.......................SHA算法示例 \DES.......................DES算法示例 \2DES......................双重DES算法示例 \3DES......................两个密钥的三重DES算法示例 \3DES3.....................三个密钥的三重DES算法示例 \Blowfish..................BlowFish算法示例 \AES.......................AES算法示例 \RSA.......................RSA算法示例 \BASE64....................BASE64算法示例 {第3章 软件试用期} chap03\TrialTime(Reg)............软件试用次数(信息写入注册表) \TrialTime(Ini)............软件试用次数(信息写入Ini文件) \TrialDate(Reg)............软件试用天数(信息写入注册表) \TrialDate(Ini)............软件试用天数(信息写入Ini文件) \LastDate(Reg).............软件最后试用日期(信息写入注册表) \LastDate(Ini).............软件最后试用日期(信息写入Ini文件) \RunTime-Timer.............限制软件启动后的执行时间(Timer控件) \RunTime-APi...............限制软件启动后的执行时间(API) \Nag.......................实现Nag窗口的第一种方法 \Nag-Time..................实现Nag窗口的第二种方法 \Time-ing..................时间段限制的第一种方法 \Time-run..................时间段限制的第二种方法 {第4章 反跟踪技术} chap04\Anti-SoftICE..............Anti-SoftICE示例 ├──BackDoor...........SoftICE后门指令 ├──Service............判断NTICE服务是否运行 ├──UEF................利用UnhandledExceptionFilter检测; └──INT41..............INT 41子类型; \Anti-Loader...............Anti-Loader示例 ├──PEB................利用TEB检测 ├──FindWindow.........查找句柄检测 ├──IsDebuggerPresent..利用IsDebuggerPresent检测 ├──Parent.............检查父进程 └──STARTUPINFO........检查STARTUPINFO结构 \Anti-Monitor..............Anti-Monitor示例 ├──FindWindow.........通过查找窗口标题栏 └──Process............通过查找进程 \Anti-Static...............反静态分析示例 ├──Example1...........一般程序示例 ├──Example2...........插入花指令示例 └──Example3...........12组花指令 \Anti-DeDe.................Anti-DeDe示例 ├──Find...............查找进程和窗口 └──Hide...............隐藏事件 \Anti-Unpacking............反脱壳示例 ├──FileSize...........用文件大小校验软件 └──FileCRC32..........校验文件完整性 \Message-Hide..............信息隐藏示例 ├──FileSelf...........把信息隐藏在程序本身 └──OtherFile..........信息隐藏于外部文件 {第5章 注册认证和注册机} chap05\Algorithms................选用加密算法 ├──MD5Check...........Hash算法作为注册码验证算法 ├──DESCheck...........对称算法作为注册码验证算法 ├──MoreAlg............多种对称算法实现注册验证 └──RSACheck...........公开密钥算法作为注册码验证算法 \Check.....................验证模式 ├──CurrentCheck.......注册码直接验证示例 └──RebootCheck........注册码重启校验示例 \Serial....................硬盘系列号保护方式 ├──HDID...............获取硬盘系列号示例 ├──Check..............硬件系列号保护示例 └──KeyGen.............注册机制作示例 \UserName..................用户名保护方式 ├──Check..............用户名保护示例 └──KeyGen.............注册机制作示例 \SerilaAndName.............硬件系列号与用户名保护方式 ├──Check..............硬件系列号与用户名保护示例 └──KeyGen.............注册机制作示例 \Random....................随机注册码模式 ├──Check..............随及注册码保护示例 └──KeyGen.............注册机制作示例 \KeyFile...................KeyFile保护方式 ├──Check..............KeyFile保护示例 └──KeyGen.............注册机制作示例 \CallDllCheck..............用DLL实现注册认证 └──CallCheck..........用DLL实现注册认证的示例 \DLLProtect................DLL控件保护示例 ├──Delphi.............Delphi调用示例 └──VB.................VB调用示例 \BPLProtect................BPL控件保护示例 └──CallBPL............调用BPL控件示例 \Compelet..................一套完整的软件保护示例 ├──Check..............软件保护示例 └──KeyGen.............注册机制作示例 {第6章 网络验证} chap06\WebCheck..................WEB服务器验证 ├──Client.............客户端实现示例 └──LocalControl.......本地控制程序实现示例 \ServerCheck...............本地服务器验证 ├──Client.............客户端实现示例 └──Server.............服务器实现示例 \Update....................在线升级验证示例 {第7章 PE文件知识} chap07\DOS Header................获取DOS头部信息示例 \PE Header.................获取PE头部信息示例 \Optional Header...........获取可选头部信息示例 \Section Table.............获取区块表信息示例 \Import Table..............获取输入表信息示例 \Export Table..............获取输出表信息示例 {其它源码} ToolsTest\OllyDbg................OllyDbg调试例子 \DeDe...................DeDe反编译例子

110,526

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧