Hi All,
Windows forms Class Viewer is a utility which is shipped with .NET Framework Tools. you can use this utility to view the class definition i.e. class fields, methods, events and properties.
To start with go to the VS.Net studio command prompt and type wincv.exe or goto "<drive>:\Program Files\Microsoft Visual Studio .NET 2003\SDK\<version>\Bin" where <drive> is the drive where your VS.Net studio is loaded and <version> is your highest .Net version and follow the below steps :-
1.Type "Textbox" in the "Seacrhing For" Textbox.
2.All the matching results will be displayed.
3.Select any one of the enlisted classes. e.g. "Textbox" from the Search Results pane. This is the textbox class shipped with .NET Framework.
4.Right pane i.e. Selected Class shows you the entire class definition.
Notice on the top there is comment about the class as to which dll it belongs to
// from module 'c:\winnt\assembly\gac\system.web\1.0.5000.0__b03f5f7f11d50a3a\system.web.dll'.
Lets create our own example application and view it with WinCV.exe :
1. Create a sample WinApp in VB.NET or C# containing two classes say Class1 and Class2;
2. Go to VS.NET command prompt and type following i.e. wincv /r:vbapp.exe /nostdlib where vbapp.exe is my application name.
3. This will load the VBApp.exe in WinCV.exe.
4. Type "Class" in the "Seacrhing For" Textbox and you will see both Class1 and Class2 in the Search Results pane.
5. Select any one of them say Class1 and view its defination in the Search Results pane.
6. The results would be similar as the results shown below
// from module 'c:\dotnet\vbapp\bin\vbapp.exe'
public class VBApp.Class1 :
object
{
// Constructors
public Class1();
// Methods
public virtual bool Equals(object obj);
public virtual int GetHashCode();
public Type GetType();
public virtual string ToString();
} // end of VBApp.Class1
Wincv has a lot of options.You can go to the command prompt and type wincv.exe /h .. this will display and popup message box displaying all the options below.
WINCV [OPTIONS]
- /h Show help
- /r:<file> Browse assembly
- /show:<option> Shows a type of member. Valid options are:
- protected, private, internal, inherited
- /hide:<option> Hides a type of member. Valid options are:
- protected, private, internal, inherited
- /nostdlib[+|-] Do not load default assemblies (WE USED THIS IN OUR E.G. SO THAT DEFAULT LIBRARIES ARE'NT LOADED)
- @<file> Read response file for more options
For the last option you can create a response file .rsp containing a list of the dlls you wanna view with the wincv.exe.
for e.g. you can create a response file named MyResponseFile.rsp which has the list of all the dlls as follows:
/r:MyDll1
/r:MyDll2
/r:MyDll3
/r:MyDll4
You can go to the command prompt and use the following command --> wincv.exe @MyResponseFile.rsp
-- Please post your queries and comments for my articles in the usergroup for the benefit of all. I hope this step from my end is helpful to all of us.
Regards,
Namratha (Nasha)