Reflection in this version of the framework can execute code during load (this changes in whidbey, there's a new ReflectionOnly context where no code gets executed.) I may be off here but my guess is it sees a parameter containing a type in another assembly so it tries to load other type information and fails. Load up filemon from sysinternals to see what file its not finding.
Adam On Thu, 16 Dec 2004 06:34:17 +0000 Girish Jain <[EMAIL PROTECTED]> wrote: > Hi All, > > My basic purpose is to create some sort of documentation > for a very big > assembly which has a lot of classes and a lot of methods > within it. > > I am having an issue relating to extracting Parameter > Type info. I have as > assembly and this assembly references several other > custom assemblies. These > custom assemblies are created by me and are within the > same directory > > I load the assesmbly and extract all the exported types > and then methods. > When I try to extract the parameters info on the > MethodInfo object by > calling GetParameters method I get > "FileNotFoundException" for one of the > referenced assemby. > > Also, I want to extract only methods which are - > -- Public/Non-Public methods declared withing the class > and do not want > Property and Event methods (i.e. get_XX, set_XXX, > add_XXx, and remove_XX) > > which I am unable to achieve > > > Any sort of help, highly appreciated > > Thanks in advance > > Regards, > Girish Jain > > > Here's is the code:- > > p_Asmbly = > [Assembly].LoadFile(txtAssemblyPath.Text) > > Dim p_Type As Type > Dim p_Types() As Type > p_Types = p_Asmbly.GetExportedTypes() > > Dim p_Method As MethodInfo > Dim p_Methods() As MethodInfo > > Dim p_Param As ParameterInfo > Dim p_Params() As ParameterInfo > > Dim strParams As String = String.Empty > > > > For Each p_Type In p_Types > p_Methods = p_Type.GetMethods() > > p_Type.GetMethods(BindingFlags.Public And > BindingFlags.Instance And BindingFlags.DeclaredOnly) > > rtbOutput.Text += "Type Name : " & > p_Type.Name & vbCrLf > rtbOutput.Text += > "--------------------------------------------------" & > vbCrLf > objCSVWriter.WriteLine("Type Name : " & > p_Type.Name) > > For Each p_Method In p_Methods > > If Not (p_Method.Name.Substring(0, 4) > = "get_" Or > p_Method.Name.Substring(0, 4) = "set_") Then > > ' Get the paremeter details for > the method > p_Params = p_Method.GetParameters > '******************Exception!!!!! > > For Each p_Param In p_Params > strParams += p_Param.Name & " > As " & > p_Param.ParameterType.ToString & ", " > Next > p_Params = Nothing > If strParams.Length > 0 Then > strParams = > strParams.Substring(0, strParams.Length - 2) > > rtbOutput.Text += p_Method.Name & > "(" & strParams & > ")" & vbCrLf > objCSVWriter.WriteLine(p_Method.Name) > > strParams = String.Empty > End If > Next > > rtbOutput.Text += > "--------------------------------------------------" & > vbCrLf & vbCrLf > objCSVWriter.WriteLine() > objCSVWriter.WriteLine() > Next > > objCSVWriter.Close() > > _________________________________________________________________ > Cool ringtones, snazzy logos! Funny cards, addictive > games! > http://www.msn.co.in/Mobile/ Get them all at one place! > > =================================== > This list is hosted by DevelopMentor® > http://www.develop.com > Some .NET courses you may be interested in: > > Essential .NET: building applications and components with > C# > November 29 - December 3, in Los Angeles > http://www.develop.com/courses/edotnet > > View archives and manage your subscription(s) at > http://discuss.develop.com --------------------------------------------------------------------- Web mail provided by NuNet, Inc. The Premier National provider. http://www.nni.com/ =================================== This list is hosted by DevelopMentor® http://www.develop.com Some .NET courses you may be interested in: Essential .NET: building applications and components with C# November 29 - December 3, in Los Angeles http://www.develop.com/courses/edotnet View archives and manage your subscription(s) at http://discuss.develop.com