2009-08-07 13 views
1

ist es möglich? irgendwelche Proben/Muster oder Ideen, wie man das macht?. Net-Konsole App mit Hyperlinks?

Update - diese im Wesentlichen einen Textbrowser wird die

jetzt statt der Eingabe verschiedene Befehle wie

Prompt verschiedenen Befehle an der Eingabeaufforderung auf der Grundlage verschiedene Tabellen von Informationen anzeigt, wie die URL in einem Browser eingeben> Befehl arg1 arg2 wenn nur könnte man sagen, „Klick“ auf den Text in einer bestimmten „Spalte“/„Zeile“, die den Befehl ausführen würde sagen

prompt> commandX arg1

würde es etwas schneller/einfacher

nun sein, bevor jemand erwähnt, ich habe bereits eine typische Browser/asp.net Mvc/was auch immer app tun, dass läuft, aber haben einige Einschränkungen esp angetroffen. mit Zugriff auf Netzwerkdateien. usw. Nun, da ein Service-Broker-Service verwendet wird, der die Datei usw. liest, aber zahlreiche Erweiterungen hinzugefügt hat, wäre es etwas einfacher, wenn Sie die App einfach als Konsolen-Eingabeaufforderung mit einem MVC-Muster ausführen und hinzufügen könnten Erweiterungen usw.

Wenn nur der Text anklickbar ist, würde es für den Gebrauch freundlicher machen !!

Antwort

5

Die Shell des Fensters unterstützt keine anklickbaren Hyperlinks, also nein, das ist nicht möglich.

Was möchten Sie tun, dass Hyperlinks in der Befehlsshell erforderlich sind? Vielleicht wäre diese Anwendung besser als WinForms/WPF oder ASP.NET-Anwendung gebaut.

+0

+1 für die Richtigkeit, obwohl ich die Windows-Shell wünschen Hyperlinks Unterstützung haben, wie es in Linux tut ... es ist manchmal nützlich –

+3

Die "Linux-Shell" unterstützt keine anklickbare Hyperlinks. Ihr Konsolen-Emulator (Konsole, Terminal, KTerm oder was auch immer) tut dies. – Tordek

+0

siehe oben für Details – Kumar

3

Angenommen, keine Maus, würde ich nur die URL als einen neuen Prozess basierend auf einigen Tastaturauslöser starten.

//this will launch the default browser  
ProcessStartInfo psi = new ProcessStartInfo("http://stackoverflow.com"); 
Process p = new Process(psi); 
p.Start(); 
+1

sieht aus wie das Q war nicht klar ....Das Ziel ist anklickbaren Text in der Konsole App – Kumar

+0

, die immer noch eine ausgezeichnete Arbeit ist. Guter Gedanke. – keyle

+1

Ich glaube nicht, dass dieser Code in .NET funktionieren wird. 4.5 Process() scheint ProcessStartInfo nicht mehr als Argument zu verwenden. Sie müssen es als Eigenschaft festlegen. Am Ende habe ich folgendes gemacht: Process.Start ("IExplore.exe", show.ResultsURL); –

1

Ich weiß nicht, was ein „Hyperlink“ für Sie ist, sondern im Rahmen einer Konsole-Anwendung, können Sie Zahlen oder Buchstaben, die Sie den Benutzer erwarten drücken

(man stelle sich ein einfaches Menü mit drei Optionen)

Press one option 

1 - Open ServerFault 
2 - Open StackOverflow 
3 - Open SuperUser 

und im readline- haben Sie einen Schalter, dass start the IExplorer process zum Beispiel und die Webseite öffnet.

Ist das, was Sie in Bezug auf "Hyperlinks in einer Konsolenanwendung" nennen?

+0

Ich hatte gehofft, irgendeinen Text irgendwie klickbar zu machen/mit einer anderen Farbe zu rendern und dann verschiedene Aktionen auszuführen, basierend auf welchem ​​Text geklickt wird, ähnlich wie eine HTML-Tabelle auf einer Webseite und Klick auf verschiedene Spalten/Zeilen führt verschiedene Aktionen/URLs etc. aus. – Kumar

1

Für eine Vorstellung dessen, wie es aussehen kann, erhalten Sie eine Kopie von links. Es ist ein Textmodus Webbrowser, der in mehreren Betriebssystemen einwandfrei funktioniert.

+0

hinzugefügt mehr Details oben, warum ein Browser hier nicht ausreicht – Kumar