Eli on tuommoinen .exe tiedosto mihin pitää vastata kymmeniin kysymyksiin jonka jälkeen se muuntaa tiedostot eri muotoihin, eli miten voin "automatisoida prosessin" ja saada yhteen kysymykseen vastaamalla tuotoksen valmiiksi? ajattelin että .bat voisi toimia mutta tiedot loppui kesken..
Mikäli muistan oikein, niin ei onnistu. bat voi käynnistää exen (ja menee pauselle) ja kun exe on hommansa tehnyt, bat jatkaa seuraavaa komentoa. bat ei osaa kommunikoida exen kyselyihin Pitäis olla exe johon saat käynnistysparametreinä syötettyä ne, mitä se myöhemmin kyselee. Haluamasi vastaukset kysymyksiin. Tai semmoiseen luotua if-then-else tyyliin yhden batin joka kysyy ekana 'mihin muotoon muunnetaan' ja yhdellä vastauksella se sitten syöttelee exelle oikeat arvot parametreinä, niihin exen "let's play ten questions".
Vitun vittu.. :S mun pitää painaa 65näppäintä et saan yhen tiedoston muutettuu.. just laskin.. Kellään mtn muita ideoita?:O ei ota käynnistysparametrejä vastaan :S
Eikö ota pipelläkään komentoja? ECHO ON SET arg1=Y SET arg2=N SET arg3=5 (ECHO %arg1% ECHO %arg2% ECHO %arg3%) | converter.exe jotenkin noin. Voit joutua hiukan pelaamaan noitten merkkien kanssa, esim. echo saattaa tarvita pisteen peräänsä echo. %parametri1% jne
Ja jos hieman tarkemmin erittelisi mistä ohjelmasta ja mistä muunnoksesta on kysymys, niin tiedä mitä toimivia vastauksia voisikaan tulla...
Jos pipe(|) tai input(<) ei jostain syystä toimi(tosta <:sta en oo varma mutta | pitäisi ainakin toimia), niin erillisellä softalla sitten vaan: http://expect.nist.gov/#windows)
Tälläisellä koodilla: Koodi: ECHO ON ECHO xmin (kaksi nroa)? SET /P xmin= ECHO ymin (kaksi nroa)? SET /P ymin= SET arg1=5 SET arg2= SET arg3=l SET arg4=%xmin%000 %ymin%000 SET arg5=1000 1000 SET arg6=ka1 SET arg7= SET arg8=e SET arg9=1000 SET arg10=xcity.pdl SET arg11=1 SET arg12= SET arg13= SET arg14=0.2 SET arg15=1.0 SET arg16= SET arg17=k SET arg18=%xmin%%ymin% SET arg19=4 SET arg20=0 SET arg21=0.2 SET arg22=e SET arg23= SET arg24= SET arg25= (ECHO %arg1% ECHO %arg2% ECHO %arg3% ECHO %arg4% ECHO %arg5% ECHO %arg6% ECHO %arg7% ECHO %arg8% ECHO %arg9% ECHO %arg10% ECHO %arg11% ECHO %arg12% ECHO %arg13% ECHO %arg14% ECHO %arg15% ECHO %arg16% ECHO %arg17% ECHO %arg18% ECHO %arg19% ECHO %arg20% ECHO %arg21% ECHO %arg22% ECHO %arg23% ECHO %arg24% ECHO %arg25%) | \\compaq8\Tekla\Xcity\Main\Bin\XcityKlpi.exe Valitsee oikein 5:tosen, mutta ei tajua että tyhjässä pitää painaa entteriä ja jumittaa kakkoskohtaan ja toistaa vaan, että: Suunnitelman nimi <oletus <ret> = ei>: Suunnitelmaa ei ole olemassa! Apuaaa, mikä on entterin komento vai mitääää määä teen?;(((((
Ohjelma on Xcity:n apuohjelma XcityKlpi ja muuntaa osan kartasta .jpeg muotoon joka mm valitaan kyseisessä ohjelmassa..
Toimiiko kuitenkin jos annat sille jonkun arvon? Jos nyt oikein ymmärsin niin pelkkä enter antaa defaultin, joka tässä tapauksessa on ilmeisesti "ei". Joten mikset vain pistä tuohon tyhjän tilalle "ei"? Edit: Tuli mieleen, että onko kyseessä varmasti dos vai windowsin command prompt? Jos jälkimmäinen, kokeile tätä: Klikkaa oikealla my computer -> properties -> advanced tabi -> enviroment variables pistä variablen nimeksi esim. CR tai mitä ikinä. Laita numlock päälle, mene value kenttään, ja kirjoita numpadilla ALT pohjassa 10. (eli alt - 1 - 0) merkiksi pitäisi tulla laatikko. klikkaa ok. Nyt voit .batissa kutsua tuota merkkiä: %CR%, jonka pitäisi olla carriage return eli enterin painallus. Lukeeko bat sen tässä tapauksessa vain rivinvaihdoksi tuon setin jälkeen vai asettaako se tuon muuttujalle arvoksi, en ole varma, mutta kokeile. edit2: Jos ei onnistu, kokeile laittaa %CR% heittomerkkeihin, eli "%CR%" edit3: Sori edittien määrä, kirjottelen sitä mukaa kun tulee mieleen. luultavasti paras ratkaisu: Kokeile vaihtaa tuo "echo %arg2% -> echo. eli echo piste ilman välilyöntiä ja ilman tuota argumenttia. Vaihtoehtoisesti echo %cr% jos sait tuon variablen asetettua.
kokeiltu on ei eikä muut sellaiset toimi :S kokeilin tuota %cr% hommaa eikä sekään toiminut :S eikä echo. toiminut ;(
Vastaako se kuitenkin "ei" siihen tokaan vai mitä? Eli lähinnä näyttääkö siltä ettei ensimmäisen argumentin jälkeen tieto mene enää läpi? Vai käykö se noi kaikk argumentit kuitenkin läpi? Voisitko copy pastea palan siitä ohjelman outputista?
Käy kaikki argumentit läpi ja Suunnitelman nimi <oletus <ret> = ei>: Suunnitelmaa ei ole olemassa! tulee 24 kertaa ja sen jälkeen vielä kerran Suunnitelman nimi <oletus <ret> = ei>: ja sitten .bat lopettaa
Koodi: C:\Temp>xcityklpi.bat C:\Temp>ECHO ON C:\Temp>ECHO xmin (kaksi nroa)? xmin (kaksi nroa)? C:\Temp>SET /P xmin= 38 C:\Temp>ECHO ymin (kaksi nroa)? ymin (kaksi nroa)? C:\Temp>SET /P ymin= 44 C:\Temp>SET arg1=5 C:\Temp>SET arg2=jou.txt C:\Temp>SET arg3=l C:\Temp>SET arg4=38000 44000 C:\Temp>SET arg5=1000 1000 C:\Temp>SET arg6=ka1 C:\Temp>SET arg7= C:\Temp>SET arg8=e C:\Temp>SET arg9=1000 C:\Temp>SET arg10=xcity.pdl C:\Temp>SET arg11=1 C:\Temp>SET arg12= C:\Temp>SET arg13= C:\Temp>SET arg14=0.2 C:\Temp>SET arg15=1.0 C:\Temp>SET arg16= C:\Temp>SET arg17=k C:\Temp>SET arg18=3844 C:\Temp>SET arg19=4 C:\Temp>SET arg20=0 C:\Temp>SET arg21=0.2 C:\Temp>SET arg22=e C:\Temp>SET arg23= C:\Temp>SET arg24= C:\Temp>SET arg25= C:\Temp>( ECHO 5 ECHO jou.txt ECHO l ECHO 38000 44000 ECHO 1000 1000 ECHO ka1 ECHO ECHO e ECHO 1000 ECHO xcity.pdl ECHO 1 ECHO ECHO ECHO 0.2 ECHO 1.0 ECHO ECHO k ECHO 3844 ECHO 4 ECHO 0 ECHO 0.2 ECHO e ECHO ECHO ECHO ) | \\compaq8\Tekla\Xcity\Main\Bin\XcityKlpi.exe Xcity V6.40-01 (23.1.2009) / Tekla Oyj 1. Karttatulosteen tulostaminen 2. Karttatulosteen tulostaminen sijoittelumallista 3. Kartan piirtäminen DIP-tiedostoon 4. Kartan piirtäminen taustakuvaksi (SYM) 5. Kartan piirtäminen rasterikuvatiedostoon koordinaattimuunnoksella 0. Lopetus Numero: Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): Suunnitelmaa ei ole olemassa! Suunnitelman nimi (oletus <ret> = ei): C:\Temp>
se siis valittaa että suunitelmaa jou.txt ei ole olemassa. Sellainen siis kuitenkin on olemassa? Mitä tapahtuu jos tuon ECHO jou.txt:n tilalla on ECHO. ? Suunnitelmaa ei ole olemassa? Kokeile ottaa kaikki echot pois lukuunottamatta kahta ensimmäistä, mitä silloin tapahtuu? edit: Eli jos siis käynnistät tuon exen käsin ilman tuota battia ja syötät tuohon suunnitelmakohtaan "jou.txt" niin sekö toimii?
ei toiminut tyhjänä eikä niin että laittoi siihen "linkin" tekstitiedostoon jossa oli rivinvaihto, ei toiminut. ja käsin ei jatka muulla kuin entterillä. evho. ei toimi. aamulla 2h tein sitten batin joka kysyy 4nroa ja avaa sen jälkeen tekstitiedoston jossa on vastaukset kaikkiin 200 vaihtoehtoon,eli Koodi: cd C:\temp ECHO aluenro (4nroa)= SET /P xymin= \\compaq8\Tekla\Xcity\Main\Bin\XcityKlpi.exe <\\compaq8\Tekla\Xcity\Main\Bin\files\%xymin%.txt Suurkiitos kaikille =)