如何使用应用程序 BMP 资源作为 CreateContextMenuItem 的 iconStream 参数?

问题描述 投票:0回答:0

请参阅:

CreateContextMenuItem
。其中一个参数用于图标:
System.IO.Stream iconStream
。这篇文章并没有多说图标。我什至不确定为什么规格是使用图标。

我想做的是在我的应用程序资源中有一个 bmp 图标,并将其用作

iconStream
。我如何使用 Win32 / MFC 解决这个问题?

CString strMenuText;
strMenuText.LoadString(IDS_STR_MENU_REFRESH);
CHECK_FAILURE(webviewEnvironment->CreateContextMenuItem(
    strMenuText, nullptr,
    COREWEBVIEW2_CONTEXT_MENU_ITEM_KIND_COMMAND, &m_itemRefresh));

nullptr
需要成为流。我有一个 BMP 资源 (
IDB_BMP_MENU_REFRESH_VIEW
)。如何将这个嵌入的位图资源变成
Stream
?我知道如何从文件中读取它:

wil::com_ptr<IStream> iconStream;
CHECK_FAILURE(SHCreateStreamOnFileEx(
            L"d:\\small.ico", STGM_READ, FILE_ATTRIBUTE_NORMAL, FALSE, nullptr, &iconStream));
visual-c++ bitmap stream mfc webview2
© www.soinside.com 2019 - 2024. All rights reserved.