【发布时间】:2011-05-05 20:23:55
【问题描述】:
我有 .NET 应用程序并希望允许用户编写宏。
任何易于使用的语言都可以。
但是,我不想编写编译器、解释器、调试器。
我知道网上有很多选择,但大多数解决方案看起来都很笨拙。
我最好的选择是什么?
【问题讨论】:
标签: c# .net scripting .net-3.5 .net-4.0
我有 .NET 应用程序并希望允许用户编写宏。
任何易于使用的语言都可以。
但是,我不想编写编译器、解释器、调试器。
我知道网上有很多选择,但大多数解决方案看起来都很笨拙。
我最好的选择是什么?
【问题讨论】:
标签: c# .net scripting .net-3.5 .net-4.0
您可能想查看Visual Studio Tools for Applications (VSTA)。几年前我看过这个。它就像一个新版本的 VBA,除了最终用户可以使用任何 .NET 语言进行编程并使用 .NET 框架基类库。此外,您还可以分发类似于 Visual Studio 的 IDE,包括编译器和调试器。
【讨论】:
如果你不想写任何东西,你应该使用许多已经存在的scripting languages之一。
如果“宏”是指记录用户输入、单击按钮等,则应调查 .Net UI Automation。这还允许用户通过语音识别或屏幕阅读器等辅助技术运行您的应用程序。
【讨论】:
您可以使用 C# 代码编写脚本,并在运行时使用 CSharpCodeCompiler 编译它们。但是,在我将编写的下一个使用脚本的应用程序中,我可能会考虑通过DLR(动态语言运行时)添加此类支持。这允许您(例如)在 IronPython 中编写脚本。这是一个example。
【讨论】: