带有超链接的.NET控制台应用程序?

3
有可能吗?有关于如何进行的样例/模式或者想法吗?
更新- 本质上,这变成了一个文本浏览器,它基于提示符上的各种命令显示各种信息表,例如在浏览器中键入URL。
现在,不需要输入各种命令,例如: prompt>command arg1 arg2 如果您只能在某个“列”/“行”中点击文本,就可以执行该命令说 prompt>commandX arg1
这将更快/更容易。
现在,在有人提到要做一个典型的浏览器/asp.net mvc/任何应用程序之前,我已经运行了它,但遇到了一些限制,特别是访问网络文件等。现在使用服务代理服务来解决了这个问题,它可以读取文件等等。但是,如果您可以将应用程序作为控制台提示符运行,并添加扩展等等,那么它会更加容易。
如果只有文本可点击,那么它将更加友好易用!!
5个回答

6
假设没有鼠标,我只需根据某个键盘触发器启动URL作为一个新进程。
// this will launch the default browser    
ProcessStartInfo psi = new ProcessStartInfo("https://stackoverflow.com");
Process p = new Process(psi);
p.Start();

VB语法:

// this will launch the default browser
Dim psi = New ProcessStartInfo("https://stackoverflow.com")
Dim p As Process = Process.Start(psi)

1
看起来问题不太清楚...目标是在控制台应用程序中有可点击的文本。 - Kumar
1
我认为这段代码在.NET 4.5中不会起作用。Process()似乎不再将ProcessStartInfo作为参数了...你需要将其设置为属性。最终我实际上是按照以下方式完成的:Process.Start("IExplore.exe", show.ResultsURL); - Jay Stevens
1
@JayStevens:谢谢你提供的信息!4.5版本中Process.Start的一些重载非常不错! - Austin Salonen

5
窗口的外壳不支持可点击超链接,因此不可能实现。您想要使用命令行窗口中的超链接做什么?也许用WinForms/WPF或ASP.NET应用程序构建会更好些。

+1 点赞准确无误,尽管我希望 Windows Shell 能像 Linux 一样支持超链接...有时候这很有用。 - Max Schmeling
3
“Linux shell” 不支持可点击的超链接。您的控制台模拟器(例如 Console、Terminal、KTerm 等)可以实现该功能。 - Tordek

1
我不知道“超链接”对你来说是什么,但在控制台应用程序的上下文中,你可以有数字或字母,期望用户按下它们。
(想象一个简单的菜单,有3个选项)
Press one option

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

在readline中,你可以使用一个开关启动IExplorer进程,例如打开网页。

这就是你所谓的“控制台应用程序中的超链接”吗?


我希望以某种方式使特定文本可点击/呈现不同颜色,然后根据所点击的文本执行不同的操作,类似于在网页上有一个HTML表格,单击各列/行会执行不同的操作/ URL等。 - Kumar

1

如果想要了解它的外观,可以获取链接的副本。这是一个文本模式的网络浏览器,在多个操作系统中都能正常工作。


在这里,浏览器不足以满足需求的原因上面已经添加了更多细节。 - Kumar

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接