Página 3 de 3
Enviado: 04 Jan 2007 19:27
por diogenes_varela
Caros Amigos,
Vou fazer uma nova tentativa, pois as ajudas enviadas não se encaixaram na forma como pretendo resolver o meu problema.
Detectei mas não consegui resolver, pois não se trata de um problema de Clipper, nem de 16 ou 32 bits. É UM PROBLEMA DO SISTEMA OPERACIONAL WINDOWS XP.
1. Ao digitar o comando START juntamente com o nome do programa, roda normalmente.
2. Se for incluído em um arquivo .BAT ou .CMD é exibida a mensagem de erro "Comando ou nome de arquivo inválido".
- Note-se que o nome de arquivo está correto. O erro se refere ao comando START.
- O que ocorre é que o MS-DOS do Windows XP não reconhece mais o comando START quando ele está inserido em um arquivo de lote.
Trata-se, então, de um comando do próprio Windows e não tem nada a ver com o programa que está sendo executado. Fiz várias tentativas com diversos programas, inclusive do próprio Windows e o resultado foi o mesmo. Ele não reconhece o comando START e não o programa que vem em seguida.
Se o nome do programa for digitado no prompt do Executar, funciona normalmente. Se for adicionado o comando START, uma janela de erro avisa que o comando 'START' não foi localizado, embora seja um comando INTERNO do próprio Windows.
Alguém sabe se isso pode ser corrigido?
Enviado: 05 Jan 2007 01:24
por Clipper
Deixando de lado as brincadeiras.
Quer dizer que nem mesmo com o programa que fiz você não conseguiu resolver seu problema ?
Fiz um teste aqui, criei um BAT com os seguintes comandos :
START USE51.EXE /SHARED
BR
START USE51.EXE /SHARED
Tudo funcionaou perfeitamente, tando no prompt quanto chamando o BAT de dentro do Windows.
No caso do WKEYKILL fiz o seguinte :
START WKEYKILL.EXE /SHARED
BR
START WKEYKILL.EXE /SAHRED
No prompt do DOS funcionou, chamando de dentro do Windows trava.
Ou seja em ambos os casos o START funcionou apesar de ter travado no segundo caso, o que me faz crer que o problema é no seu Windows.
Já usando o programa que fiz funciona 100% em qualquer lugar.
Pedi a mais 3 colegas que fizessem o teste do meu programa, em todos eles funcionou perfeitamente.
Verifique as configurações do seu CMD.EXE, faça a reparação do AUTOEXEC.BAT e CONFIG.NT, os originais estão dentro da pasta REPAIR dentro da pasta do windows.
Se nada funcionar chame os caça-fantasmas...

)
Pra não perder o costume...
Até logo.
Marcelo
Enviado: 05 Jan 2007 15:13
por diogenes_varela
Se você achar que estou "enchendo" é só avisar, mas não consigo acessar esse link. Vai pra blogs cheio de gatas, não entendi. Mando pesquisar e ele abre uma janela com "minhas pastas"... nunca vi isso!
Enviado: 05 Jan 2007 17:59
por diogenes_varela
Caros colegas,
De tanto insistir, consegui o que pretendia: ao iniciar o programa a tecla Winkey é DESATIVADA.
Ao encerrar o programa, a bendita tecla é automaticamente REATIVADA.
- Criei um arquivo .BAT que entra na pasta do wkeykill, roda-o, chama o programa para ser executado e reativa a tecla.
==
CD pasta
START wkeykill (desabilita a tecla)
VARELA (executa o programa)
START wkeykill (reabilita a tecla)
Mudei o ícone da área de trabalho para esse arquivo .bat.
Só que não está tudo bem... O programa está rodando lento.... como se o buffer estivesse entupido...
Mas isso é outra história... Eu saio dessa também...
Enviado: 05 Jan 2007 21:14
por Clipper
O que nos faz deduzir que :
Não existia nenhum problema com o comando start e sim com o wkeykill que não estava num path visivel por todo o sistema operacional.
O que acontecia é que o START tentava chamar o WKEYKILL que não era encontrado e retornava a mensagem COMANDO OU NOME DE ARQUIVO INVÁLIDO.
Para resolver o problema do NTVDM você deve usar alguma lib que libere o uso do processador, pois aí com certeza é o Clipper o gargalo, eu uso a FREETSLICE() para corrigir este problema, mas existem outras funções na OSLIB, NANFORUM e se não me engano na CLIPPER TOOLS, porém pelos testes do colega MALIGNO a que tem melhor desempenho é a FREETSLICE().
Ps. Quando não se tem os fontes pode-se usar o programa TAMEDOS para que se obtenha o mesmo efeito.
Até logo.
Marcelo
Enviado: 05 Jan 2007 21:28
por diogenes_varela
Clipper escreveu:O que nos faz deduzir que :
Não existia nenhum problema com o comando start e sim com o wkeykill que não estava num path visivel por todo o sistema operacional.
O que acontecia é que o START tentava chamar o WKEYKILL que não era encontrado e retornava a mensagem COMANDO OU NOME DE ARQUIVO INVÁLIDO.
Não, Marcelo, o comando que não era encontrado era exatamente o START que é um comando interno. Tentei usá-lo sem parâmetros (apenas o START) e não foi encontrado. Isso quer dizer exatamente o contrário, que o problema não é o wkeykill.
A solução foi criar um atalho para um arquivo .BAT que chamava o wkeykill e depois o meu executável. Só assim funcionou.
Para resolver o problema do NTVDM você deve usar alguma lib que libere o uso do processador, pois aí com certeza é o Clipper o gargalo, eu uso a FREETSLICE() para corrigir este problema, mas existem outras funções na OSLIB, NANFORUM e se não me engano na CLIPPER TOOLS, porém pelos testes do colega MALIGNO a que tem melhor desempenho é a FREETSLICE().
Ps. Quando não se tem os fontes pode-se usar o programa TAMEDOS para que se obtenha o mesmo efeito.
Até logo.
Marcelo
Estive verificando o TAME mas consegui resolver da forma que relatei no problema de outro colega aqui no fórum.
https://pctoledo.org/forum/viewto ... 0980#20980
Graças a minha teimosia, acabou ficando da forma como eu sempre achei que seria possível:
1. A tecla causava transtornos - ao esbarrar nela o menu iniciar era aberto e o programa ficava reduzido a um botão na barra de tarefas.
99% dos usuários davam um duplo clique no ícone do programa para abri-lo novamente. Não se dão ao trabalho de clicar no botão da barra de tarefas.
Agora a tecla é ELIMINADA quando o programa é aberto e retorna ao funcionamento normal quando o programa é encerrado.