Implemente o Explorer ContextMenu e passe vários arquivos para uma instância do programa

Situação

Eu tenho um aplicativo GUI de terceiros que aceita vários arquivos via CLI, por exemplo:

MyProgram.exe "file1" "file2"

Todos os arquivos são carregados de uma só vez na mesma instância do aplicativo.

Para otimizar meu tempo, eu gostaria de carregar vários arquivos clicando com o botão direito do mouse em alguns arquivos deexplorador de janelas (por exemplo:Selecione 5 arquivos> clique com o botão direito do mouse> selecione o comando "Abrir no MyProgram")

Eu sei como criar as chaves do Registro necessárias para adicionar esse comando no menu de contexto para tipos de arquivos específicos, isso não é um problema.

Problema

Este programa de terceiros não é fornecido com nenhum driver, extensão de shell ou metodologia que possa capturar vários arquivos do menu de contexto. Portanto, se eu selecionar dois arquivos do explorer, cada arquivo será aberto em uma instância separada do programa e eu não tem idéia de desenvolver drivers, então um driver não é o que estou procurando.

Foco

Estou aberto a sugestões, talvez essa não seja a maneira eficiente, mas pareça a maneira mais fácil:

Minha idéia é desenvolver um aplicativo mini CLI para capturar esses vários arquivos (talvez com base nas mensagens do Windows ou na inatividade do SO, não sei por que estou perguntando), escrever esses arquivos / argumentos em um arquivo de texto e juntar todos os argumentos em uma única linha para chamar meu programa de terceiros com esses argumentos para carregar todos os arquivos de uma só vez em uma única instância deste programa.

Em outras palavras, apenas um carregador simples para usá-lo no menu de contexto ao selecionar vários arquivos para abrir todos os arquivos de uma vez neste aplicativo de terceiros.

Pergunta, questão

Antes de mais nada, gostaria de saber se existe um termo conhecido para nomear essa coisa de um aplicativo capaz de carregar vários arquivos na mesma instância, selecionando os arquivos do explorer e depois do menu de contexto. Eu gostaria de pesquisar para esse termo.

Qual poderia ser a maneira mais eficiente de realizar essa tarefa em um aplicativo de console VB.NET/C#? (não motorista)

Como começar a desenvolver isso?

Qualquer exemplo de código-fonte existente de páginas conhecidas comocodeproject...?

questionAnswers(3)

yourAnswerToTheQuestion