问题标签 [windows-shell]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - Windows 如何将图标与资源管理器外壳中的文件关联?
我同时安装了 InDesign CS2 和 CS3。两者都使用扩展名为 .indd 的文件。Windows 如何知道使用哪个图标?它使用正确的图标,即 CS2 文件有 cs2 图标,而 CS3 文件有 CS3 图标。
Windows 如何知道如何执行此操作?
以及如何在我的程序中提取或使用这个版本检测系统?
编辑:
感谢您对 shell-extension-icon-handler 的回答。对我来说有些新东西。但是有什么方法可以连接到 InDesign 提供的 IconHandler 并使用它来检测 InDesign 文件的版本?
windows - 将包含 *(星号)字符的字符串作为 Windows Shell 中的命令行参数传递
我正在寻找一种通过命令行将包含“*”字符的字符串传递给可执行文件的方法。
我想传递字符串 3*2。Windows 所做的是在当前目录中搜索与文件掩码“3*2”匹配的文件,并将找到的任何文件传递给 command.exe
将“3 * 2”放在双引号之间没有帮助,仍然是同样的问题。
我也尝试了 '3*2' (在单引号之间),但是整个字符串(包括单引号)都被传递了,这不是我需要的。
有没有办法将字符串 3*2 (不带任何引号)传递给命令?
c# - 我如何开始编写 Windows shell 扩展?
我正在考虑编写一个 shell 扩展,以便在单击文件时可以对其执行操作。(就像任何其他上下文菜单:))
我需要在上下文菜单中插入新菜单项并对一个或多个文件执行操作的最低要求是多少。一个比较示例是我选择了 10 个文件并发送到 Zip。
我读到需要编写一些非托管代码,但我对 c++ 非托管代码的了解几乎为零,所以我想尽可能少地获取 Windows 上下文菜单中的菜单项(文件 > 右键单击)。之后我想调用一个 C# 控制台应用程序来进行主要处理,那么是否可以从非托管代码调用 ac# 控制台应用程序?
另外,我需要什么类型的 Visual Studio 项目来创建 Windows Shell 程序?我选择哪种项目类型:
- Win32 控制台应用程序
- MFC 应用程序
- Win32 项目
- ATL 项目
- MFC DLL
- CLR 控制台应用程序
- 类库
- 生成文件项目
- MFC ActiveX 控件
- Windows 窗体控件库
干杯
registry - 在 windows shell 中右键单击上下文菜单的操作
我一直在尝试使用注册表来操纵我在 Windows 内的右键单击。我设法在外壳中添加了单行。
例如,将启动记事本。
现在,我真正想要的是上下文菜单中的子目录。
任何人都知道我可以在哪里阅读这个,或者知道如何实际做到这一点?
winapi - 在 VBA (Access) 中使用系统托盘和图标
我找到了一些教程来解释如何使用 Windows API 在系统托盘中获取自定义图标。
这些都是针对 Visual Basic 的,它们似乎不能很好地扩展到 VBA。
我正在关注这个简短的教程: http ://atchoo.org/vb/systray.php
基本上,您必须设置 hIcon 值(一个“长”变量),但它不起作用。我尝试使用 LoadPicture() 函数,它没有给我任何错误,但也无法添加新图标。
我无法提供 Me.Icon,也无法在 Form_Load 上设置它。
有人对这个有经验么?
command-line - 如何在 Windows 命令提示符发出的命令中嵌入 CR+LF?
如何在不实际发出命令的情况下将 CR + LF 嵌入到我在 Windows 命令提示符下使用的命令中?
例子:
C:\Windows\system32>myprog -u user -p pass -text "Sincerely,\nRob"
是否由 myprog 来处理换行符?我认为必须有某种方法来表示 Windows 命令行可以识别的换行符。
c# - 为了使用 Windows shell,我的项目需要参考什么?
具体来说,我想使用IShellFolder
,IExtractImage
并ShellInterop
从 PDF 和 DOC 文件中提取缩略图。
另外,我需要导入的命名空间也很方便
非常感谢您查看这个新手问题:)
伊恩
c# - IContextMenu::GetCommandString 在 Windows 资源管理器中不显示帮助文本
我正在为 Windows 资源管理器实现一个 shell 上下文菜单,并成功创建了菜单。我遇到的问题是 IContextMenu::GetCommandString 方法,当您将鼠标悬停在所选菜单项上时,该方法会在状态栏中显示帮助文本。
当我将鼠标悬停在每个项目上时,什么都没有显示,但奇怪的是我没有创建的其他一些项目,例如 - 打开或打印,它们的帮助文本变成了垃圾。
这是 IContextMenu::QueryContextMenu & IContextMenu::GetCommandString 的代码示例。
有没有人有什么建议?我已经阅读了许多关于如何构建 shell 扩展的文章,并且也一直在阅读 MSDN。
谢谢。
c# - 用于切换“显示隐藏文件、文件夹和驱动器”的 API
Windows API 中是否有一个功能可以在 Windows 资源管理器中切换“显示隐藏的文件、文件夹和驱动器”选项(工具>>文件夹选项...>>查看选项卡)。
我知道一个相关的注册表项,但更改它不会立即生效。关键是:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Advanced/Hidden
尝试从 C# 执行此操作,但问题不是特定于语言的。
windows - SHAddToRecentDocs 没有文件?
我正在玩弄一个 IRC 客户端,将它与 Windows 7 应用栏集成。
要获得“频繁”或“最近”项目列表,必须调用 SHAddToRecentDocs API。我想将最近访问的 IRC 频道添加到 IRC 应用程序的 Windows 7 跳转列表。现在,我的问题是,文件系统中不存在 IRC 通道。SHAddToRecentDocs 似乎坚持要获取某种文件系统对象。
我试图通过创建一个指向我的应用程序的 IShellItem 来解决它,并给它一个命令行来启动通道。然而,shell 正在反抗,到目前为止,我还没有明显地将我的任何“最近的文档”尝试添加到 Jumplist 中。
如果不创建某种完全不需要的文件系统对象,就没有办法做到这一点吗?