MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    [Resolvido]Fechar ".exe " ao clicar de um botão

    MarceloSilva
    MarceloSilva
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 156
    Registrado : 28/02/2011

    [Resolvido]Fechar ".exe " ao clicar de um botão Empty Fechar ".exe " ao clicar de um botão

    Mensagem  MarceloSilva 6/2/2012, 13:51

    Essa é para JPaulo (achei esse código no fórum)

    Estou usando a seguinte função em um módulo - abaixo (função esta que tem com objetivo fechar executáveis, como e excel por exemplo)

    no Clicar de um Botão uso o seguinte:

    Private Sub meubotão_Click()
    Call CloseProcess("Excel.exe")
    End Sub


    Gostaria de adaptar o código abaixo para encerrar todos os arquivos abertos com extensão ".exe" - independente do nome do arquivo

    Exemplo: Fechar Excel, Fechar um ".exe" especifico...assim sucessivamente:

    Option Explicit
    Public Const TH32CS_SNAPPROCESS As Long = 2&
    Public Const MAX_PATH As Long = 260
    Public Type PROCESSENTRY32
    dwSize As Long
    cntUsage As Long
    th32ProcessID As Long
    th32DefaultHeapID As Long
    th32ModuleID As Long
    cntThreads As Long
    th32ParentProcessID As Long
    pcPriClassBase As Long
    dwFlags As Long
    szExeFile As String * MAX_PATH
    End Type
    Public Const PROCESS_ALL_ACCESS As Long = &H1F0FFF
    Public Declare Function CreateToolhelp32Snapshot Lib "kernel32" _
    (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
    Public Declare Function ProcessFirst Lib "kernel32" _
    Alias "Process32First" _
    (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
    Public Declare Function ProcessNext Lib "kernel32" _
    Alias "Process32Next" _
    (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
    Public Declare Function OpenProcess Lib "kernel32" _
    (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
    ByVal dwProcessId As Long) As Long
    Public Declare Function TerminateProcess Lib "kernel32" _
    (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
    Public Declare Sub CloseHandle Lib "kernel32" _
    (ByVal hPass As Long)
    Public Function CloseProcess(EXEName As String) As Boolean
    Dim hSnapShot As Long
    Dim uProcess As PROCESSENTRY32
    Dim hProcess As Long
    CloseProcess = False
    hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0&)
    If hSnapShot = -1 Then Exit Function
    uProcess.dwSize = Len(uProcess)
    If ProcessFirst(hSnapShot, uProcess) = 1 Then
    Do
    If LCase$(Left$(uProcess.szExeFile, InStr(1, uProcess.szExeFile, vbNullChar) - 1)) = LCase$(EXEName) Then
    hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, uProcess.th32ProcessID)
    CloseProcess = TerminateProcess(hProcess, ByVal 0&) > 0
    Exit Do
    End If
    Loop While ProcessNext(hSnapShot, uProcess)
    End If
    Call CloseHandle(hSnapShot)
    End Function
    avatar
    Convidad
    Convidado


    [Resolvido]Fechar ".exe " ao clicar de um botão Empty Re: [Resolvido]Fechar ".exe " ao clicar de um botão

    Mensagem  Convidad 8/2/2012, 13:24

    Olá amigo

    Vou responder para não dizer que ninguém te respondeu.

    Gostaria de adaptar o código abaixo para encerrar todos os arquivos abertos com extensão ".exe" - independente do nome do arquivo

    Já parou para pensar quantos programas ".exe" está sendo executado pelo windows em "background"?
    Se ainda não, experimente abrir o gerenciador de programas e terá uma idéia.
    Em resumo,se fizermos isso, travamos o windows no ato.
    Grande abraço
    MarceloSilva
    MarceloSilva
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 156
    Registrado : 28/02/2011

    [Resolvido]Fechar ".exe " ao clicar de um botão Empty Re: [Resolvido]Fechar ".exe " ao clicar de um botão

    Mensagem  MarceloSilva 8/2/2012, 14:48

    É mesmo....

    não tinha pensado nessa situação......

    Ok Balem, vou utilizar a versão atual do código, renomeando os quais desejo encerrar.

    Obrigado pelo retorno,......considero resolvido.

    at.
    avatar
    Convidad
    Convidado


    [Resolvido]Fechar ".exe " ao clicar de um botão Empty Re: [Resolvido]Fechar ".exe " ao clicar de um botão

    Mensagem  Convidad 8/2/2012, 14:56

    Eu que agradeço pelo retorno.

    Só uma sugestão:

    Tente fazer uma lista de programas que você deseja encerrar, então poderá fazer um loop nesta lista, fechando-os um a um.

    Abraços


    Conteúdo patrocinado


    [Resolvido]Fechar ".exe " ao clicar de um botão Empty Re: [Resolvido]Fechar ".exe " ao clicar de um botão

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/5/2024, 18:37