How to make an EditorUtilityWidget open/run via C++

This code worked great for me, using UEditorUtilitySubsystem

void FAutomationModule::OnSpawnPluginTab()
{
    // Reference to your AutomationUtilityWidget
    UBlueprint* UMGBP = LoadObject<UBlueprint>(nullptr, L"/Script/Blutility.EditorUtilityWidgetBlueprint'/Automation/EUW_ConsoleCommand.EUW_ConsoleCommand'");

    UEditorUtilityWidgetBlueprint* EditorWidget = Cast<UEditorUtilityWidgetBlueprint>(UMGBP);

    if (EditorWidget)
    {
        UEditorUtilitySubsystem* EditorUtilitySubsystem = GEditor->GetEditorSubsystem<UEditorUtilitySubsystem>();
        EditorUtilitySubsystem->SpawnAndRegisterTab(EditorWidget);
    }
}