用过文件搜索引擎everything的达人请进
因为程序需要做一次搜索本地硬盘的工作,因此在下学习了一下著名的文件搜索引擎Everything,下载了它的SDK开发包。
然后在网上找了一下类似的学习资料,依样画葫芦的在本机弄了一个进行调试,发现它所给的库和引擎都做了很好的封装,于是直接使用,下面是我写的代码:
Everything.h头文件中,它原本的函数声明都是类似这样的,结果发现无法进行编译:
__declspec(dllimport) void __stdcall Everything_SetSearchW(LPCWSTR lpString);
extern "C" __declspec(dllimport) void __stdcall Everything_SetSearchW(LPCWSTR lpString);
#include "../Everything-SDK/include/Everything.h"#include "../Everything-SDK/ipc/Everything_IPC.h"#pragma comment(lib, "../Everything-SDK/lib/Everything.lib")
void CtestDlg::OnBnClickedButtonTest(){ ::Everything_SetSearchA(_T("test.exe")); if (TRUE != ::Everything_QueryA(FALSE)) { int Ret = ::Everything_GetLastError(); return; } int Num = ::Everything_GetNumFileResults(); CString szResult; for (int i = 0; i < Num; ++ i) { szResult = ::Everything_GetResultPathA(i); Msg(szResult.GetBuffer()); }}