Articles of contextmenu

如何避免上下文菜单处理程序的应用程序阻止浏览器?

我已经创build了一个应用程序,可以通过从IContextMenu和IShellExtInit派生通过上下文菜单来调用。 我注册DLL,当我右键单击应用程序被调用。 但是,问题是直到我的应用程序结束,我不能访问该资源pipe理器中的任何其他文件。 资源pipe理器被有效阻止,直到我的申请结束 WinZip,WinRar等其他应用程序中也没有反映相同的行为。 如何避免我的应用程序阻止资源pipe理器? 任何指向这个方向的指针都会很有帮助。

在Java中,如何从Windows的上下文菜单中读取文件名

我在这里是新的,在Java程序devise我试图编写程序,导航上下文菜单命令,并阅读文件名和他的完整path 例如,当我点击(右键)一些文件,并获取上下文菜单,我select任何选项(复制,或发送到,或打开)我希望我的程序将读取文件名和他的完整path。 现在我只是有一个文本框的forms,没有代码呢。 我想知道我应该如何开始,或者如果有人有想法或代码来帮助我 非常感谢!

如何通过windows右键单击上下文菜单将多个parameter passing给python程序

我有一个Python程序,它被转换成一个Windows EXE使用py2exe。 我也将它添加到Windows上下文菜单中。 基本上,当右键单击任何文件的另一个选项出现与链接到我的EXE。 问题是,当我select多个文件,我的程序的多个实例启动。 有没有办法将多个parameter passing给exe文件? 谢谢,Sreedhar。

你如何使Windows中的上下文菜单子菜单?

我一直在编写实用程序,并通过*的Shell键上的Regedit将它们映射到上下文菜单,但我无法弄清楚如何使子菜单像一些更受欢迎的实用程序一样。 例如,如果我有三个脚本来移动和重命名文件到三个不同的文件夹,现在我有三个不同的上下文菜单项。 我宁愿有一个名为“移动和重命名…”,扩大到这三个。

构buildWindows资源pipe理器扩展

我正在寻找build立一个应用程序,将依赖添加菜单扩展到一个右键单击文件或文件夹时出现的菜单。 我听说你可以用Python构build它,下面是我目前正在查看的资源: http://docs.python.org/extending/extending.html http://docs.python.org/extending/windows.html#building-on-windows 但是我不太确定我是否正在寻找这种东西的正确方向。 我应该寻找什么东西,并可以在Python中构build这种types的东西,还是需要学习C#/ .NET? 谢谢! 编辑:看起来像这些东西被称为上下文菜单,并涉及到registry中添加条目,以关联应用程序与某些文件types。 在这种情况下,我是否应该让我的应用程序在后台监听来自条目的操作? 另外,如果你知道如何在OS X中做同样的事情,或者有一些漂亮的跨平台的东西,这将是非常漂亮的!

在通过Windows上下文菜单执行时,文件path中的空格会导致出现多个应用程序实例

