NSIS使用SHFileOperation函数移动文件夹
SHFileOperation是一种外壳函数,用它可以实现各种文件操作,如文件的拷贝、删除、移动等,该函数使用起来非常简单,它只有一个指向SHFILEOPSTRUCT结构的参数。使用SHFileOperation()函数时只要填写该专用结构--SHFILEOPSTRUCT,告诉Windows执行什么样的操作,以及其它重要信息就行了。SHFileOperation()的特别之处在于它是一个高级外壳函数,不同于低级文件处理。当调用SHFileOperation操作文件时,相应的外壳拷贝处理器(如果有的话)被调用。
#NSIS使用SHFileOperation函数移动文件夹
XPStyle on
#D:\abc被移动文件夹
#c:\def目标文件夹
OutFile "NSIStest.exe"
Name "test"
Section "test"
System::Call "*(i $HWNDPARENT, i 0x0001, t 'D:\abc',t 'c:\def', i 0x0008|0x0004|0x0200|0x0010|0x0400, i0,i0,i0,&t${NSIS_MAX_STRLEN} r0,&t1 0)i .r0"
System::Call "shell32::SHFileOperation(i r0)i .r1"
System::Free $0
SectionEnd
本文来自博客园,作者:水晶石,转载请注明原文链接:https://www.cnblogs.com/NSIS/p/16581134.html