Я хочу встроить 64-битное контекстное меню Windows в 32-битное приложение (что-то вроде подменю X64 в TotalCommander).Для этого мне нужно смоделировать содержимое 64-битного меню на 32-битной стороне.Моя идея состоит в том, чтобы просмотреть 64-битное меню внутри 64-битного вспомогательного процесса и заново создать такой контент на 32-битной стороне (я также пытался показать такое меню напрямую из 64-битного помощника, но в Windows было удивительно иметь два контекстных меню, каждоеиз другого процесса, и не правильно рисует второе меню).Скажите, если у вас есть другие идеи.
У меня есть одна проблема: некоторые нарисованные владельцем меню показывают больше элементов, чем возвращает GetMenuItemCount () (обычно GetMenuItemCount () возвращает 1 в таком случае).
Интересно, что я могу использовать GetMenuItemInfo () для нарисованного владельцем элемента меню, используя идентификатор элемента (который возвращается из TrackPopupMenuEx ()), поэтому такое меню может генерировать правильную информацию для каждого конкретного элемента.Но, к сожалению, я не могу использовать идентификаторы для итерации пунктов меню (идентификаторы пунктов неупорядочены).
Есть идеи?