
Tenho alguns softwares licenciados para serem usados em um computador por vez. Ele se conecta a um serviço e recupera dados desse serviço. Se eu iniciar o aplicativo em um segundo computador, a conexão de dados do primeiro computador será encerrada.
Há momentos em que estarei executando o software no Computador1 e ele estará realizando algum trabalho vital com sua coleta de dados, etc. e esquecerei que ele está sendo executado lá e o iniciarei no Computador2, fazendo com que a conexão de dados do Computador1 seja encerrada, etc.
O que eu quero fazer é configurar um aviso no Computador2 para que cada vez que eu iniciar este aplicativo, uma caixa de diálogo apareça e diga "Ei, este software pode estar sendo executado em outro computador, tem certeza de que deseja iniciá-lo aqui?"
Estou usando o Windows 7 no Computador2. Existe alguma maneira de eu realizar essa tarefa?
Responder1
Você poderia usar um script vbs. Isso iniciará o bloco de notas se você disser sim e notificará que clicou em cancelar (se você clicou em cancelar).
Set WshShell = CreateObject("WScript.Shell")
intButton = WshShell.Popup ("Hey, this software might be running on another computer, are you sure you want to start it here?", , , 1 + 48)
select case intButton
case 1
strMessage = ""
sub shell(cmd)
WshShell.Run(cmd)
Set WshShell = Nothing
end sub
shell """C:\Program Files (x86)\UltraISO\UltraISO.exe"""
case 2
strMessage = "You clicked the Cancel button."
WshShell.Popup strMessage, , , 32
end select
Basta copiar/colar em um arquivo de texto e alterar o txt para vbs.
Responder2
Isso não é perfeito, mas é simples e faz o que você deseja. Eu configurei isso para abrir o Word 2010 como exemplo, mas você adicionaria seu programa. Crie um arquivo em lote .bat para abrir seu programa com o seguinte código e use-o para iniciar seu programa:
@echo Are you sure you want to continue?
Pause
start "C:\Program Files\Microsoft Office\Office14\winword.exe"
exit