1

可能重复:
如何从 Visual C++ 中的版本资源中读取

我在我的 C++ Visual Studio 项目中添加了一个资源“版本”,现在我想在我的代码中读回这个值!

这怎么可能?

谢谢

4

2 回答 2

0

这是我在Project: Merge中的做法:

std::wstring ReadProcessVersion( const std::wstring& filename )
{
    char        buffer[ 8192 ];
    wchar_t*    version;
    UINT        size;

    if( GetFileVersionInfo( filename.c_str(), NULL, sizeof( buffer ), buffer ))
    {
        if( VerQueryValue( buffer, L"\\StringFileInfo\\080904B0\\FileVersion", reinterpret_cast< void** >( &version ), &size ))
        {
            return version;
        }
    }
    return L"";
}

如果我没记错的话,资源标识符080904B0是依赖于语言环境的。(我只有英语。)

于 2013-01-23T09:03:25.337 回答
0

您使用函数FindResource访问资源并使用函数LoadResource访问它。在第二种情况下,您还将获得一个完整的示例来访问和更新资源。

于 2013-01-23T07:33:34.013 回答