从同一个dll调用多个函数

这可能是一个简单的..我在SO搜索了一个答案,并找不到找什么,这就是为什么我在这里发布一个问题。以下是我的疑惑,

我正在开发一个应用程序,使用Windows默认的dll。我使用来自同一个加载的DLL的多个函数。例如:

HINSTANCE hinstLib;
hinstLib = LoadLibrary( "Crypt32.dll" );

然后使用下面的代码导出函数:

CertOpenStore = (fptr1)GetProcAddress(hinstLib, "CertOpenStore");

现在我想使用来自同一个DLL的另一个函数。在这种情况下,我会如何做到这一点:

CertAddEncodedCertificateToStore(CertOpenSystemStore(0,"TrustedPublisher"),PKCS_7_ASN_ENCODING |X509_ASN_ENCODING,pbEncodedCert,dwSize,CERT_STORE_ADD_REPLACE_EXISTING,NULL);

其中 CertAddEncodedCertificateToStoreCertOpenSystemStore 属于同一个dll吗?

0
额外 编辑
意见: 1
它们与您为 CertOpenStore 所做的相同。
额外 作者 user703016,
将库加载到只有一个句柄(hinstlib)以及如何导出两个不同的函数。
额外 作者 2vision2,
@hary:你是对的Hary。与手柄部分有点混淆。还有一个疑问是,如果我想使用另一个DLL我可以在这里使用不同的句柄吗?
额外 作者 2vision2,
显然,你可以使用相同的句柄多次调用GetProcAddress。你为什么认为你需要做更复杂的事情?
额外 作者 Harry Johnston,
问题是什么?
额外 作者 Xearinox,

1 答案

就像你之前做的一样,但是为了一个不同的函数名称:

fptr1 OtherFunc = GetProcAddress(hinstLib, "OtherFunc");
5
额外