Domanda

Non sono mai stato un fan della riga di comando di Windows. Ho provato strumenti come powercmd e mi sono piaciuti, ma molti non sono distribuiti gratuitamente e non mi piace l'idea di pagare qualcosa che penso di poter scrivere da solo. Voglio scrivere il mio wrapper a riga di comando simile a powercmd che consente queste proprietà:

  • Caratteri e colori personalizzati
  • Opacità di Windows
  • Più finestre aperte contemporaneamente in un pannello (forse come la navigazione a schede)
  • Possibilità di ridimensionare le finestre

Sto contattando voi ragazzi ora per aiutarmi a decidere se dovrei provare questo con C # in Visual Studio o se dovrei farlo in Java con Swing. Sono a mio agio con entrambi. Qualcuno ha mai fatto un wrapper a riga di comando come questo? In tal caso quale lingua hai usato e qual è stata la tua esperienza? Grazie per qualsiasi feedback.

Grant -

È stato utile?

Soluzione

Da quando me l'hai chiesto, ne ho scritto uno anch'io in C # - la classe Process è solo troppo utile. La cosa principale qui è il reindirizzamento I / O. Anche se non l'ho mai gestito completamente da solo, ne hai bisogno in modo che l'output del sottoprocesso non appaia in un'altra finestra della console. Puoi anche uccidere i programmi, trovare quelli esistenti, ecc.

Inoltre, la manipolazione della console di C # è molto utile.

Anche se non sono un programmatore Java, posso immaginare che entrambe queste importanti funzionalità sarebbero piuttosto difficili da usare, considerando che Java è indipendente dalla piattaforma.

Altri suggerimenti

Se vuoi fare una riga di comando di Windows, consiglierei C #. L'indipendenza forzata della piattaforma Java ti farà combattere troppo per trasmettere comandi al sistema operativo sottostante.

Esiste già Console2 che colpisce i grandi punti elenco : caratteri ridimensionabili, opacità, schede, caratteri modificabili .

È scritto in C ++ e avvolge cmd.exe (o qualsiasi shell di comando che gli dici di usare), quindi questi potrebbero essere due avvertimenti se sei veramente interessato a sviluppare la tua shell in un linguaggio gestito .

C # ha diversi vantaggi rispetto a Java per questo tipo di progetto, non ultimo quello di una migliore integrazione con Windows, che è (presumibilmente) l'unica piattaforma per cui lo stai sviluppando. La libreria Java Swing non è così ottimizzata per quanto riguarda le macchine Windows come tendono ad essere le forme C #, e con la possibilità di usare WPF, C # mi sembra il chiaro vincitore.

Non userei Java e Swing per questo. C # ti consentirà di comunicare direttamente con il framework .Net e ti consentirà di creare uno strumento da riga di comando più potente. L'IT sarà una seccatura per ottenere l'accesso Java ad alcune chiamate di sistema di Windows.

Volevo solo farvi sapere che ho finito per scrivere un wrapper a riga di comando con C #. Si è rivelato davvero bene. Ho un altro paio di piccole cose che voglio aggiungere e quindi inserirò il codice sorgente e un posto dove scaricare .exe. Ho pubblicato un video in azione nel caso in cui qualcuno volesse fornire feedback o idee. Grazie per l'aiuto.

http://www.youtube.com/watch?v=-NM -XcYwLDc

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top