Win32:CreateTextServices出错

时间:2016-02-10 03:09:35

标签: winapi linker richedit

我正在CreateTextServices尝试使用TextServ.h功能。我似乎必须将riched20.lib链接到项目才能使用此功能 但是当我向链接器/输入/附加依赖添加riched20.lib时,VS说错误LNK1181:无法打开输入文件'riched20.lib'
如何解决这个错误?
我正在使用VS 2013,Win 8.1 32位。

1 个答案:

答案 0 :(得分:1)

有同样的问题。我认为没有可用的库可用于richedit / msftedit的最新版本,但是textserv.h提供了该函数的定义,因此无需额外的.lib即可进行以下操作:

// load the dll and get the function address
// PCreateTextServices is declared in textserv.h:
HMODULE h = LoadLibrary(L"msftedit.dll");
PCreateTextServices createTextServices = (PCreateTextServices)GetProcAddress(h, "CreateTextServices");
...

ITextServices svc*;
int hr = createTextServices(NULL, host, (IUnknown**)&svc);

...
svc->Release();
FreeLibrary(h);