- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
扩展脚本实现你需要的遍历函数功能
扩展脚本实现你需要的遍历函数功能
lr中没有提供文件遍历函数,但是可以扩展脚本实现你需要的函数功能win32中提供了findfilefirst findfilenext等api函数,你可以加载api函数实现你要的功能lr中先用lr_load_dll加载包含该api函数的dll,然后直接使用就可以了,下边是lr中提供的一个例子:lr_load_dll(user32.dll); MessageBoxA(NULL, This is the message body, message_caption, 0); 下边是封装后的函数代码例子,没有经过调试,你把他用dll封装好,然后再lr中调用就可以了!void FindFileInDir(char* rootDir, char* strRet){? ? char fname[MAC_FILENAMELENOPATH];? ? ZeroMemory(fname, MAC_FILENAMELENOPATH);? ? WIN32_FIND_DATA fd;? ? ZeroMemory(fd, sizeof(WIN32_FIND_DATA));? ? HANDLE hSearch;? ? char filePathName[256];? ? char tmpPath[256];? ? ZeroMemory(filePathName, 256);? ? ZeroMemory(tmpPath, 256);? ? strcpy(filePathName, rootDir);? ? BOOL bSearchFinished = FALSE;? ? if( filePathName[strlen(filePathName) -1] != \\ )? ? {? ?? ? strcat(filePathName, \\);? ? }? ? strcat(filePathName, *);? ? hSearch = FindFirstFile(filePathName, fd);? ? //Is directory? ? if( (fd.dwFileAttributes FILE_ATTRIBUTE_DIRECTORY)? ?? ? strcmp(fd.cFileName, .) strcmp(fd.cFileName, ..) )? ?? ? ? ? {? ?? ? strcpy(tmpPath, rootDir);? ?? ? strcat(tmpPath, fd.cFileName);? ?? ? FindFileInDir(tmpPath, strRet);? ? }? ? ? ? else? ?if( strcmp(fd.cFileName, .) strcmp(fd.cFileName, ..) )? ?? ?? ?? ???{? ?? ?? ?? ?? ?? ?sprintf(fname, %-50.50s, fd.cFileName);? ?? ?? ?? ?? ?? ?strcat(strRet + strRet[strlen(strRet)] , fname);? ?? ?? ?? ???}? ? while( !bSearchFinished )? ? {? ?? ? if( FindNextFile(hSearch, fd) )? ?? ? {? ?? ?? ???if( (fd.dwFileAttributes FILE_ATTRIBUTE_DIRECTORY)? ?? ?? ?? ??? strcmp(fd.cFileName, .) strcmp(fd.cFileName, ..) )? ?? ? ? ?? ?? ???{? ?? ?? ?? ???strcpy(tmpPath, rootDir);? ?? ?? ?? ???strcat(tmpPath, fd.cFileName);? ?? ?? ?? ???FindFileInDir(tmpPath, strRet);? ?? ?? ???}? ? ? ?? ?? ???else? ?if( strcmp(fd.cFileName, .) strcmp(fd.cFileName, ..) )? ?? ?? ?? ?? ?? ?? ?{? ?? ?? ?? ?? ?? ?? ?? ? sprintf(fname, %-50.50s, fd.cFileName);? ?? ?
文档评论(0)