我正在ATL(没有MFC)编写Windows资源管理器预览处理程序。它的工作正常,除了以下我认为与权限不足有关的问题:
GetLastError()但我不确定是什么。对DoModal()的调用是从上下文菜单处理程序。
调用时ShellExecute会显示"谷歌浏览器没有响应,立即重新启动?"对话。单击是将关闭Chrome,但永远不会启动它,单击否则不执行任何操作。对于ShellExecuteEx也是如此。
ShellExecute(NULL, _T("open"), _T("http://www.google.com"), NULL, NULL, SW_SHOWNORMAL)
似乎问题与预览在PREVHOST.EXE中运行的处理程序的权限不足有关。文件日志在我的缩略图处理程序中写得很好,但在此预览处理程序中没有。在PREVHOST.EXE下运行时可以做什么限制?任何想法?
先谢谢。
答案 0 :(得分:1)
万一其他人被困在这个问题上。 默认情况下,prevhost.exe正在Low Integrity mode
中运行Here您可以查看限制列表
简而言之,在您可以写作的地方,您的数量非常有限:
HKEY_CURRENT_USER\Software\AppDataLow
%USER PROFILE%\AppData\LocalLow
IPC的可用方式也有限制。