小编Cae*_*nog的帖子

在.net Exception中如何获取带有参数值的堆栈跟踪

我试图在.net(c#)中添加一个未处理的异常处理程序,该处理程序对于'user'应该尽可能有用.最终用户大多是程序员,所以他们只需要暗示他们操纵错误的对象.

当应用程序崩溃时,我正在开发类似于Windows XP错误报告的窗口,但是尽可能多地提供关于抛出的异常的中间信息.

虽然堆栈跟踪使我(因为我有源代码)能够查明问题的根源,但是用户没有它,因此它们在没有进一步信息的情况下丢失.不用说我必须花很多时间来支持这个工具.

有一些系统异常,如Dictionary集合抛出的KeyNotFoundException,它真的让我感到烦恼,因为它们没有在消息中包含未找到的密钥.我可以使用大量的try catch块来填充我的代码,但它相当激进并且需要维护更多的代码,更不用说更多的字符串必须最终被本地化.

最后一个问题:有没有办法获得(在运行时)调用堆栈跟踪中每个函数的参数值?仅这一点就可以解决90%的支持电话.

.net c# exception

39
推荐指数
4
解决办法
2万
查看次数

列出所有可用的.NET程序集

列出所有可用的.NET 2.0程序集的最佳方法是什么?

所需列表的一个示例是当您在.NET选项卡中执行"添加引用..."时,MS Visual Studio会显示一个.

我读过Visual Studio使用自己的目录配置和GAC另一个和.NET安装另一个.有关如何以计算机可移植方式知道此目录的位置的任何想法(例如,另一台计算机可能在D:驱动器中安装了Windows)?

从列出的信息来看,它必须是Assembly.Loadxxxx()它.

注意:它应该以编程方式完成,而不是使用gacutil(例如,除非它提供了C#API).所有这一切的目的是创建一个自定义动态脚本编辑器,以便您了解获取此信息的必要性.

.net legacy assemblies

11
推荐指数
1
解决办法
5682
查看次数

转移减少冲突

我在理解移位/缩小语法的问题时遇到了问题,我知道语法没有歧义.这个案例是if else类型之一,但它不是'悬空的'问题,因为我有强制的END子句来分隔代码块.

这是gppg的语法(它是一个像编译器编译器一样的Bison ......而且它不是一个echo):

%output=program.cs

%start program

%token FOR
%token END
%token THINGS
%token WHILE
%token SET
%token IF
%token ELSEIF
%token ELSE
%%

program : statements
        ;

statements : /*empty */
           | statements stmt
           ;

stmt : flow
     | THINGS
     ;

flow : '#' IF '(' ')' statements else
     ;

else : '#' END
     | '#' ELSE statements '#' END
     | elseifs
     ;

elseifs : elseifs '#' ELSEIF statements else
        | '#' ELSEIF statements else
        ;
Run Code Online (Sandbox Code Playgroud)

这是冲突输出:

// Parser …
Run Code Online (Sandbox Code Playgroud)

grammar conflict gppg

10
推荐指数
1
解决办法
9198
查看次数

appdomain可以限制在一个目录中吗?

我正在开发一个插件主机.插件应该具有他们需要的尽可能少的信任,但是我希望插件可以读取和写入文件.

加载程序集的AppDomain是否可以限制只能访问一个目录进行读写?

其他选项和方法也很受欢迎,例如将文件数据从主机流式传输到插件(读取)以及从插件流向主机(写入)的简单方法.

如果相关:我正在使用MAF基础设施插件. http://msdn.microsoft.com/en-us/library/bb384200.aspx

c# plugins appdomain

6
推荐指数
1
解决办法
1179
查看次数

标签 统计

.net ×2

c# ×2

appdomain ×1

assemblies ×1

conflict ×1

exception ×1

gppg ×1

grammar ×1

legacy ×1

plugins ×1