Bibliotecas: MultiTester - página 57

 

Muito obrigado por suas dicas!

Consegui fazer uma entrada no robô, mas ela estava torta.

Desculpe-me por me dirigir a você novamente, mas eu mesmo não consigo entender a situação.

Escrevi um script com suas funções. Ele encontra o primeiro conjunto na pasta___SET e define corretamente seu nome 214-10000 HEX-449.set (nele prHEX=true) .

Em seguida, os comandos são executados:

Print (first_set_filename);

Print ("Load: " + (string)FileLoad(first_set_filename, Words,0)); // Print length ofthe read file FileName FILE_COMMON

Settings = ShortArrayToString(Words, 1); // 1 - Unicode

Print ("\nSettings \n", Settings);

Imprimir (MTTESTER::SetSettings(Settings));

O arquivo de configuraçõesimpresso é completamente diferente (ele tem prWPR=true). Não consigo entender de onde ele veio. E ele também foi carregado no robô, ou seja, o carregamento funcionou!!!, metade do problema foi resolvido, mas a configuração ainda está errada.

Qwen me disse para colocar o conjunto que estava sendo gravado nos arquivos de teste .

Eu fiz isso. Mas isso não ajudou. Por algum motivo, outro conjunto está registrado em Settings, não o que foi encontrado ao pesquisar first_set_filename :

214-10000 HEX-449.set.

Ele deve ter sido deixado em algum lugar na memória de execuções anteriores.

Por favor, ajude-me a entender o motivo disso.

Atenciosamente, Alexander

 
klycko #:

Print("Load: " + (string)FileLoad(first_set_filename, Words,0)); // Imprime o tamanho do arquivo lido FileName FILE_COMMON

FileLoad(first_set_filename, Words, FILE_COMMON)
 

Print("Load: " + (string)FileLoad(first_set_filename, Words,FILE_COMMON)); // Imprime o tamanho do arquivo lido FileName FILE_COMMON


Com essa alteração, ele imprime: Load: -1


 

Se você alterar um parâmetro nessa linha, então:

Quando FILE_COMMON Load : -1 As configurações não são impressas

Em 0Load: 3556As configurações não estão corretas (diferentes, não está claro de onde )

 
fxsaber FILE_COMMON)); // Imprime o tamanho do arquivo lido FileName FILE_COMMON.

Se você alterar o parâmetro nessa linha, então:

QuandoFILE_COMMON Load : -1 As configurações não sãoimpressas

Em 0Load: 3556As configurações não estão corretas (diferentes, não está claro de onde)

 
klycko #:

Por favor, me ajude a entender o motivo disso.

Além do que foi dito acima.

         Print("Save: " + (FileSave(source_path, Words, FILE_COMMON) ? (string)ArraySize(Words) : "error"));


Você precisa aprender a usar a depuração. Você verá o motivo em um minuto.

 
fxsaber #:
Você precisa aprender a usar a depuração. Você verá a causa em um minuto.

Obrigado por me enviar a linha de código corrigida.

Você está certo ao recomendar que eu aprimore minhas habilidades e aprenda a depurar. No entanto, mesmo sem usá-lo, claro que não em um minuto, mas em 2 a 3 horas, escrevi um script de depuração SetLoad usando as funções que você recomendou e, com a ajuda dele, descobri que o erro ocorre após a linha :

Print("Load: " + (string)FileLoad(first_set_filename, Words,0)) ;

Se você alterar o último parâmetro dessa linha, então:

QuandoFILE_COMMON Load: -1 As configurações não sãoimpressas

Em 0 Load: 3556 As configurações não estão corretas (diferentes, não está claro de onde vieram).

No momento, estou investigando o processo Load, portanto, interrompo o script com return imediatamente após a linha :

Print (MTTESTER::SetSettings(Settings));


Agora você me enviou a linha corrigida:

Print("Save: " + (FileSave(source_path, Words, FILE_COMMON) ? (string)ArraySize(Words) : "error")));

Coloquei isso no script e o compilei.

Mas ele não se refere ao processo de carregamento, mas ao processo de salvamento, e não tem efeito sobre o erro de carregamento de configurações, e ainda há configurações estranhas como resultado.

 
klycko #:

como resultado, ainda há configurações estranhas.

Primeira e segunda edição - e já está funcionando.