Pro*_*ofK 3 c compiler-construction winapi
我需要重复生成带注册信息功能的Win32 DLL.此函数使用文字返回客户特定的注册信息,每个客户都构建一个单独的DLL.
我有一个测试版本正常工作,为一个客户提供硬编码信息.一些站点的紧迫性决定我手动生成一些DLL,但我想给客户端一个动态发出C源并按需构建DLL的应用程序.
最好的方法是什么?我有VS 2008 C++ Express,因而是cl.exe编译器.我目前的方法只是让C#应用程序为C源提供一个字符串常量,并在生成之前,用所需参数替换其中的标记,然后通过shelling out和运行cl.exe来构建和链接.
将所有客户信息作为字符串资源放在.rc文件中.将相应的.res文件链接到您的DLL中.DLL中依赖于该客户信息的所有代码都会调用LoadString来获取它.
然后构建一个名为"UpdateDLL.exe"的单独程序(或函数),它使用Win32 API:BeginUpdateResource,UpdateResource等...以使用新信息更新DLL.
运送以下内容:
预编译的DLL,其中包含资源中客户信息的空(或默认)字符串.
您的UpdateDLL.exe工具,它将DLL名称和客户信息文件作为命令行参数.
您的客户运行"UpdateDLL.exe customer.dll myinfo.txt"以使用其信息更新其DLL副本.