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... :D

Até logo.

Marcelo

Enviado: 05 Jan 2007 15:13
por diogenes_varela
Clipper escreveu:
Para não precisar procurar, lá vai o link novamente...

http://www.sistemabr2.cjb.net/execute.zip
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.