社区
Windows SDK/API
帖子详情
如何禁止别的程序读取我的文件
lght
2011-10-18 04:15:04
自己程序里的一些文件,不想别的程序读取,这个怎么做?
是不是要写驱动?
不用权限那种方式。
...全文
1807
40
打赏
收藏
如何禁止别的程序读取我的文件
自己程序里的一些文件,不想别的程序读取,这个怎么做? 是不是要写驱动? 不用权限那种方式。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
40 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dglife81
2011-10-22
打赏
举报
回复
关注关注。。。
54ItLan
2011-10-22
打赏
举报
回复
简单的就是文件加密。
山东蓝鸟贵薪
2011-10-22
打赏
举报
回复
[Quote=引用 24 楼 lght 的回复:]
引用 22 楼 sgzhou12345 的回复:
呵呵,你真是太坏了呀
这个呀,我也做过的
给你一个思路:
你可以在DLL中设置两个参数
这两个参数,你可以选中其中一个参数作为“判断”,传递是“指定参数”,就继续引用DLL
否则就直接退出
不知道是我没懂你的意思还是你没懂我的意思。
[/Quote]
那你就“定义”个结构,就行呀,
比方说自定义一个“数据结构”生成一个小型数据库文件,
这样对方不知你的“数据结构”就无法读取其中数据了
dq2010
2011-10-22
打赏
举报
回复
我也想学习学习加密!
将来的将来
2011-10-21
打赏
举报
回复
文件加密享用独占方式
ghao0
2011-10-21
打赏
举报
回复
1.把数据放在别人读不到的地方,不过你也要读呀。
把数据放在分区之外,别人难读到,windows也读不到,你怎么读。
2.加密后再保存,使用时解密。
ntfs硬盘数据是可以加密的,windows帮你加解密。
软件狗,软件狗帮你加解密。
3.控制别人的读取。
你能吗?钩子。独占打开。
限制是相对的,个人认为加密后再保存,使用时解密简单可靠些。
sad
2011-10-20
打赏
举报
回复
这个..真很难.
在xp/2003/win7 32位的程序,即使以独占打开的程序,都可以通过CreateFile 传递FILE_READ_ATTRIBUTES打开,然后再DeviceIoControl,FSCTL_GET_RETRIEVAL_POINTERS查询所在扇区,直接读取磁盘对应的扇区把文件down出来.
在win7 64位下,独占的话如果在普通的用户进程,直接openprocess,duplicatehandle 把句柄dump到自己进程然后用,也可以.如果是系统进程,那就直接解析ntfs文件格式,依然可以dump文件.
这些还是不在内核里面做,如果上驱动,那更简单了,枚举句柄表,找目标句柄拿来直接用.
上面提到的hook api前提是你要hook所有进程里面的api,包括以后创建的进程的,如果别人把你钩子取了也就没用了.
so...lz还是从加密的角度来考虑吧,不要想着让别人没法读取文件.
当然上面提到的ntfs文件加密也应该是不错的.
liyuwenjing
2011-10-20
打赏
举报
回复
不懂楼主想要什么,可以再具体点,例如使用场景,你这样的需求所担心的问题是什么。
若是要挡住别的程序使用api来访问你的文件,是做不到的。 因为你的程序用API来访问,别的程序就可以用同样的API来访问,你自己的程序优先级并不比别人高。
若是你想保护你的文件中的内容不被别人看懂,则可以用对文件加密的方式来进行,或是使用hook API的方式来挡住别人的访问。 例如windows 加密过的rar压缩文件,它并不能阻挡别人对rar文件的访问,但是通过加密的方式,别人就看不到里面的内容了。 同样的可以保护文件。
kgzhw
2011-10-20
打赏
举报
回复
把写在文件中得内容加密,自己通过api读出来再解密。
Elvis_chen
2011-10-20
打赏
举报
回复
如果是你写的程序放到服务器上的,建议你在程序中加入看门狗。
lihh2008
2011-10-20
打赏
举报
回复
最好的办法就是用算法加密
ynquan
2011-10-20
打赏
举报
回复
加密吧
山东蓝鸟贵薪
2011-10-19
打赏
举报
回复
[Quote=引用楼主 lght 的回复:]
自己程序里的一些文件,不想别的程序读取,这个怎么做?
是不是要写驱动?
不用权限那种方式。
[/Quote]
呵呵,你真是太坏了呀
这个呀,我也做过的
给你一个思路:
你可以在DLL中设置两个参数
这两个参数,你可以选中其中一个参数作为“判断”,传递是“指定参数”,就继续引用DLL
否则就直接退出
爱蹄子的羊头
2011-10-19
打赏
举报
回复
win7 倒是有个 bitlock 这个应该是跟操作系统有关吧
浩南_哥
2011-10-19
打赏
举报
回复
独占方式打开
这个方法应该可行
cczlp
2011-10-19
打赏
举报
回复
CreateFile以独占方式打开
funxu
2011-10-19
打赏
举报
回复
[Quote=引用 17 楼 lght 的回复:]
引用 15 楼 funxu 的回复:
LZ用80分问了一个800分的问题,确实代价太大,除非你直接操作未分区硬盘来存储数据,我以前在delphibbs上看到有牛人做过,但是确实没看懂
另外替代解决方案倒是有几个,不过各有漏洞
1 使用文件加密
2 使用独占打开,也就是你的程序运行时即打开该文件
Of_Share_Deny_Read or
Of_Share_Deny_Wri……
[/Quote]
呵呵我只是比喻了一下你问题的困难程度,我没那么高杆
另外再推荐一种方法
微软2000以上版本 ntfs硬盘数据是可以加密的,也就是右键文件夹,选择属性,高级里有一个不起眼的加密选项
勾中后你不会感觉到区别,但是实际上,这个功能很英霸
1 他是使用用户的数字证书进行加密的,想要解密除非用管理员权限和你的数字证书,所以记得自己备份
2 如果使用其他用户登录你的电脑打开加密文件会发现打开失败,而且文件无法拷贝,即便拷贝出来也无法识别
3 如果你自己把文件从ntfs分区拷贝到fat32或者其他网络路径windows会帮你解密
4 格式化机器前记得取消那个加密选项,或者备份管理员数字证书和你的数字证书,否则后果自负
lght
2011-10-19
打赏
举报
回复
[Quote=引用 15 楼 funxu 的回复:]
LZ用80分问了一个800分的问题,确实代价太大,除非你直接操作未分区硬盘来存储数据,我以前在delphibbs上看到有牛人做过,但是确实没看懂
另外替代解决方案倒是有几个,不过各有漏洞
1 使用文件加密
2 使用独占打开,也就是你的程序运行时即打开该文件
Of_Share_Deny_Read or
Of_Share_Deny_Write or
Of_Share_Excl……
[/Quote]
分不是问题,我还有800可用分,你要能解决,全都给你
iqyely
2011-10-19
打赏
举报
回复
来关注下
funxu
2011-10-19
打赏
举报
回复
LZ用80分问了一个800分的问题,确实代价太大,除非你直接操作未分区硬盘来存储数据,我以前在delphibbs上看到有牛人做过,但是确实没看懂
另外替代解决方案倒是有几个,不过各有漏洞
1 使用文件加密
2 使用独占打开,也就是你的程序运行时即打开该文件
Of_Share_Deny_Read or
Of_Share_Deny_Write or
Of_Share_Exclusive or
3 阿拉丁的加密锁提供这种功能,即对某一类文件加密,使加密锁才能打开该文件
加载更多回复(19)
mfc 用对话框打开并
读取
txt
文件
的小
程序
学习mfc的小列子,用对话框打开并
读取
txt
文件
,显示在edit box 中
android中
读取
本地
文件
demo
本demo实现了
读取
本地SD卡中的
文件
,word或者pdf,显示成一个listview中,可以打开浏览weord内容,可以进行搜索,搜索想要看的
文件
。
C# XML
文件
读取
示例
C# XML
文件
读取
示例,这是一个演示类,但包含了基本的读写功能。
rddata.m -- MIT-BIH ECG 信号的数据
读取
Matlab
程序
MIT-BIH ECG 信号的数据
读取
Matlab
程序
,能够
读取
MIT-BIH数据库 .atr、.dat、.hea三种
文件
的数据,根据这些数据计算出实际的心电信号值,并绘制出信号波形。
C# 保存和
读取
XML配置
文件
应用
程序
中,经常需要保存一些用户的设置,所以就需要把这些设置保存到一个配置
文件
中,以便随时
读取
和写入。 这个代码就是用C#写的保存和
读取
程序
运行目录下的XML配置
文件
的
程序
,配置
文件
也会自动生成,很灵活的。 共享给大家,大家可以很方便的调用,然后保存和
读取
自己的
程序
设置。
Windows SDK/API
1,183
社区成员
22,328
社区内容
发帖
与我相关
我的任务
Windows SDK/API
Delphi Windows SDK/API
复制链接
扫一扫
分享
社区描述
Delphi Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章