佚名通过本文主要向大家介绍了win7打印机已重定向,win7域名重定向,win7桌面重定向,域名重定向怎么解决,此网页包含重定向循环等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 关于win7的文件虚拟重定向的目录
描述:
请问大神们这个目录怎么获取?
咋一看似乎是:浏览器的临时目录 + Virtualized + 我的文档
莫非俺要自己组合。。。。。
解决方案1:
描述:
请教win7下以非管理权限打开IE的会创建一个虚拟镜像目录Virtualized有没有什么函数可以直接获取到:
如:C:\Users\XXX\AppData\Local\Microsoft\Windows\Temporary Internet Files\Virtualized\
我在ocx获取“我的文档”目录,并创建一个文件,发现他是创建到一个映射目录的,查了下资料说是win7的下IE保护模式的文件虚拟重定向机制。对于IE保护模式来说,会创建一个目录一致的虚拟镜像版本。
代码如下:
// 1.先获取到“我的文档”目录
// 备注:获取到的目录为:“C:\Users\XXX\Documents”
HRESULT hr = SHGetSpecialFolderLocation(NULL, CSIDL_PERSONAL, &pidl);
if (S_OK == hr)
{
if (SHGetPathFromIDList(pidl, csPath))
{
}
}
// 2.在我的文档中创建文件
// 备注:发现文件被创建到映射目录:
// “C:\Users\XXX\AppData\Local\Microsoft\Windows\Temporary Internet Files\Virtualized\
// C\Users\XXX\Documents”目录下
strcat_s(csPath, MAX_PATH, _T("\\InetDos.bat"));
ofstream outfile(csPath);
outfile.close();
// 3.打开这个文件
// 备注:这样的话,由于我打开时传入的文件目录为csPath,所以他是去找“C:\Users\XXX\Documents”目录,
// 故查找不到,请教这种情况该怎么办,我如何获取那个Virtualized目录
SHELLEXECUTEINFO sei = {sizeof(SHELLEXECUTEINFO)};
sei.lpVerb = TEXT("runas");
sei.lpFile = TEXT(csPath); // 文件所在路径
sei.nShow = SW_SHOWNORMAL;
if (!ShellExecuteEx(&sei))
{
}
请问大神们这个目录怎么获取?
咋一看似乎是:浏览器的临时目录 + Virtualized + 我的文档
莫非俺要自己组合。。。。。
解决方案1:
对于IE保护模式编程,不应该使用SHGetSpecialFolderLocation(),而是应该用IEGetWriteableFolderPath()
http://msdn.microsoft.com/en-us/library/ms537314.aspx
建议你看看这个:http://tech.it168.com/d/2007-12-05/200712041740771.shtml