Eliminar BAT de carga do aplicativo
Moderador: Moderadores
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Eliminar BAT de carga do aplicativo
Descobri agora que no W8 o atalho para arquivo BAT não é permitido.
Uso o BAT por causa da atualização automática, que vai trocando o nome do EXE, por isso o atalho não é direto ao EXE.
Minha primeira idéia é um EXE intermediário, que vai carregar o EXE mais novo da pasta.
Lógico, a pesquisa é limitada ao nome do aplicativo "JPA*.EXE", pra evitar problemas.
Minha dúvida:
Aquele raio do modo offline do Windows, que pode não atualizar o diretório na pesquisa.
Alguma observação sobre isso?
Nota:
O EXE sempre trabalha com a pasta atual
O BAT acaba sendo um adicional pra posicionar pasta.
A princípio, a única coisa que poderia dar errado seria o modo offline do Windows, onde a estação pode não ficar sabendo de arquivos novos na pasta.
Uso o BAT por causa da atualização automática, que vai trocando o nome do EXE, por isso o atalho não é direto ao EXE.
Minha primeira idéia é um EXE intermediário, que vai carregar o EXE mais novo da pasta.
Lógico, a pesquisa é limitada ao nome do aplicativo "JPA*.EXE", pra evitar problemas.
Minha dúvida:
Aquele raio do modo offline do Windows, que pode não atualizar o diretório na pesquisa.
Alguma observação sobre isso?
Nota:
O EXE sempre trabalha com a pasta atual
O BAT acaba sendo um adicional pra posicionar pasta.
A princípio, a única coisa que poderia dar errado seria o modo offline do Windows, onde a estação pode não ficar sabendo de arquivos novos na pasta.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Eliminar BAT de carga do aplicativo
Quintas,
Fiz um teste aqui no meu notebook windows 8.1 e consegui criar atalho para um arquivo bat e executou
Fiz um teste aqui no meu notebook windows 8.1 e consegui criar atalho para um arquivo bat e executou
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Eliminar BAT de carga do aplicativo
Lá testei e não foi.
Não sei se é porque o BAT está na pasta mapeada, ou é coisa do antivírus.
Não sei se é porque o BAT está na pasta mapeada, ou é coisa do antivírus.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Eliminar BAT de carga do aplicativo
Ola Jose
você usa um exe por maquina ou mapeia o exe no servidor?
eu uso um exe por maquina para o exe do servidor ficar livre para poder copia um exe novo,
e os exe de cada maquina checa a data do exe do servidor se for maior copia o novo exe
você usa um exe por maquina ou mapeia o exe no servidor?
eu uso um exe por maquina para o exe do servidor ficar livre para poder copia um exe novo,
e os exe de cada maquina checa a data do exe do servidor se for maior copia o novo exe
Daniel
Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Eliminar BAT de carga do aplicativo
Máquina local:
- Atalho
- ODBC MySQL, se usar MySQL
- Componentes de NFE, se usar NFE e não houver outra opção
Servidor:
- EXE
- DBFs, se houver
- hbnetio rodando como serviço, se houver
- Servidor MySQL, se houver
- Componentes de NFE, se for pelo servidor
- Atalho
- ODBC MySQL, se usar MySQL
- Componentes de NFE, se usar NFE e não houver outra opção
Servidor:
- EXE
- DBFs, se houver
- hbnetio rodando como serviço, se houver
- Servidor MySQL, se houver
- Componentes de NFE, se for pelo servidor
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Eliminar BAT de carga do aplicativo
Amiguinhos,
Jose Quintas
Nas propriedades deste .BAT modifique para executar como Administrador em Atalho\Avançado.
Jose Quintas
Nas propriedades deste .BAT modifique para executar como Administrador em Atalho\Avançado.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Eliminar BAT de carga do aplicativo
Ainda não coloquei em prática, mas tô gostando da idéia do EXE que mencionei.
Vai dar até a opção do usuário atualizar manualmente, bastando salvar o EXE na pasta.
Vai dar até a opção do usuário atualizar manualmente, bastando salvar o EXE na pasta.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
Ricardo C. Freitas
- Usuário Nível 1

