Novo Outlook Não Suporta Automação do Modelo de Objeto: Alternativa Prática
🔍 WiseChecker

Novo Outlook Não Suporta Automação do Modelo de Objeto: Alternativa Prática

Se você depende de scripts ou complementos que usam a automação do Modelo de Objeto do Outlook para gerenciar e-mails, calendários ou tarefas, provavelmente já descobriu que o novo Outlook para Windows não oferece suporte a essa tecnologia. O Outlook clássico para Windows usa o Modelo de Objeto do Outlook para permitir que programas externos, como scripts VBA, complementos COM e ferramentas de automação de terceiros, controlem seus recursos. O novo Outlook, construído em uma plataforma baseada na web, bloqueia intencionalmente esse modelo de automação por motivos de segurança e desempenho. Este artigo explica por que o novo Outlook elimina a automação do Modelo de Objeto e fornece alternativas práticas e específicas que você pode usar hoje para automatizar seus fluxos de trabalho.

Principais Conclusões: Automatizando o Novo Outlook Sem o Modelo de Objeto

  • Microsoft Graph API: Substitua chamadas locais do Modelo de Objeto por chamadas REST na nuvem para e-mail, calendário, contatos e tarefas.
  • Power Automate: Crie fluxos de trabalho sem código ou com baixo código que sejam acionados por novos e-mails, enviem respostas ou criem eventos de calendário sem escrever scripts.
  • Exchange Web Services (EWS): Use o EWS como alternativa para ambientes locais ou híbridos onde a Graph API não está disponível.

ADVERTISEMENT

Por que o Novo Outlook Bloqueia a Automação do Modelo de Objeto

O Outlook clássico para Windows expõe um Modelo de Objeto baseado em COM que aplicativos de terceiros e macros VBA podem chamar diretamente. Esse modelo oferece acesso profundo aos dados e recursos do Outlook, mas também introduz riscos de segurança, problemas de estabilidade e sobrecarga de desempenho. O novo Outlook para Windows é construído na mesma plataforma web do Outlook na web. Ele é executado em um ambiente isolado que não expõe uma interface COM. A Microsoft fez essa mudança para melhorar a segurança, reduzir travamentos causados por complementos mal escritos e suportar atualizações rápidas de recursos. Como resultado, qualquer script ou complemento que dependa do Modelo de Objeto do Outlook, incluindo macros VBA, complementos COM e algumas ferramentas de automação de terceiros, não funcionará no novo Outlook.

A Microsoft afirmou que não adicionará suporte ao Modelo de Objeto no novo Outlook. Em vez disso, eles incentivam desenvolvedores e usuários avançados a adotar APIs modernas e plataformas de automação. As principais alternativas são a Microsoft Graph API, o Power Automate e o Exchange Web Services para cenários locais. Cada opção tem seus próprios pontos fortes, limitações e requisitos de configuração.

Alternativas Práticas à Automação do Modelo de Objeto

Os métodos a seguir substituem a funcionalidade do Modelo de Objeto que você pode estar usando no Outlook clássico. Escolha a abordagem que melhor se adequa ao seu ambiente e nível de habilidade.

Opção 1: Microsoft Graph API para Automação Baseada em Nuvem

A Microsoft Graph API é a principal substituta para a automação do Modelo de Objeto do Outlook no novo Outlook. Ela fornece endpoints REST para e-mail, calendário, contatos e tarefas. Você pode chamar a Graph a partir de qualquer linguagem de programação que suporte requisições HTTP, incluindo Python, JavaScript, C# e PowerShell. Para usar a Graph, você precisa de um registro de aplicativo no Azure Active Directory com as permissões apropriadas. Por exemplo, para enviar um e-mail programaticamente, você registra um aplicativo, concede a permissão Mail.Send e faz uma requisição POST para https://graph.microsoft.com/v1.0/me/sendMail. A Graph funciona apenas com caixas de correio do Microsoft 365 na nuvem. Ela não funciona com caixas de correio do Exchange local, a menos que você use uma implantação híbrida.

  1. Registre um aplicativo no Azure AD
    Acesse o portal do Azure, selecione Registros de aplicativo e crie um novo aplicativo. Anote a ID do aplicativo (cliente) e a ID do diretório (locatário).
  2. Configure permissões de API
    Em Permissões de API, adicione permissões do Microsoft Graph, como Mail.ReadWrite, Mail.Send, Calendars.ReadWrite ou Tasks.ReadWrite, dependendo das suas necessidades de automação.
  3. Gere um token de acesso
    Use o fluxo de credenciais do cliente ou o fluxo de código de autorização para obter um token OAuth 2.0. No PowerShell, você pode usar o módulo MSAL.PS para adquirir tokens silenciosamente.
  4. Chame o endpoint da Graph API
    Envie uma requisição HTTP com o token no cabeçalho Authorization. Por exemplo, para listar mensagens, use GET https://graph.microsoft.com/v1.0/me/messages.

Opção 2: Power Automate para Fluxos de Trabalho Sem Código

