Articles of Windows资源pipe理器

从Web浏览器打开文件系统文件夹/目录

我将我的桌面应用程序分发到闪存驱动器上数以千计的Windows,Mac和Linux上的用户。 我有一个HTML起始页面,其中包含文档链接,安装指南,发行说明等,这些都在闪存驱动器上。 我希望用户直接从浏览器安装,但这正是反病毒程序试图防止的(正确的)。 而不是尝试启动安装程序,只需find安装程序并让用户自行完成最后一步即可。 是否有可能导致主机上的文件系统pipe理器(Explorer,Finder等)打开包含该文件的文件夹并将其突出显示? 我认为这将需要JavaScript,它可能会有所不同的Windows,Mac和Linux。 另外,在大多数浏览器(IE,FF,Chrome,Safari,Opera)中都可以工作。 这是否与解决费马大定理相似的难度? 谢谢

如何使用自定义面板扩展Windows资源pipe理器

我想扩展Windows资源pipe理器的自定义底部或右侧面板(如下图)。 从我一直在阅读,我认为我应该开始实施IShellView。 它是否正确? 任何人都可以给我几个指针如何在.NET中做到这一点? 谢谢

Windows资源pipe理器右击文件和文件夹的上下文菜单

我的问题与此类似,但是这并没有给我所需要的所有信息,或者我不太了解。 我希望在文件上下文菜单中有选项来通知我的应用程序。 我添加了键: HKLM/SOFTWARE/Classes/*/shell/MyApp/command::"C:\\path\\test.exe" "%1" HKLM/SOFTWARE/Classes/Folder/shell/MyApp/command::"C:\\path\\test.exe" "%1" testing代码: #include <iostream> int main(int argc, char *argv[]) { for (int i = 1; i < argc; ++i) std::cout << argv[i] << "\r\n"; system("pause"); return 0; } 这工作正常,但是…如果我标记几个文件/文件夹,并右键单击并select我添加的选项,许多testing应用程序启动。 这不是我想要的行为,我希望所有的path将被传递到我的应用程序的单个实例作为argv的列表,有没有人知道如何做到这一点? BTW。 我用C++编码,但我认为这不是问题,因为它是Windowsshell的业务。 谢谢。

如何刷新Windows资源pipe理器

networking卷的名称可以更改。 我改名为Spinal Disk 为了更改networking名称,我这样做 在registry中写入新名称。 使用像DefineDosDeviceW这样的函数连接我的networking卷。 在这个时机,Windows资源pipe理器读取我的猜测registry。 SHChangeNotify(SHCNE_DRIVEADD,SHCNF_PATH,root,NULL); // 为了确定。 SendMessageTimeout(HWND_BROADCAST,WM_DEVICECHANGE,message,(LPARAM)(&dbv), – SMTO_ABORTIFHUNG,200,&dwResult); //再次确定! 它的工作,但有时不工作,即使我使用SHChangeNotify和WM_DEVICECHANGE确定。 有时,新的名称不适用于Windows资源pipe理器。 但是,如果我终止资源pipe理器并重新执行,名称应用。 我find一个界面,Windows资源pipe理器刷新(是否正确的语法?对不起,我不能很好地expression这个句子。) 有没有适当的function? 资源pipe理器应重新读取registry并刷新。

如何判断操作系统在Windows XP之后是否没有默认文件扩展名关联?

回到Windows XP的日子,可以使用下面的代码来判断扩展是否存在文件关联: TCHAR buffPath[MAX_PATH] = {0}; DWORD dwszBuffPath = MAX_PATH; HRESULT hR = ::AssocQueryString( ASSOCF_NOFIXUPS | ASSOCF_VERIFY, ASSOCSTR_EXECUTABLE, _T(".weirdassextension"), NULL, buffPath, &dwszBuffPath); if(hR != S_OK && hR != E_POINTER) { //Association does not exist } 但是从Windows 8开始, AssocQueryString API会返回S_OK并且如果没有find任何东西, buffPath设置为类似于C:\WINDOWS\system32\OpenWith.exe东西。 现在有更好的方法来确定文件扩展名没有壳牌协会? PS。 我不想只比较文件名到OpenWith.exe 。 如果有一个合法的可执行文件被称为…那么一定有更好的办法。

如何重新使用现有/已打开的Windows资源pipe理器窗口来启动资源pipe理器

我有一个经常使用启动explorer.exe的应用程序。 我想重新使用现有/已经打开的资源pipe理器窗口,而不是每次启动过程时都创build一个新窗口。 这是我的代码看起来像: System.Diagnostics.ProcessStartInfo info = new System.Diagnostics.ProcessStartInfo { UseShellExecute = true, FileName = "Explorer.exe", Arguments = myDirectoryPath }; System.Diagnostics.Process.Start(info); 我没有看到一个命令行开关来做到这一点。 我尝试的一种方法是简单地杀死任何一个现有的浏览器进程,并将其replace为新的进程: var processes = System.Diagnostics.Process.GetProcesses(Environment.MachineName);int kills = 0; for (int i = 0; i < processes.Length; i++) { System.Diagnostics.Process p = processes[i]; if (p.ProcessName == "explorer" && kills < 1) ++kills p.Kill(); } 但是这会造成不必要的影响,不仅仅是杀死一个进程,而是彻底杀死资源pipe理器,甚至是任务栏也会消失。 […]

如何从某个驱动器打开文件夹closuresWindows资源pipe理器窗口

我在写一个小应用程序,允许用户popup(或安全删除)USB驱动器。 除了在Windows资源pipe理器中打开USB驱动器(或多个文件夹)上的文件夹时,我的应用程序工作正常。 在这种情况下popupfunction失败,因为驱动器似乎被locking。 所以我很好奇,因为用户通过我的应用程序发出一个命令来popupUSB驱动器,有没有办法让ExplorerclosuresUSB驱动器打开的窗口? PS。 请注意,我不想closures属于Windows资源pipe理器的所有进程,但仅closures在特定驱动器上打开文件夹的进程。

用BHO扩展Windows资源pipe理器

我正在试图扩展在C ++中的定制面板whindows资源pipe理器(不IE),应该看起来像这样: 这里有一个类似的问题,我发现(在C#中): 类似的问题 问题是C#已经得到了答案。 但是我自己发现答案有点太简单了,我只能这样做: 我应该实现一个BHO对象 BHO对象应该实现IObjectWithSite和IDockingWindow 在SetSite方法中,调用QueryInterface获取服务提供者的指针,然后调用QueryService获取Docking窗口的指针,最后调用AddToolBar添加我的自定义窗口。 这是我迷路的地方 我的问题是: 我应该在什么时候创build自定义窗口? 在对象的初始化过程中? 我想我应该得到一个父窗口的句柄(在我的情况下,我认为它应该是Windows资源pipe理器的句柄),然后才能创build自己的窗口,这将是它的孩子,我在哪里可以得到这个句柄? 与对接窗口框架的指针? 我应该如何注册我的DLL? 我读了预览处理程序的一些示例代码,我们必须正确注册dll才能被系统调用吗? 我试图重现类似的问题说了几天,但现在没有运气。 我真的是新来的BHO和所有这些东西,请帮助我出于此,谢谢。

以编程方式在Windows 8上排列文件夹

Windows 8似乎不会在个别文件夹上保留sorting顺序。 我猜测当explorer.exe终止(如重新启动时)这些偏好被丢弃? 打我,我所知道的是一段时间后(如几天),这些偏好完全丧失。 有没有办法在Windows资源pipe理器中以编程方式复制文件夹的sorting(select上下文菜单中的“sorting”选项之一)? 这样,说我有一个文件夹在Windows用户界面中打开。 说当前文件夹设置为按“名称”进行sorting,运行程序后,将按大小对其进行sorting,我再次检查Windows资源pipe理器中的sorting顺序,现在它说“大小”? 我有一个特定的大文件夹结构,我希望它的所有和它的子文件夹按大小永久sorting。 所以我想在查看它们之前运行这个程序,而不必单独手动重新sorting它们。 谢谢!

如何将上下文菜单添加到Windows资源pipe理器中以用于Java应用程序?

如何将一个子菜单项添加到Windows资源pipe理器上下文菜单(如7-Zip所做的)为Java应用程序?