Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更改第三方dll的语言?_Dll - Fatal编程技术网

如何更改第三方dll的语言?

如何更改第三方dll的语言?,dll,Dll,我有一个hird party dll,需要与我的应用程序一起安装。为了创建正确的安装程序,所有.dll文件都必须定义一种语言。不幸的是,这个第三方dll没有语言:(。有没有办法在不重新编译的情况下为它设置语言?可能是Microsoft SDK中的某个命令行工具?我不知道是否有工具可以这样做,但你可以自己编写一个。请参阅 以下是示例代码: HANDLE hResource = BeginUpdateResource(lpszFile, FALSE); if (NULL != hResource)

我有一个hird party dll,需要与我的应用程序一起安装。为了创建正确的安装程序,所有.dll文件都必须定义一种语言。不幸的是,这个第三方dll没有语言:(。有没有办法在不重新编译的情况下为它设置语言?可能是Microsoft SDK中的某个命令行工具?

我不知道是否有工具可以这样做,但你可以自己编写一个。请参阅

以下是示例代码:

HANDLE hResource = BeginUpdateResource(lpszFile, FALSE);
if (NULL != hResource)
{
    UINT uTemp;

    // get the language information
    if (VerQueryValue(lpBuffer,
                      _T("\\VarFileInfo\\Translation"),
                      (LPVOID *) &lpTranslate,
                      &uTemp) != FALSE)
    {
        // could probably just use LANG_NEUTRAL/SUBLANG_NEUTRAL
        if (UpdateResource(hResource,
                           RT_VERSION,
                           MAKEINTRESOURCE(VS_VERSION_INFO),
                           lpTranslate->wLanguage,
                           lpBuffer,
                           dwSize) != FALSE)
        {
            EndUpdateResource(hResource, FALSE);
        }
    }
}