C#獲取調用DLL的類名稱

C#獲取調用DLL的類名稱
下午 04:26 2011/2/14

想知道是哪個類調用了這個DLL。
在Log里需要記錄異常發生在哪個類里,看了subText是這樣寫的。
[MethodImpl(MethodImplOptions.NoInlining)]
private static Type GetCallerType()
{
 return new StackFrame(2, false).GetMethod().DeclaringType;
}

MSDN 曰:
- StatckFrame 用途
提供 StackFrame 的相關資訊,表示目前執行緒的呼叫堆疊上的函式呼叫。

- StackFrame 有四個構造函數
名稱                               說明 
StackFrame ()                      初始化新的 StackFrame 物件。 
StackFrame (Boolean)               初始化新的 StackFrame 物件,可以選擇性地擷取來源資訊。 
StackFrame (Int32)                 初始化新的 StackFrame 物件,對應至現用堆疊框架上的框架。 
StackFrame (Int32, Boolean)    初始化新的 StackFrame 物件,對應至現用堆疊框架上的框架,可以選擇性地擷取來源資訊。 
StackFrame (String, Int32)         初始化新的 StackFrame 物件,只包含提供的檔案名稱和行號。 
StackFrame (String, Int32, Int32)  初始化新的 StackFrame 物件,只包含提供的檔案名稱、行號和資料行編號。 

其中StackFrame (Int32, Boolean)參數涵義為:

skipFrames
要略過的堆疊上的框架數。

fNeedFileInfo
若要擷取檔名、行數和欄數,則為 true,否則為 false。

學習資料
http://lovecherry.cnblogs.com/archive/2005/04/10/135175.html
SubText src

多看源碼,多動手實踐

转载于:https://www.cnblogs.com/htht66/archive/2011/02/14/1954457.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值