Šta je novo?

VB Shell call problem

Jerry[NS]

Slavan
Učlanjen(a)
03.04.2005
Poruke
941
Poena
319
Brat ima problem,pa me zamolio da ovo postujem umesto njega :

"Pravim hipotetski interpreter za neki hipotetski asm kod (za fax).
U vb-u pravim aplikaciju u ciji text box importujem c kod (za koji imam java kompajler da ga prevede u asm) i sve sto je potrebno je da vb pozove make.bat (u kojem se nalazi java mycc.parser code.c)...
ako se kod importuje iz istoimenog foldera nema problema pri pozivu Shell(App.Path & "\make.bat", vbNormalFocus) ali ako sam pre toga preko commondialoga loadova c kod fajl iz nekog drugog foldera, on mi u Shell pozivu otvori adresu tog prethodno otvaranog foldera i pokusava da izvrsi make.bat u tom folderu sto naravno java javlja kao no thread found exception odnosno no classdeffound exception.
Preko commondialoga dobijam filepath, taj fajl kopiram u moj folder odakle kopiram fajl u text box i (po zelji prepravljam) posle kad stisnem dugme on snimi taj kod u recimo kod_za_kompajl.c i poziva make.bat koji bi trebao da izparsira taj kod i prevede u asm (u javi sam podesio da cita bas taj filename "kod_za_kompajl.c")...

Zasto se shell poziva iz foldera odakle je kopiran C kod???? "
 
Neznam kako to ide u VB-u, ali fileopen dijalog uvek ostavlja aplikaciju u zadnjem otvorenom folderu. U .NET-u mislim da ima opcija da vrati originalni folder nazad. Mozda bi ipak bilo najbolje da prilikom starta VB programa pokupi pravo ime programa i odatle da izvuce path. U C/C++ se koristi API poziv GetModuleFileNameEx (u psapi.dll). Moze da se to resi i sa pozivom GetCurrentDirectory prilikom starta programa, ali nemora uvek da su start folder i folder gde je aplikacija identicni.
 
Nazad
Vrh Dno