Se você não quer escrever código, o Power Automate (antigo Microsoft Flow) fornece uma interface gráfica para criar fluxos de trabalho de automação que interagem com o novo Outlook. Você pode acionar fluxos na chegada de novos e-mails, enviar respostas automáticas, criar eventos de calendário e mover mensagens para pastas. O Power Automate se conecta ao novo Outlook por meio do conector do Microsoft Graph. Ele não requer conhecimento de programação. No entanto, lógica complexa ou automação de alta frequência podem exigir uma licença premium.

  1. Crie um novo fluxo no Power Automate
    Acesse make.powerautomate.com e faça login com sua conta do Microsoft 365. Selecione Criar e escolha Fluxo de nuvem automatizado.
  2. Escolha um gatilho
    Selecione um gatilho do conector do Outlook, como Quando um novo e-mail chega (V3). Configure a pasta a ser monitorada e quaisquer filtros.
  3. Adicione ações
    Adicione ações como Enviar um e-mail (V2), Criar evento de calendário ou Mover e-mail. Configure cada ação com as propriedades necessárias.
  4. Teste e ative o fluxo
    Salve o fluxo e execute um teste com um e-mail de exemplo. Se o teste passar, ative o fluxo para execução automática.

Opção 3: Exchange Web Services para Ambientes Locais

Para organizações que usam o Exchange Server local e não podem usar o Microsoft Graph, o Exchange Web Services (EWS) continua sendo uma opção viável. O EWS fornece uma API baseada em SOAP que suporta e-mail, calendário, contatos e tarefas. No entanto, a Microsoft anunciou que o EWS será descontinuado para o Exchange Online em 2026. Para o Exchange 2019 local e versões anteriores, o EWS continua funcionando. Você deve desabilitar a autenticação herdada e usar OAuth 2.0 se seu ambiente suportar. O EWS não funciona diretamente com o novo Outlook, mas você pode chamá-lo a partir de um script ou serviço separado executado em um servidor.

  1. Verifique a versão do Exchange e a disponibilidade do EWS
    Confirme se seu servidor Exchange suporta EWS. Para Exchange 2013 e posteriores, o EWS está habilitado por padrão. Para Exchange 2010, o EWS requer configuração explícita.
  2. Crie uma conta de serviço
    Crie uma caixa de correio dedicada e uma conta de serviço com as permissões mínimas necessárias. Evite usar sua caixa de correio pessoal para automação.
  3. Escreva um script usando a API Gerenciada do EWS
    Baixe a API Gerenciada do EWS 2.2 da Microsoft. Em seu script C# ou PowerShell, crie um objeto ExchangeService, defina as credenciais e chame métodos como FindItems ou SendItem.
  4. Agende a execução do script
    Use o Agendador de Tarefas do Windows ou um pipeline de CI/CD para executar o script em um agendamento ou acioná-lo com base em eventos.

ADVERTISEMENT

Problemas Comuns de Migração e Como Lidar com Eles

Minhas macros VBA não funcionam mais no novo Outlook

Macros VBA que usam o Modelo de Objeto do Outlook, como Application.ActiveInspector.CurrentItem, não serão executadas no novo Outlook. O novo Outlook não suporta VBA. Para substituir uma macro, identifique a ação específica que ela executa. Se ela envia um e-mail ou cria um compromisso, reescreva-a como um fluxo do Power Automate ou uma chamada da Graph API. Se a macro for executada localmente sem acesso à rede, você deve manter o Outlook clássico instalado junto com o novo Outlook para esses fluxos de trabalho.

Meu complemento COM não carrega no novo Outlook

Complementos COM que se conectam ao Modelo de Objeto do Outlook não são suportados. Verifique se o fornecedor do complemento oferece uma versão de complemento web que usa a plataforma de Suplementos do Office. Os suplementos web são executados em um iframe isolado e funcionam no novo Outlook. Se nenhum suplemento web estiver disponível, você deve usar o Outlook clássico para esse complemento ou substituir a funcionalidade por chamadas da Graph API.

Preciso automatizar uma tarefa que funciona offline

A Graph API e o Power Automate exigem conectividade com a internet. Se sua automação precisar funcionar offline, você não pode usar o novo Outlook para essa tarefa. Mantenha o Outlook clássico instalado e execute seus scripts do Modelo de Objeto lá. Você pode alternar entre o Outlook clássico e o novo na mesma máquina usando o controle deslizante “Experimentar o novo Outlook” no canto superior direito da janela do Outlook clássico.

Modelo de Objeto vs Graph API vs Power Automate: Principais Diferenças

Item Modelo de Objeto do Outlook (Clássico) Microsoft Graph API
Método de acesso Interface COM, local API REST, nuvem
Funciona com o novo Outlook Não Sim
Funciona offline Sim Não
Linguagem de programação VBA, C#, VB.NET Qualquer linguagem com suporte a HTTP
Autenticação Integrada ao Windows OAuth 2.0
Melhor para Scripts locais, automação rápida Automação escalável, primeiro na nuvem

Agora você pode substituir a automação do Modelo de Objeto do Outlook pela Microsoft Graph API, Power Automate ou Exchange Web Services, dependendo do seu ambiente. Comece auditando suas macros ou complementos existentes para determinar quais ações eles executam. Em seguida, escolha a alternativa que melhor se adequa ao seu nível de habilidade técnica e requisitos de conectividade. Um bom próximo passo é criar um script simples da Graph API que envie um e-mail de teste da sua caixa de correio. Isso confirma que sua autenticação e permissões estão configuradas corretamente antes de construir fluxos de trabalho mais complexos.

ADVERTISEMENT