是这样的 一个程序 打开之后从 Windows “我的文档”文件夹里面读取配置,我要让它从我自定义的文件夹读取配置该怎么办?
我的想法就是让程序认为我自定义的文件夹就是“我的文档”,有没有什么办法啊?我暂时想到的可能可以 hook 系统函数, 但是不知道具体是哪个函数
我的想法就是让程序认为我自定义的文件夹就是“我的文档”,有没有什么办法啊?我暂时想到的可能可以 hook 系统函数, 但是不知道具体是哪个函数
1
Kisesy Feb 15, 2017 SHGetFolderLocation
SHGetSpecialFolderLocation SHGetKnownFolderPath SHGetSpecialFolderPath SHGetFolderPath 这类 api 挺多的...这几个都行吧,我也忘了,慢慢测吧.... |
2
ixbozai OP 感谢啊 我查了一下程序 import 的 function ,应该用的是 SHGetFolderPath
|
3
zk8802 Feb 16, 2017 via iPhone
一个或许更简单的方法,供楼主参考:在我的文档下面创建一个到自定义文件夹的符号链接。 Windows 上可以用 mklink 来创建。
|
4
yangff Feb 16, 2017 via Android
也有可能是环境变量吧
|
5
XiaoFaye Feb 16, 2017
“我的文档”文件夹的位置是可以更改的呀,这是最简单的方法, Hook 也可以,但是太麻烦了。
|
6
crab Feb 16, 2017
最简单的是把我的文档删除,把你自定义的文件夹通过 mklink /D "我的文档" "你文件夹“
|
7
nifury Feb 16, 2017
hook CreateFile 不是更方便么,连文件名都能改了
|
8
hihihihihi Feb 16, 2017
一楼的回复不正确, 因为你在这些函数里面是不能知道判断是否是在加载你的文件。
正确是 Hook CreateFile, 里面可以读取完整的文件路径,判断是否你要处理的文件,然后替换自己的文件。 |
10
ixbozai OP |