|
发表于 2023-10-6 10:20:46
|
显示全部楼层
您可以使用MASM32 SDK v10r中的GetFolderPath函数来选择文件夹。以下是一个简单的示例代码,演示如何使用该函数:
- .386
- .model flat,stdcall
- option casemap:none
- include \masm32\include\windows.inc
- include \masm32\include\user32.inc
- include \masm32\include\shell32.inc
- include \masm32\include\kernel32.inc
- includelib \masm32\lib\user32.lib
- includelib \masm32\lib\shell32.lib
- includelib \masm32\lib\kernel32.lib
- .data
- title db "选择文件夹",0
- buffer db MAX_PATH dup(0)
- .code
- start:
- invoke GetFolderPath, NULL, CSIDL_DESKTOPDIRECTORY, NULL, SHGFP_TYPE_CURRENT, buffer
- invoke MessageBox, NULL, addr buffer, addr title, MB_OK
- invoke ExitProcess, NULL
- end start
复制代码
在这个示例中,我们使用GetFolderPath函数来获取桌面文件夹的路径,并将其存储在buffer变量中。然后,我们使用MessageBox函数来显示该路径,最后使用ExitProcess函数退出程序。
请注意,GetFolderPath函数需要四个参数。第一个参数是窗口句柄,如果您不需要使用窗口,则可以将其设置为NULL。第二个参数是要获取的文件夹的常量,例如CSIDL_DESKTOPDIRECTORY表示桌面文件夹。第三个参数是一个让您指定文件夹路径的字符串,如果您不需要指定路径,则可以将其设置为NULL。第四个参数是一个标志,用于指定要返回的路径类型。在这个示例中,我们使用SHGFP_TYPE_CURRENT标志来获取当前用户的路径。
希望这可以帮助到您! |
|