Como executar um aplicativo VB6 a partir de uma tarefa agendada sem que os usuários possam executá-lo

0

Temos um aplicativo VB6 herdado que envia automaticamente relatórios por e-mail. Ele é executado a partir de uma tarefa agendada em um servidor. Ocasionalmente, um usuário executará o exe - ele está em uma pasta da qual não podemos bloqueá-lo e ele precisa permanecer nessa pasta por motivos complicados demais para entrar aqui. Existe uma maneira de impedir que os usuários executem o exe enquanto ainda permitem que ele seja executado a partir da tarefa agendada? Eu posso modificar o código fonte para o exe, então essa é uma opção se alguém puder me ajudar a descobrir como. Ou se há uma maneira de definir permissões no exe, então apenas o Agendador de Tarefas (ou nossa equipe de 3 desenvolvedores) pode executá-lo, isso também funcionaria.

    
por JeffK627 11.08.2017 / 20:38

1 resposta

0

Existem duas opções aqui.

Modificando o código fonte

Modificar o código fonte é possível. Tudo o que você precisa fazer é garantir que o programa exija um parâmetro. Se não estiver presente, nada acontece. Um usuário irá clicar duas vezes no exe, que não envia um parâmetro. Você pode até mesmo fazer um popup dizendo: Este programa deve ser agendado, ou algo assim.

Isso pode ser feito usando GetCommandlineArgs .

A desvantagem disso é que, se por algum motivo alguém esquecer o argumento secreto da linha de comando, em algum momento as pessoas podem parar de usá-lo (por exemplo, se você sair da empresa, a TI é feita por uma empresa diferente, etc.) p>

Definindo permissões de acesso específicas no arquivo .exe

Outra opção é simplesmente definir permissões no arquivo .exe. Você pode fazer com que apenas os administradores possam abrir o arquivo ou negar o restante. Negar tem precedência sobre permitir permissões, portanto, é possível que você também esteja negando seu acesso administrativo. Além disso, um usuário com conhecimento e direitos suficientes pode desfazer isso e, em seguida, iniciar o executável. Além disso, se copiarem o executável localmente, poderão remover os direitos e depois iniciar o programa.

    
por 11.08.2017 / 21:31