从 PowerShell 调用 Windows Shell 函数?

2024-02-22

所以我正在遵循这个教程:

https://msdn.microsoft.com/en-us/library/windows/desktop/hh127427(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/hh127427(v=vs.85).aspx

当我偶然发现“调用 SHChangeNotify 函数”这句话时。我该怎么做呢? powershell 无法识别它。我是否必须在 C++ 中导入一些库并从 C++ 程序中调用它?我在 Windows 10 上。


我使用以下 C# 代码从 powershell 调用桌面刷新:

  $code = @'
  [System.Runtime.InteropServices.DllImport("Shell32.dll")] 
  private static extern int SHChangeNotify(int eventId, int flags, IntPtr item1, IntPtr item2);

  public static void Refresh()  {
      SHChangeNotify(0x8000000, 0x1000, IntPtr.Zero, IntPtr.Zero);    
  }
'@

Add-Type -MemberDefinition $code -Namespace WinAPI -Name Explorer 
[WinAPI.Explorer]::Refresh()

希望这对仍在寻找答案的人有所帮助,因为 SimonS 提供的链接似乎不再有效。

附注这就是我的想法的来源IDERA - 刷新图标缓存 http://community.idera.com/powershell/powertips/b/tips/posts/refreshing-icon-cache

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 PowerShell 调用 Windows Shell 函数? 的相关文章

随机推荐

  • 不使用密钥库的客户端证书

    我试图弄清楚是否有任何方法可以让 NET 客户端使用客户端证书而不以任何方式涉及 Windows 密钥库 我有一个这样的代码片段 test1 Service s new test1 Service X509Certificate c X50
  • JFreeChart日期轴格式化问题

    我有一个时间序列图表 我的 X 轴是日期 Y 轴只是数字 我正在尝试格式化 x 轴上的日期 但是我不断收到异常 我的代码如下 TimeSeries trueSeries new TimeSeries True Data TimeSeries
  • firebase 正在从数据库中检索已删除的数据

    我正在使用 firebase 实时数据库 它对于我的应用程序的某些部分运行良好 我正在阅读 youtube 上的一个教程 该教程用用户填充 collectionView 它使用 NSDictionary 获取照片 URL 和用户名 并将它们
  • Spring Boot + Angular 文件上传无法上传同一文件两次

    chrome 网络下出错 timeStamp status 400 error Bad Request message Required request part file is not present path url as hosted
  • malloc 和 realloc 之间的区别?

    假设我有两个用于创建 10 个元素的整数数组的代码示例 int pi int 0 realloc pi 10 另一种是正常写法 即 int pi pi malloc 10 sizeof int 现在 我的问题是 第一种赋值是合法的 但没有被
  • 点间最短距离算法

    给定平面上的一组点 找到由这些点中的任意两个点形成的最短线段 我怎样才能做到这一点 最简单的方法显然是计算每个距离 但我需要另一种算法来比较 http en wikipedia org wiki Closest pair of points
  • Nginx 身份验证(本地网络除外)

    来自 apache2 的一个功能我无法实现 仅要求对外部访问进行身份验证 但对本地网络上的用户进行免费访问 有什么想法可以轻松处理这种情况吗 任何帮助 将不胜感激 我已经删除了之前的答案 并想建议我在下面提供的解决方案 我做了一些搜索 找到
  • .net标准类库-不支持分布式事务错误

    我在 net标准类库项目中开发了一个日志服务 它可以完美工作 无需系统 事务 事务范围类 当我向进程添加事务时 记录器插入方法引发异常 该平台不支持分布式事务 当我使用 System Transaction 将代码添加到核心控制台应用程序时
  • 我应该如何在KAA中实现Rest API

    我使用 Kaa 沙箱发送通知 我必须在窗口终端上运行这些代码 curl v S u devuser devuser123 F notification applicationId 3 schemaId 4 topicId 1 type US
  • Python 全局变量的疯狂

    您有三个文件 main py second py 和 common py 通用 py usr bin python GLOBAL ONE Frank main py usr bin python from common import fro
  • Blazor - 在运行时更改 UI CultureInfo

    我需要根据每种文化的资源文件在运行时更改文化 Expected 用户单击从当前语言切换到另一种语言的按钮 页面中的文本根据每种文化的资源文件进行刷新 Actual 用户单击从当前语言切换到另一种语言的按钮 页面中的文本根据每种文化的资源文件
  • Visual Studio 2015 中没有针对 AngularJS TypeScript 的 IntelliSense

    我正在 Visual Studio 2015 的 TypeScript 中使用 ASP NET 5 和 AngularJS 构建一个应用程序 但是 即使在通过 NuGet 安装了 AngularJS Core 和 DefinelyTyped
  • React库如何直接需要它的源库?

    我正在查看 Facebook 的 React 源代码 发现在整个项目源代码中 他们没有指定加载自己模块的相对路径 例如 而不是做var foo require bar foobar 图书馆使用var foo require foobar 就
  • 批量插入到自引用表中

    这个问题是一部分一个更复杂的问题 https stackoverflow com questions 55047552 how to lock and unlock a sql server table noredirect 1 comme
  • 重命名 MySQL 中的外键列

    我们正在尝试重命名 MySQL 5 1 31 InnoDB 中作为另一个表的外键的列 起初 我们尝试使用 Django South 但遇到了一个已知问题 http south aeracode org ticket 243 http sou
  • 适用于运行 iOS 的 Cocoa iPhone 和 iPad 的 WebDAV 服务器

    我正在寻找适用于 iPhone 和 iPad 的 WebDAV 服务器 最好的开源服务器 以便集成到我的应用程序中 应该可以列出 下载和上传文件 我想将服务器根目录指向我的应用程序的 文档 文件夹 因此如果可能 这些方法应直接映射到文件系统
  • 使用 Gitolite 自动部署 PHP 脚本

    我想在本地测试服务器上设置自动部署脚本 我在 ubuntu 桌面 11 04 上使用 gitolite 我使用 apt get install gitolite 安装 gitolite 因此它创建用户 gitolite 和组 gitolit
  • 如何在 C (MacOS) 中获取进程虚拟内存映射的信息

    我想要获取有关 C MacOS 中当前进程的进程虚拟内存布局 堆栈 libc 堆和代码 的信息 我读到在 Linux 中你可以通过查看来做到这一点 proc
  • Android资源链接失败,错误:找不到属性defaultNavHost(又名...),未找到属性navGraph(又名...)

    我尝试在我的应用程序中实现导航功能 当我尝试构建应用程序时 输出显示 Android resource linking failed home mateusz AndroidStudioProjects TakeAndTie app src
  • 从 PowerShell 调用 Windows Shell 函数?

    所以我正在遵循这个教程 https msdn microsoft com en us library windows desktop hh127427 v vs 85 aspx https msdn microsoft com en us