LabVIEWwilliam hill官网
直播中

comeforyou

9年用户 118经验值
擅长:可编程逻辑
私信 关注
[问答]

Labview如何调用Shell32的函数SHFileOperation实现将文件移到回收站

如题,如何配置调用库函数节点实现,请大神们指导一下

已退回20积分

回帖(2)

lique

2024-1-11 09:52:13
要调用Shell32的函数SHFileOperation,在LabVIEW中可以使用调用库函数节点来实现。
以下是具体的步骤:

1. 首先,你需要在LabVIEW中创建一个新的VI。

2. 在新的VI中,找到“函数面板”(Front Panel),然后从工具栏中选择“选择->函数面板”(Select->Front Panel)。

3. 在函数面板中,右键点击空白区域,选择“插入->库函数”(Insert->Call Library Function)。

4. 在库函数的设置面板中,点击“浏览”按钮,然后找到Shell32.dll文件。一般情况下,该文件位于Windows系统的system32文件夹下。

5. 找到并选中Shell32.dll文件后,点击“确定”按钮。

6. 在库函数设置面板的“函数名”(Function Name)栏目中,输入“SHFileOperationA”(注意这是ANSI版本的函数名,如果你的系统是Unicode版本的Shell32.dll,可以使用“SHFileOperationW”)。

7. 在输入参数列表中,点击“添加”按钮,添加一个新的输入参数。

8. 在新的输入参数中,设置参数的类型为“指针类型”(Pointer)。这是因为SHFileOperation函数的第一个参数是一个指向SHFILEOPSTRUCT结构的指针。

9. 继续添加其他的输入参数,根据需要,将参数的数据类型和名称设置成与SHFILEOPSTRUCT结构的成员相对应。

10. 添加一个输出参数,将其数据类型设置为整数(Int32)。这是因为SHFileOperation函数的返回值是一个整数,用于表示操作的结果。

11. 配置完参数后,点击“确定”按钮关闭库函数设置面板。

12. 在LabVIEW中,右键点击该库函数节点,选择“添加->常规->建立空的结构”(Add->General->Build Empty Cluster)。

13. 在新建的空结构中,按照SHFILEOPSTRUCT结构的成员顺序和数据类型,添加相应的控件。

14. 将相应的控件与库函数节点的输入和输出参数连接起来,以实现数据的传递。

15. 将文件路径等信息传入到SHFILEOPSTRUCT结构中的相应成员中。

16. 最后,运行该VI,即可调用Shell32的函数SHFileOperation,实现将文件移到回收站的功能。

请注意,这只是一个大致的步骤指导,具体操作可能会因实际情况而有所不同。你需要根据你的需求和系统环境进行适当的调整。此外,调用Shell32函数可能需要管理员权限,因此请确保你有足够的权限来执行此操作。
举报

comeforyou

2024-1-11 10:37:58

win10,labview2018,已经用管理员权限运行,但错误码一直是124,重新弄了一下要删除的文件路径,一方面不知道怎么添加\0\0 NULL字符串,折腾了,错误码就变成2,依旧实现不了相应功能,具体能否给出有效实例??



举报

更多回帖

发帖
×
20
完善资料,
赚取积分