[dev-italia] Osmosis e c#

Stefano Fraccaro stefano.fraccaro a gmail.com
Mer 22 Gen 2014 11:11:12 UTC


Osmosis salva tutto su file, controllo lo standard output esattamente 
come indicato in questi link solo per verificare eccezioni di memoria 
esaurita o robe simili.
Il codice che uso  questo:

             Process MyProc = new Process();
             MyProc.StartInfo.FileName = exeName;
             MyProc.StartInfo.Arguments = parameters;
             MyProc.StartInfo.WorkingDirectory = 
Environment.CurrentDirectory;
             MyProc.StartInfo.UseShellExecute = false;
             MyProc.StartInfo.RedirectStandardError = true;
             MyProc.Start();
             if (timeout == -1) {
                 MyProc.WaitForExit();
                 Console.WriteLine (MyProc.StandardError.ReadToEnd ());
             } else {
                 MyProc.WaitForExit(timeout);
             }


I parametri di osmosis, sia da terminale che da c#, sono:

osmosis --read-pbf file=/home/stef/veneto.pbf --tf accept-relations 
boundary=administrative --tf accept-relations admin_level=8 --tf 
accept-relations name=Castelfranco\ Veneto --uw --un  --write-xml 
file=tmp.xml

Il file tmp.xml ottenuto dal terminale  ok, quello ottenuto da C#  
sbagliato (praticamente senza dati).


Il 22/01/2014 09:06, sabas88 ha scritto:
>
> Potresti provare a far stampare i risultati di osmosis su stdout e 
> vedere cosa fa... 
> http://stackoverflow.com/questions/878632/best-way-to-call-external-program-in-c-sharp-and-parse-output
> Lo standard error leggi quello del tuo programma o quello di osmosis? 
> http://stackoverflow.com/questions/206323/how-to-execute-command-line-in-c-get-std-out-results 
>
>




Maggiori informazioni sulla lista dev-italia