2009-08-07 7 views
1

それは可能ですか?どのようなサンプル/パターンやアイデアをどのようにそれについて行く?.netコンソールアプリにハイパーリンクが付いていますか?

更新

- これは、本質的に代わり

プロンプト>のような様々なコマンドを入力するので

今ブラウザにURLを入力するようプロンプト上で各種のコマンドに基づいて情報の各種テーブルを表示するテキストブラウザとなり コマンド引数1のarg2に コマンドを実行するだろう/「行」は言う特定の「列」のテキストに「クリック」と言うことができる場合にのみ

プロンプト> commandX arg1に

それはやや速く/簡単になるだろう

今、誰かが典型的なブラウザ/ asp.net mvc /どんなアプリをやっていると言われる前に、私はすでにその実行を持っていますが、いくつかの制限があります。ネットワークファイルにアクセスします。今では、ファイルなどを読み込むサービスブローカーサービスを使用していますが、多数の拡張機能が追加されているので、mvcパターンでコンソールプロンプトとしてアプリケーションを実行して、拡張機能など

テキストのみがクリック可能な場合は、使いやすくなります。

答えて

5

ウィンドウのシェルはクリック可能なハイパーリンクをサポートしていないため、これは不可能です。

これは、コマンドシェルでハイパーリンクが必要であることを保証しようとしていますか?おそらく、このアプリケーションは、WinForms/WPFまたはASP.NETアプリケーションとして構築されたほうがよいでしょう。

+0

+1、私はそれは、LinuxでないようにWindowsシェルは、サポートのハイパーリンクをした希望が、...それは時々 –

+3

「Linuxのシェルは」クリッカブルハイパーリンクをサポートしていません便利です。あなたのコンソールsmulator(コンソール、ターミナル、KTerm、または何でも)。 – Tordek

+0

詳細については上記を参照してください – Kumar

3

マウスがないと仮定すると、キーボードトリガーに基づいて新しいプロセスとしてURLを起動するだけです。

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

Qが明らかでないように見えます....目標は、コンソールアプリケーション – Kumar

+0

でクリック可能なテキストを表示することです。これはまだ素晴らしい回避策です。いい考え。 – keyle

+1

このコードは.NET 4.5では動作しないと思います。Process()は引数としてProcessStartInfoを使用していないようです。プロパティとして設定する必要があります。私は実際に次のことをしてしまった。 Process.Start( "IExplore.exe"、show.ResultsURL); –

1

私は、「ハイパーリンク」は、あなたのために何であるかわからないが、コンソールアプリケーションのコンテキストで、あなたは

(想像を押すようにユーザーを期待している数字や文字を持つことができます3つのオプション)

Press one option 

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

、あなたが例えばstart the IExplorer processスイッチを持っており、Webページを開くのreadlineのあるシンプルなメニュー。

「コンソールアプリケーションのハイパーリンク」について言いたいことはありますか?

+0

どういうわけか、特定のテキストを異なる色でレンダリング/レンダリングし、次にどのテキストがクリックされたかに基づいて異なるアクションをとることを望んでいました。ウェブページ上にHTMLテーブルを持ち、さまざまな列/行をクリックすると、 – Kumar

1

どのように見えるかを知りたい場合は、linksのコピーを手に入れてください。いくつかのオペレーティングシステムでうまく動作するテキストモードのWebブラウザです。

+0

は、ここでブラウザが十分でない理由について上記の詳細を追加しました – Kumar

関連する問題