社区
进程/线程/DLL
帖子详情
DLL加密高手进,急啊!
heqing128
2005-02-27 11:21:01
软件编好了,源程序要交付,但是其中有两个CPP要保密,因为是以前项目的成果。
现在我采用dll的方法,把那两个CPP文件变成DLL,然后调用,但是老板说要让只有我们的程序才能调用这两个DLL,而别人的程序不能调用。现在不知道该对这两个DLL做什么手脚才能达到老板的要求?因为其他的所有源程序要给对方,所以DLL里的函数定义和调用的源程序要完全公开的,所以只有改DLL内部函数了,怎么样才能使这两个DLL只能被我们的程序所调用?
盼解决办法。。
...全文
292
6
打赏
收藏
DLL加密高手进,急啊!
软件编好了,源程序要交付,但是其中有两个CPP要保密,因为是以前项目的成果。 现在我采用dll的方法,把那两个CPP文件变成DLL,然后调用,但是老板说要让只有我们的程序才能调用这两个DLL,而别人的程序不能调用。现在不知道该对这两个DLL做什么手脚才能达到老板的要求?因为其他的所有源程序要给对方,所以DLL里的函数定义和调用的源程序要完全公开的,所以只有改DLL内部函数了,怎么样才能使这两个DLL只能被我们的程序所调用? 盼解决办法。。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
heqing128
2005-02-28
打赏
举报
回复
EnochShen,再问一下,获得ID以后怎么判断是不是我的程序呢?
EnochShen
2005-02-27
打赏
举报
回复
如何获取父进程的ID
(hangwire发表于2001-12-26 17:00:47)
从所周知,在Windows NT/2000系统的API黑洞之一便是NTDLL.DLL,此DLL包含了许多未公开的API函数。本文将列举一、二,并用它们示范如何获取任何指定进程的父进程ID。
NTDLL.DLL中有一个函数叫NtQueryInformationProcess,用它可以将指定类型的进程信息拷贝到某个缓冲。其原型如下:
NTSYSAPI
NTSTATUS
NTAPI
NtQueryInformationProcess (
IN HANDLE ProcessHandle, // 进程句柄
IN PROCESSINFOCLASS InformationClass, // 信息类型
OUT PVOID ProcessInformation, // 缓冲指针
IN ULONG ProcessInformationLength, // 以字节为单位的缓冲大小
OUT PULONG ReturnLength OPTIONAL // 写入缓冲的字节数
);
第一个参数是希望操作的进程句柄,这个句柄必须以PROCESS_QUERY_INFORMATION模式存取。为了取得一个句柄,我们必须用OpenProcess函数:
HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION,FALSE,dwProcessID);
第二个参数是请求信息的类型,这个参数可以有许多个值,本文例子中将用ProcessBasicInformation (值为0)。
因此,如果第二个参数是ProcessBasicInformation的话,则第三个参数必须为一个指针指向结构PROCESS_BASIC_INFORMATION:
typedef struct
{
DWORD ExitStatus; // 接收进程终止状态
DWORD PebBaseAddress; // 接收进程环境块地址
DWORD AffinityMask; // 接收进程关联掩码
DWORD BasePriority; // 接收进程的优先级类
ULONG UniqueProcessId; // 接收进程ID
ULONG InheritedFromUniqueProcessId; //接收父进程ID
} PROCESS_BASIC_INFORMATION;
这个结构的最后一个参数是InheritedFromUniqueProcessId,它就是我们所要的东西。
DWORD dwParentPID;
LONG status;
PROCESS_BASIC_INFORMATION pbi;
status = NtQueryInformationProcess( hProcess,
ProcessBasicInformation,
(PVOID)&pbi,
sizeof(PROCESS_BASIC_INFORMATION),
NULL );
if (!status)
dwParentPID = pbi.InheritedFromUniqueProcessId;
EnochShen
2005-02-27
打赏
举报
回复
获得父进程的ID,之后判断是不是你的程序
Kudeet
2005-02-27
打赏
举报
回复
要别人不能调用,就把DLL里的函数定义给封起来。把以前的成果做成DLL,然后做个新DLL来调用这个DLL,现在的源程序就调用这个新DLL,把以前的就封起来。
EnochShen
2005-02-27
打赏
举报
回复
在DLL_PROCESS_ATTACH的时候,晕,就是调用了也不会知道两个CPP里面写的是什么啊
heqing128
2005-02-27
打赏
举报
回复
up
Unity 3D Android对
dll
加密
和重编译mono源码
进
行解密
为防止Unity 3D的
dll
代码被反编译,可对其
进
行
加密
,然后在libmono.so中解密,重编译后代码便可正常运行。步骤如下: 1、对
dll
加密
: 用VS建立控制台应用程序,将要
加密
的
dll
放置于工程目录中,并
进
行
加密
(比如将
dll
转换成字节流并将字节偏移1位)。
加密
完的
dll
用反编译工具无法打开。
加密
后的
dll
用反编译工具无法打开: 2、
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家分? 2:100分
急
求,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望
高手
帮忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有帮助!顺便散分! 6:VBA请教怎
ASP.NET 安全认证(如何运用 Form 表单认证)(转帖)
——如何运用 Form 表单认证 作者:寒羽枫(cityhunter172) 序 代码写 N 久了,总想写得别的。这不,上头说在整合两个项目,做成单一登录(Single Sign On),也有人称之为“单点登录”。查阅相关文档后,终于实现了,现在把它拿出来与大家一起分享。或许大家会问:“这与标题不符呀?”别
急
,在下笔之前,我脑子里想到了我刚使用 Form 认证时遇到的一些问题,以及...
数据库帖子收集
这样的数据列表在存储过程中应该怎么样选择得到? 请问造成SQL2000服务不能启动的原因有哪些? sql server中有無類似于if 的函數,即像這樣select if(cancel=1,'cancel','') from sales 这样怎么返回呀!!!!记录集的返回。。 谁能跟我说说期初库存怎么样的一个业务逻辑!都要处理哪些内容!需要每月
进
...
30道“热乎乎”的 JVM 典型题目剖析!
公众号后台回复“学习”,获取作者独家秘制精品资料多年好友心血力作,阿里资深技术专家十余年JVM生产实践经验《从零开始带你成为JVM实战
高手
》限时优惠:88元(正在
进
行in...
进程/线程/DLL
15,473
社区成员
49,171
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章