加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

winapi – 如何使用P / Invoke在PowerShell 1.0中调用Win32函数

发布时间:2020-12-14 01:35:57 所属栏目:Windows 来源:网络整理
导读:在许多情况下,从Power Shell脚本调用Win32函数或其他DLL会很有用.给出以下函数签名: bool MyFunction( char* buffer,int* bufferSize ) 我听说有一些东西可以让你在PowerShell CTP 2中更容易,但我很好奇这是如何在PowerShell 1.0中做得最好的.需要调用的函
在许多情况下,从Power Shell脚本调用Win32函数或其他DLL会很有用.给出以下函数签名:

bool MyFunction( char* buffer,int* bufferSize )

我听说有一些东西可以让你在PowerShell CTP 2中更容易,但我很好奇这是如何在PowerShell 1.0中做得最好的.需要调用的函数使用指针的事实可能会影响解决方案(但我真的不知道).

所以问题是编写PowerShell脚本的最佳方法是什么,可以调用上面导出的Win32函数?

请记住PowerShell 1.0.

解决方法

要从Powershell调用非托管代码,请使用Lee Holmes创建的Invoke-Win32函数.您可以找到源 here.在那里您可以看到如何调用具有指针的函数的示例,但更简单的用法是:

PS C:&; Invoke-Win32 "msvcrt.dll" ([Int32]) "puts" ([String])  "Test"
Test
0

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读