- Mensagens: 4
- Registrado em: 14 Jan 2016 17:33
- Localização: Vila Velha
Eliminar BAT de carga do aplicativo
Boa tarde José Quintas,
Aqui eu utilizo um EXE que faz o mapeamento para o servidor e carrega o EXE da aplicação.
Se desejar me manda um e-mail que envio o projeto para você.
At+
Aqui eu utilizo um EXE que faz o mapeamento para o servidor e carrega o EXE da aplicação.
Se desejar me manda um e-mail que envio o projeto para você.
At+
Eliminar BAT de carga do aplicativo
]o exemplo do EXE que eu uso
e como chamo o EXE
Código: Selecionar todos
cLocal := DiskName() +':' + DirName(DiskName()) + '\hello.exe'
cDataLocal := FileDate(cLocal)
cDataServidor := FileDate(cBase + 'hello.exe')
cHoraLocal := FileTime(cLocal)
cHoraServidor := FileTime(cBase + 'hello.exe')
cLocalServidor:= cBase + 'hello.exe'
If cDataLocal < cDataServidor
Copy File &cLocalServidor To &cLocal
InKey(2)
EndIf
cLocal := DiskName() +':' + DirName(DiskName()) + '\menu.exe'
cDataLocal := FileDate(cLocal)
cDataServidor := FileDate(cBase + 'menu.exe')
cHoraLocal := FileTime(cLocal)
cHoraServidor := FileTime(cBase + 'menu.exe')
cLocalServidor:= cBase + 'menu.exe'
nFlag := MB_OK + MB_SETFOREGROUND + MB_SYSTEMMODAL + MB_ICONINFORMATION
If cDataLocal < cDataServidor
MessageBoxTimeout('Ha uma Nova Versão do Programa no Servidor'+ chr(10)+chr(13)+;
'Atualizando Agora...', 'Aviso do Sistema', nFlag, 3000)
ShellExecute(0, "open","HELLO.EXE", cLocalServidor + ' ' + cLocal + ' ' + cCaminhoServidor)
Quit
ElseIf cDataLocal == cDataServidor
If cHoraLocal < cHoraServidor
MessageBoxTimeout('Ha uma Nova Versão do Programa no Servidor'+ chr(10)+chr(13)+;
'Atualizando Agora...', 'Aviso do Sistema', nFlag, 3000)
ShellExecute(0, "open","HELLO.EXE", cLocalServidor + ' ' + cLocal + ' ' + cCaminhoServidor)
Quit
EndIf
EndIfDaniel
Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Eliminar BAT de carga do aplicativo
Isso de verificar nova versão já tenho no EXE.
O EXE novo vai ser só pra carga mesmo.
Meu aplicativo se chama JPA.EXE
As versões vão se chamar JPA1.EXE, JPA2.EXE, JPA3.EXE, etc.
Se o usuário instalar manual, por download, pode ser JPA(2).EXE, JPA(3).EXE, etc.
O EXE de carga apenas verifica qual o mais novo na pasta dos EXEs (JPA*.EXE), e continua executando na mesma pasta default que foi definida.
Sempre trabalho com a pasta default, assim funciona em qualquer lugar.
Só copiar a pasta, criar o atalho e pronto.
Como o aplicativo aceita parâmetros, este programa repassa os parâmetros.
Fiz este aqui:
O EXE novo vai ser só pra carga mesmo.
Meu aplicativo se chama JPA.EXE
As versões vão se chamar JPA1.EXE, JPA2.EXE, JPA3.EXE, etc.
Se o usuário instalar manual, por download, pode ser JPA(2).EXE, JPA(3).EXE, etc.
O EXE de carga apenas verifica qual o mais novo na pasta dos EXEs (JPA*.EXE), e continua executando na mesma pasta default que foi definida.
Sempre trabalho com a pasta default, assim funciona em qualquer lugar.
Só copiar a pasta, criar o atalho e pronto.
Como o aplicativo aceita parâmetros, este programa repassa os parâmetros.
Fiz este aqui:
Código: Selecionar todos
REQUEST HB_Codepage_PTISO
#include "directry.ch"
#include "hbwin.ch"
PROCEDURE Main( cmdParam1, CmdParam2, cmdParam3, cmdParam4, cmdParam5 )
LOCAL oDirExe, oFile, oExe, cPath
Set( _SET_CODEPAGE, "PTISO" )
SET DATE BRITISH
SET EPOCH TO Year( Date() ) - 90
cPath := hb_Argv(0)
cPath := Left( cPath, Rat( "\", cPath ) )
cmdParam1 := iif( cmdParam1 == NIL, "", cmdParam1 )
cmdParam2 := iif( cmdParam2 == NIL, "", cmdParam2 )
cmdParam3 := iif( cmdParam3 == NIL, "", cmdParam3 )
cmdParam4 := iif( cmdParam4 == NIL, "", cmdParam4 )
cmdParam5 := iif( cmdParam5 == NIL, "", cmdParam5 )
oDirExe := Directory( cPath + "JPA*.EXE" )
IF Len( oDirExe ) == 0
MsgExclamation( "Não encontrado EXE na pasta " + cPath )
RETURN
ENDIF
oExe := { oDirExe[ 1, F_NAME ], oDirExe[ 1, F_SIZE ], oDirExe[ 1, F_DATE ], oDirExe[ 1, F_TIME ] }
FOR EACH oFile IN oDirExe
IF Dtos( oFile[ F_DATE ] ) + oFile[ F_TIME ] > Dtos( oExe[ F_DATE ] ) + oExe[ F_TIME ]
oExe := { oFile[ F_NAME ], oFile[ F_SIZE ], oFile[ F_DATE ], oFile[ F_TIME ] }
ENDIF
NEXT
WAPI_ShellExecute( NIL, "open", cPath + oExe[ 1 ], cmdParam1 + " " + cmdParam2 + " " + cmdParam3 + " " + cmdParam4 + " " + cmdParam5, hb_cwd(), SW_SHOWNORMAL )
RETURN
FUNCTION MsgExclamation( cText )
wapi_MessageBox( wapi_GetActiveWindow(), cText, "Atenção", WIN_MB_ICONASTERISK )
RETURN NIL
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/

