+2 votos
38 visitas

Olá,

Precisamos fazer algo para obrigar o cliente executar uma rotina no sistema para o correto funcionamento do mesmo, então nossa idéia inicial foi incluir um evento na macro, mais precisamente no evento OnOpen da aplicação, para que se o cliente ainda não executou a rotina uma mensagem será apresentada informando da necessidade de fazer isso, e se ele optar por executar esta rotina, um formulário seria apresentado para isso, porém se o usuário optar por não executar a rotina a aplicação seria fechada automaticamente, e minha dúvida está em como fechar a aplicação, já tentei utilizar o Close e alguns outros exemplos que achei ser possível, porém nenhum funcionou.

É possível fechar a aplicação através de uma macro?

se for como faço isso?

por (116 pontos) | 38 visitas

2 Respostas

+3 votos
Melhor resposta

Consegui resolver esse problema da seguinte maneira:

Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long

Public Sub Fechar
      Dim Comando As String

      Comando = "taskkill /F /PID " + CStr(GetCurrentProcessId())
      Shell(Comando)
End Sub

 

por (116 pontos)
–1 voto
Matheus,

Tente utilizar o método "RestartSystem".
por (353 pontos)
Não funcionou Gielow, ao executar esse comando o sistema apresenta uma mensagem dizendo que não foi possível reniciar o sistema.

Perguntas relacionadas

0 votos
1 resposta
+7 votos
1 resposta
perguntado 9 Mai, 2014 por paulo.silva (861 pontos) | 113 visitas
0 votos
1 resposta
perguntado 23 Jul, 2015 por Anderson Roberto (24 pontos) | 29 visitas
+5 votos
1 resposta
perguntado 17 Nov, 2014 por thiago.gaidzinski (20 pontos) | 28 visitas
+5 votos
1 resposta
Melhores May 2020
  1. henrique.muller

    18 Pontos

  2. joao.melo

    14 Pontos

  3. diego.luiz

    12 Pontos

  4. SlimShady

    11 Pontos

  5. joseglauber

    11 Pontos

  6. willian.metalsystem

    8 Pontos

  7. lucas.melo

    3 Pontos

  8. fluipress.luciano

    2 Pontos

  9. pajucara.wallacef

    2 Pontos

  10. jean.filho

    2 Pontos

200 pontos
Melhores 2020 May 25 - 31
  1. diego.luiz

    12 Pontos

  2. SlimShady

    4 Pontos

  3. willian.metalsystem

    2 Pontos

434 perguntas
480 respostas
349 comentários
466 usuários