1

Konu: run command

a='C:\ornek\ornek.exe'
RUN  &a     

normal çalışıyor



a='C:\program files\ornek dizin\ornek.exe'
RUN  &a     

ne yapmam lazım

teşekkürler

2

Re: run command

a='"'+'C:\program files\ornek dizin\ornek.exe'+'"'
RUN (&a)

Karakter katarının başına ve sonuna " işaretini ekleme için +' " ' kullanırsan çözülecektir.
Yani a="C:\program files\ornek dizin\ornek.exe" haline getirmeye çalışıyoruz.

3

Re: run command

veya aşağıdaki kodla boşlukları kaldırıp dizin isimlerini dos formatına çevirebilirsin.

Visual Fox Pro
abc = KisaDizinAdi("c:\program files\InstallShield Installation Information")

 
?abc
 
FUNCTION KisaDizinAdi
LPARAMETER lcPath
 
    DECLARE INTEGER GetShortPathName IN kernel32;
        STRING    lpszLongPath,;
        STRING  @ lpszShortPath,;
        INTEGER   cchBuffer
 
    lcPath = lcPath
    lcshortname = SPACE(260)
    lnlength = LEN(lcshortname)
    lnresult = GetShortPathName(@lcPath, @lcshortname, lnlength)
    IF lnResult = 0
        RETURN ""
    ENDIF
RETURN LEFT(lcShortName,lnResult)

4

Re: run command

aslında komut biraz karmaşık

a='C:\TW\TW.EXE /N  -PC:\TW\N.RVG\N0000001 -N0000001'
RUN &a

boyle bir komut kumesi sorunsuz çalışıyor

fakat

a='C:\program files\TW\TW.EXE /N  -PC:\program files\TW\N.RVG\N0000001 -N0000001'
RUN &a

bu komut kumesi çalışmıyor


tw.exe çalışan programın adı   bunu  fox içinden tw.exe /N  yapıyorum

-PC:\program files\TW\N.RVG\N0000001 -N0000001    tw.exe isimli programa giden parametreler

çok şey denedim ama yapamadım

Ben bunu alltaki biçimde dolaylı olarak çözüyorum.
windows dan ağ sürücüsüne bağlan komutundan ' C:\program files\TW\ '  dizinini   Z diye tanım yapıyorum daha sonra bütün işlemlere  Z üzerinden devam ediyorum derdim çözülüyor


normal yolla komut kumesi nasıl değiştirilmeli fikri olan varmı

teşekkurler

5

Re: run command

Visual Fox Pro
DECLARE INTEGER ShellExecute IN shell32.dll ; 

  INTEGER hndWin, ;
  STRING cAction, ;
  STRING cFileName, ;
  STRING cParams, ; 
  STRING cDir, ;
  INTEGER nShowWin
 
lCurDir = CURDIR()
lProgAdi = "C:\program files\TW\TW.EXE"
lParametreler = "/N  -P C:\program files\TW\N.RVG\N0000001 -N0000001"
lIslem = "open"
CD \
=ShellExecute(0, lIslem, lProgAdi, lParametreler, "", 0)
CD (lCurDir)

Birde bunu dene, "Program files" sorun çıkarabili, daha önce verdiğim örnekle kısa haline çevir.

6

Re: run command

KOMUT='! "C:\program files\TW\N.RVG\N0000001 -N0000001" '
&komut

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

7

Re: run command

Visual Fox Pro
a=[ 'C:\program files\ornek dizin\ornek.exe' ]

RUN  &a

8

Re: run command

ShellExecute kullan Cetin'in gosterdigi gibi.