Inspirado na resposta aceita acima, achei uma maneira muito confortável de comparar instantaneamente dois arquivos com o Visual Studio usando arrastar e soltar ou através do menu de contexto "Enviar para" . Requer apenas um pouco de preparação que você precisa fazer uma vez e depois é útil como um canivete suíço.
O Visual Studio já tem tudo o que você precisa, existem apenas algumas etapas de configuração necessárias para fazer isso funcionar:
Comparação de arquivos usando arrastar e soltar
Preparação:
1. Crie um novo arquivo em lote usando seu editor de texto favorito. Digite o seguinte:
@echo off
setlocal
set vspath=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE
start "Compare files" /B /MIN "%vspath%\devenv.exe" /diff %2 %1 First:'%2' Second:'%1'
Você pode perceber que eu invertei os parâmetros %1
e %2
no lote. Isso ocorre porque eu notei que o gerenciador de arquivos passa o segundo arquivo como primeiro parâmetro e o primeiro arquivo como segundo parâmetro.
2. Salve esse código como VS_FileCompare.cmd
usá-lo, modificar vspath
, se necessário para coincidir com a localização do devenv.exe
(dependendo da versão Visual Studio você está usando atualmente, ver nota *) )
3. Ou criar um atalho chamado "File Compare" para VS_FileCompare.cmd
e lugar na área de trabalho(conforme usado na animação abaixo), para que esteja sempre disponível para arrastar e soltar arquivos nele ou colocar diretamente o arquivo em lotes na área de trabalho. Isso é tudo!
Uso:
- Abra o Windows Explorer via Win+E
- Selecione dois arquivos para comparar no explorer
Arraste e solte-os como mostrado na animação abaixo:
Após alguns segundos (dependendo do tempo de inicialização do Visual Studio), os resultados serão mostrados no Visual Studio:
Nota: Não faz mal se o Visual Studio já estiver aberto. Nesse caso, ele abrirá apenas uma nova janela na instância em execução do Visual Studio. Assim, você pode comparar vários pares de arquivos, mas verifique se selecionou apenas 2 arquivos por vez.
Maneira alternativa: menu de contexto SendTo
Aqui está uma alternativa de como você pode usar o arquivo VS_FileCompare.cmd
em lotes mencionado na seção acima. Permite usar a pasta Enviar para do menu de contexto para comparar os arquivos.
Preparação:
- Crie um atalho "Compare2Files VS" para o arquivo em lotes
VS_FileCompare.cmd
e copie-o para a pasta SendTo . Abra o Windows Explorer via Win+E
- Abra a pasta SendTo , inserindo
shell:sendto
a barra de endereços do gerenciador de arquivos (conforme descrito aqui ). Em seguida, coloque o atalho preparado nesta pasta.
Uso:
- Abra o Windows Explorer via Win+E
- Selecione dois arquivos para comparar no explorer
Supondo que o atalho para o arquivo em lotes VS_FileCompare.cmd
seja denominado "Compare2Files VS" , você pode selecionar os dois arquivos, clicar com o botão direito do mouse e selecionar Enviar para -> Compare2Files VS para chamar a comparação, como mostrado abaixo:
Após alguns segundos (dependendo do tempo de inicialização do Visual Studio), os resultados serão mostrados no Visual Studio:
Referências do MSDN:
- Uso da janela de diferenças
- Parâmetro Diff do Visual Studio
*) Nota de rodapé: como vsPath
(o caminho para DEVENV.exe
) difere dependendo da sua versão do Visual Studio, estou descrevendo como você pode descobrir (Windows 10):
- No menu Iniciar do Windows , localize o ícone do Visual Studio
- Clique com o botão direito do mouse para abrir o menu de contexto. Selecione Mais> Abrir local do arquivo .
O Windows Explorer é aberto com o atalho do Visual Studio realçado.
- Clique com o botão direito do mouse no Visual Studio e selecione Propriedades
- Na caixa de diálogo de propriedades, você pode encontrar o caminho em "Destino:"