Solução alternativa com caminhos no Vista

2

Eu tenho um .exe em execução no meu PC com Windows XP.

Este .exe precisa de um arquivo no mesmo diretório para ser executado e não tem problema em encontrá-lo no Windows XP. Mas, no Windows Vista (eu tentei isso em várias máquinas e funciona em alguns deles) não consegue executar.

Eu estou supondo que há um problema em encontrar o caminho. O programa está escrito em básico (Sim eu sei ..)

Anexei o código abaixo. Você consegue pensar em alguma solução alternativa?

O .exe está localizado em C:\tools Além disso, o programa é executado no console do Windows (Ele inicia, mas durante a execução não pode encontrar um tipo de arquivo personalizado .TOP feita pelo criador do programa)

     '   PROGRAMM  TOP11.BAS



DEFDBL A-Z
CLS
LOCATE 1, 1
COLOR 14, 1
FOR I = 1 TO 80
   PRINT "±";
NEXT I
LOCATE 1, 35: PRINT "ΝΝ TOP11 ΝΝ"
PRINT "    €€‚—‚„‘ ’— ‹„’†‘„— ‘’† „”€„€ ’†‘ ‡€€‘‘†‘ ‰€ † „.‚.‘.€.     "
COLOR 7, 0
PRINT "-------------------------------------------------------------------------------"
PRINT
INPUT "ƒι©« «¦¤ ©¬¤«Ά©«γ ¤ΰγ... :  ", Factor#
INPUT "¤¦£ ¨®ε¦¬ [.TOP] : ", topfile$
VIEW PRINT 7 TO 25
file1$ = topfile$ + ".TOP"
file2$ = topfile$ + ".T_P"
file3$ = "Syntel"
OPEN file3$ FOR OUTPUT AS #3
PRINT #3, " ‘¬¤«Ά©«γ ¤ΰγ = " + STR$(Factor#) + "   †‹„‹†€: " + DATE$
CLOSE #3

command1$ = "copy" + " " + file1$ + " " + file2$
SHELL command1$   '’¦ ¨®ε¦ .TOP ¤« ¨α­«  £ «¤ ΅«αΆ¥ .T_P



OPEN file2$ FOR INPUT AS #1
OPEN file1$ FOR OUTPUT AS #2
bb$ = " \\    \ ,   ###.####   ###.####   ####.###    ##.### "
DO
         LINE INPUT #1, Line$
         Line$ = RTRIM$(LTRIM$(Line$))
         icode$ = LEFT$(Line$, 1)
        IF icode$ = "1" THEN
           Line$ = " " + Line$
           PRINT #2, Line$
           PRINT Line$
        ELSEIF icode$ = "2" THEN
           Line$ = " " + Line$
           PRINT #2, Line$
           PRINT Line$
        ELSEIF icode$ = "3" THEN
             Number$ = MID$(Line$, 3, 6)
             Hangle = VAL(MID$(Line$, 14, 9))
             Zangle = VAL(MID$(Line$, 25, 9))
             Distance = VAL(MID$(Line$, 36, 9))
             Distance = Distance * Factor#
             Height = VAL(MID$(Line$, 48, 6))
           PRINT #2, USING bb$; icode$; Number$; Hangle; Zangle; Distance; Height
           PRINT USING bb$; icode$; Number$; Hangle; Zangle; Distance; Height
         ELSE
        END IF

LOOP UNTIL EOF(1)
VIEW PRINT
CLS
LOCATE 1, 1
PRINT "               ***  ’„‘ ’“ ‚€‹‹€’‘ ***                "
END
    
por argiropoulostauros 17.01.2010 / 08:52

1 resposta

0

Uau!

Bem, meu primeiro palpite seria um problema de UAC (uso de controle de conta) , clique com o botão direito do mouse no arquivo e escolha Run as administrator e veja se funciona.

    
por 18.01.2010 / 10:12