我创build了一个WPF表单应用程序,可以通过Windows上下文菜单调用。 该应用程序工程很好,当我debugging它。 当我部署它并右键单击一个文件时,如果它在path中有任何空格,它将只读取到该空间的path,但为path中的每个空间打开一个窗口。 这是非常烦人的,我不知道如何解决这个问题。 我已经尝试使用Environment.GetCommandLineArgs()在我的方法以及只使用MainWindow(string文件path); 两种方法都会造成同样的问题。 这是一个ClickOnce应用程序,所以不知道这是否与它有任何关系,但是我确实捕获了正在执行的程序集的目录位置,当它第一次安装并使其在HKEY_CLASSES_ROOT * \ shell中更新registry时[ APP} \命令键。 默认值是具有ClickOnce应用程序可执行文件位置的扩展string,并添加了“%1”,以便可以将文件path作为parameter passing给它。 void checkRegistry() { RegistryKey baseKey=Registry.ClassesRoot.CreateSubKey("*\\shell", RegistryKeyPermissionCheck.ReadWriteSubTree); //add the key RegistryKey menuKey=baseKey.CreateSubKey("GetCRC"); menuKey.SetValue("", "Get CRC"); //add the command key RegistryKey commandKey = menuKey.CreateSubKey("command"); string appfilePath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); commandKey.SetValue("",String.Format("{0}\\GetCRC2.exe %1",appfilePath), RegistryValueKind.ExpandString); commandKey.Close(); menuKey.Close(); baseKey.Close(); } public MainWindow(string filePath) { InitializeComponent(); //check registry and […]

在Windows中,如何将上下文菜单关联到文件名(而不是扩展名)?

我希望能够右键单击一个文件(例如“setup.py”),然后使用参数对其执行操作。 (在我的情况下:在该位置执行命令“python setup.py install”)。 我不想关联所有* .py文件,它只是凌乱的上下文菜单。 这一切可能吗?

添加一个shell上下文菜单项,以便我可以通过右键单击将文件夹添加到path

通常在工作中,我必须安装新的框架等,这些框架不会自动添加到path中,我必须经历将可执行文件添加到path的繁琐过程。 因此,我决定添加一个shell上下文菜单项,以便我可以添加任何给定的文件夹,只需右键单击并select“添加到path”。 我经历了创build上下文菜单项的正常例程,并使用以下命令将该文件夹添加到path: setx PATH "%PATH%;%1%" 这似乎并没有评估PATHvariables,而是用这样的东西replace我的PATH: PATH;C:\Program Files (x86)\Android\android-sdk\platform-tools 有没有办法使上下文菜单项评估%PATH%,而不是只是忽略百分号? 我已阅读有关使用\,^和只是增加一个额外的百分比,但这些方法似乎没有任何工作。 万一它很重要,这是在Windows 7企业计算机上

Windows bashpipe理员的上下文菜单

我想能够打开窗户浏览器与上下文菜单的Windows bashterminal。 就像你可以在Ubuntu中做的一样。 我已经使用以下命令在HKEY_CLASSES_ROOT/Directory/Background/shell创build了一个子项: powershell -c start -verb runas cmd '/c start /D "%V" bash.exe' 这适用于在大多数目录中以admin身份打开bash,但如果目录中有空格,则会崩溃。 这似乎是bash只接受部分string,然后找不到要导航到的目录。 我已经尝试过在%V周围的转义引号,例如"""%V"""但这没有帮助。 有任何想法吗?

TrackPopupMenu会“伤害”我的HMENU吗?

部屋。 最后,在大量的摆弄之后,我得到了一个.rc加载的上下文菜单,用于我的托盘通知图标的工作。 (基于对话框的Windows API应用程序,没有MFC)。 但是,在各种示例和用法演示中,我总是看到在调用TrackPopupMenu() 之前/之后正在创buildHMENU ( CreateMenu() , LoadMenu() )并销毁( DestroyMenu() TrackPopupMenu() 。 通知图标的popup式菜单就像MSDN上没有logging的一样(至less我没有发现关于它们的单个段落)。 直观上,我把LoadMenu()放在WM_INITDIALOG的消息处理中,并存储HMENU ,所以我不必每次创build和销毁菜单。 正如我所说,我没有发现任何类似的做法,我觉得有点耐人寻味。 使用菜单或应用程序时,我的HMENU是否可能会“损坏”? 还是像我一样去做(好的,边际的)额外的performance是安全的? INT_PTR CALLBACK MainDlg(HWND …, UINT, WPARAM, LPARAM) { switch (message) { case WM_INITDIALOG: … HMENU hMenuBar = LoadMenu(hInst, MAKEINTRESOURCE(IDR_NOTIFYMENU)); hNotifyMenu = GetSubMenu(hMenuBar, 0); … break; … case WM_NOTIFYICON: switch (lParam) { case WM_RBUTTONUP: // there […]