问题描述
在WIndowsMobile里,C#中有办法取得某个注册表键值改变后发生的事件吗????????????????????
解决方案
解决方案二:
我用dllimport,但是publicstaticIntPtrGetRegistryHandle(RegistryKeyregistryKey){Typetype=registryKey.GetType();FieldInfofieldInfo=type.GetField("hkey",BindingFlags.Instance|BindingFlags.NonPublic);return(IntPtr)fieldInfo.GetValue(registryKey);}这个方法的最后一句话“return(IntPtr)fieldInfo.GetValue(registryKey);”报错,说InvalidCast。我看了一下返回值,是Microsoft.Win32.SafeHandles.SafeFileHandle,不知道为什么显示转换失败了
解决方案三:
用hook钩住writefile函数,再另外编写事件处理函数,判断是不是在操作注册表,如果是则采取相应操作,如果不是则忽略掉,让后面的函数处理这个消息。楼主可以在网上搜索一下,hook相关的资料。很多杀毒软件弹出修改注册表提示的技术就是用的HOOK技术。
解决方案四:
hook能得到writefile的参数吗。。。。。。。。。。。。。。。。。。。
解决方案五:
我没有用过,帮顶了
解决方案六:
谁知道呢。。。。。。。。。。。
解决方案七:
帮顶了
时间: 2024-09-17 18:09:45