C# Corner

Resources  
  • Get IP Address of a HostDec 03, 2000. The .Net DNS class can be used to get a host name or an IP of a given host name. To use DNS class in your project, you need to include System.Net
  • Get a database table propertiesJan 22, 2001. Get a table properties such as column names, types etc using DataColumn and DataTable.
  • Creating a Windows Service in C#Jan 23, 2001. Windows Services is a new name for NT Services in .NET. This tutorial steps you through creating a Windows Service and how to install and start it.
  • Reflection in .NETFeb 26, 2001. Refelction is the mechanism of discovering class information solely at run time. Wondering where it would be useful?
  • Protecting IL Code from unauthorised DisassemblingApr 09, 2001. Microsoft .NET proved a mechanism where the code written in VB.NET, C# or any CLS compliant languages to generate MSIL (Microsoft Intermediate Language)code which targets the CLR and executes. This is an excellent mechanism to abstract the high level code from the underlying hardware.
  • Assemblies : The Ins and Out : Part IApr 13, 2001. In Part 1, I will cover what exactly an assembly is, and what an assembly contains.
  • Assemblies : The Ins and Out : Part IIApr 16, 2001. In this part, I will discuss both Private and Shared assemblies and how to create a "Shared Assembly".
  • Naming Guidelines in .NETApr 20, 2001. Commenting and following a uniform naming guidelines in your code is one of good programming practices to make code more useful.
  • Assemblies : The Ins and Out : Part IIIApr 20, 2001. In this part I will discuss in more detail than Part 2, the available utilities for manipulating assemblies.
  • Defining Custom Entry PointsApr 30, 2001. In this article i am going to demonstrate how we can manipulate the IL code to change the behaviour of how the .NET programme executes.
  • Viewing Assembly PermissionsMay 02, 2001. In this article I will show you how you can view the Code Groups that an assembly belongs to and what permissions belong to the assembly. I will demonstrate the Caspol utility supplied with the .NET SDK.
  • .NET framework comparison with Java ArchitectureMay 08, 2001. This article outlines Microsoft's proposed standardization of .NET framework in ECMA forum as CLI (Common Language Infrastructure), but the Microsoft documentation refer this as CLR (Common Language Runtime).
  • Color GuideJun 11, 2001. This Program will generate all the colors that are supported in C# according to the Name.
  • C# Language changes from .NET Beta 1 to .NET Beta 2 Jun 22, 2001. This article contains C# language changes from Beta 1 to Beta 2.
  • What's in Mobile Internet Tool?Jul 05, 2001. The New Name For .NET Mobile Web Is Mobile Internet Toolkit.
  • A Simple C# Utility to Help You Invent NamesJul 10, 2001. I wrote this simple console utility to help me think of a new name for a project I was launching.
  • Resurrection and the .NET Garbage collectorJul 13, 2001. This article will explain and demonstrate a phenomenon that is unusual in the .NET implementation of the garbage collector. The phenomenon is known as resurrection. As the name suggests, an object is marked for destruction and in the last possible moment it is resurrected from the ‘dead’ and reactivated.
  • Modest Introduction to IL Assembly LanguageSep 03, 2001. Since I received copy of Visual Studio .NET Beta 2 and did not manage to find “ILAssemblyLanguageProgrammersReference.doc” which was included in beta 1 I decided to share my experience with other assembly enthusiasts.
  • Enumerators in C#Oct 25, 2001. An enumeration (enum) is a special form of value type, which inherits from System.Enum and supplies alternate names for the values of an underlying primitive type.
  • XP, Component Services and .NETDec 13, 2001. First of all, COM+ does revolutionize COM; it is not only a superior new version of the COM programming model it is also a new platform to design and develop components. In addition, COM+ Services in XP does have some differences from Windows 2000; also XP and COM+ 1.5 offer a richer set of services than was available in COM+ 1.0. This article will describe the basic component services on the XP.
  • Redirecting Standard Input/Output using the Process ClassDec 18, 2001. When a program starts, a new process (a program in execution) is created by the operating system,and this process is identified by its process Id and also a name.
  • How Can You Migrate your Existing Applications?Dec 20, 2001. When a new technology emerges, companies and developers begin to wait anxiously for answers to their questions.
  • VS.NET Tools Intermediate Language Disassembler (ILDAM)Feb 06, 2002. "The ILDSAM tool parses any .NET Framework EXE/DLL Module and shows the information in a human-readeble format"
  • Reflecting Data to .NET Classes: Part I - From HTML FormsMar 06, 2002. Reflection allows us to examine internal details of assemblies and classes at runtime (programmatically).
  • JIT CodingMar 11, 2002. One not so well known feature of .NET platform is possibility to invoke compiler and practically create code and assembly from running instance of application. It is possible to do that in two ways. First one is a bit simpler and involves namespaces System.CodeDom and System.CodeDom.Compiler, second one is more efficient and utilizes namespace System.Reflection.Emit. Since there are very few examples about how to use System.CodeDom.Compiler I will start with it.
  • Calling Managed Code from Unmanaged CodeMar 11, 2002. One significant part of developers (including myself) are doing some kind of automation of Microsoft Office. So I will concentrate on opposing side of problem, how to use managed assembly from MS Office or VB script. In this article, I will discuss how to call managed code from unmanaged code.
  • .NET COM Interoperability - Part 2: Using .NET Component from COMApr 02, 2002. When a COM client calls a DotNet object, the DotNet framework will create a COM callable wrapper (CCW). COM clients use the CCW as a proxy for the managed object.
  • Tracking Time in a Window ApplicationApr 15, 2002. The program reads from an XML file to get the data about names and birth dates, so it is easy to add or remove names without changing the code in case my son decides the program should include his pet dog or turtle.
  • Application Data Utility ClassApr 24, 2002. Attached is a ZIP file containing the source-code and compiled DLL of the "Application Data Utility Class".
  • Assembly Browser: Browsing a .NET AssemblyMay 17, 2002. This program lets you browse an assembly and lists the methods and the parameter name and parameter type for each assembly.
  • Case Study: Demo Networking Financial System May 23, 2002. In this tutorial I will discuss some of the design and development issues that one might consider when using .NET framework for developing Network affiliated applications.
  • Robotics Game Using .NET LanguagesMay 28, 2002. It is often not easy to get to know new technologies like .NET if you don’t get introduced to in a work environment.
  • Utilizing Assembly Information for Your Automated Splash DialogJun 05, 2002. There are cases when you need to reuse the same splash screen or about box in many applications.
  • DataGrid Customization: Part-1Jun 25, 2002. In this article, I will discuss some DataGrid customization tips such as how to I get the name and index of the column headers and how do I find out if mouse click right click was on a column.
  • Create FTP and Web IIS Virtual Directory using C#Jul 03, 2002. In this example we will create a Windows Form Project that will create new FTP and Web IIS Virtual Directories from code based on the name and path specified by the user.
  • Deploying a COM Component from C#Jul 08, 2002. Here is some code to help you to deploy a COM component from C#. I needed to programmatically deploy a project that would be registered as COM object (not COM+) and be installed into GAC. The following two classes will help in this objective.
  • Macro to Update References of all Projects in a SolutionJul 24, 2002. When working in enterprise development there are occasions when you have a solution file with 10 or more projects in it all using private assemblies.
  • Using Visual Studio .NET to Build and Deploy ApplicationsJul 29, 2002. No matter how much time you spend designing your application there is one key stage where it can all fall apart, the build and deployment stage.This is a first in a series of articles in which I am going to demonstrate how to use Visual Studio .NET.
  • Macro to Add Strong Names to VS.NET ProjectsAug 06, 2002. When writing class libraries in Visual Studio .NET that are going to be placed into the GAC you will need to add strong name to the assembly. This is normally done by dropping out to a dos prompt and running the .NET utility sn.exe and then updating the assembly to reference the newly created .snk file.
  • Using Installer Classes to Ease Deployment in VS.NETAug 07, 2002. In this article I will demonstrate how to incorporate installer classes with your Visual Studio .NET msi's to handle any supporting tasks that your assemblies may need.
  • Building an Assembly in .NETAug 07, 2002. In this article, I'll show you how to build an assembly step by step and create a client application to access it.
  • DataGrid Customization Part-II: Custom Sorting and DataGrid Column HidingAug 13, 2002. How to I get the name and index of the Column headers? How do I find out if mouse click right click was on a column
  • Compiler Tools in C#Sep 10, 2002. The attached zip file contains the source code and documentation of Compiler tools in C#.
  • Customizing Default Project SettingSep 26, 2002. "How do I change the default exe name of my project?". I received this question in an email.
  • Getting System InformationSep 26, 2002. The attached source code returns the system information for your machine such as machine name, operating system, current user and logical drives.
  • Customize User Interfaces and Pass User Input to Installer ClassesOct 19, 2002. In this article I am going to demonstrate how to customize your MSI install to prompt the user for some information and then pass this information to an installer class. This can be useful when needing to do something during an install based on the user input.
  • The NeFs Application Demo Part 3: Building the Web Client Oct 31, 2002. This is the final part of a three-part demo application dubbed Networked Financial System.
  • Low Down on Installing a .NET Assembly into the Global Assembly Cache (GAC)Jan 02, 2003. This article will walk you through the process of giving your assembly a strong name, and installing it into the GAC.
  • Global Assembly Cache(GAC) HellJan 03, 2003. After having worked on a project involving heavy use of the Global Assembly Cache, I would like to tell you that using the GAC can be very frustrating. We had a solution which had several projects within the solution. Many of these projects referenced 1 project (utility project) which did a lot of the work which we could reuse.
  • Using Stored Procedures in Conjuction with DataAdapterJan 09, 2003. A stored procedure is a named collection of SQL statements that are stored in the database. To the client a stored procedure acts similar to a function.
  • Automating the Process of Getting Latest Files from VSSJan 22, 2003. In this article, I will show you how to write an automated process of taking VSS backup. Initially, this application was written with some hard coded settings such as user name, password. and VSS path.
  • Run Time CompilerFeb 07, 2003. In this article, I am going to discuss how to take a string then compile it and then how you execute it.
  • Using C# and COM Interoperability to Extract from a UML tool into a Microsoft Word DocumentFeb 18, 2003. This article allows you to read the classes contained inside of WithClass 2000 into a Word Document using COM Interoperability for Word and COM Interoperability for WithClass and presents your classes in a kind of report.
  • Execution-Time Code Generator for C#Mar 06, 2003. The Common Language Runtime provides a new way of doing things. The compile-time world still exist, but it is also possible to build dynamic systems where new code is added by loading assemblies or even by writing custom code on the fly.
  • Writing an ActiveX Control in .NETMar 12, 2003. In this example, I will walk you through creating an ActiveX control that will show a simple user interface and accept input from a web page.
  • BuckyBalls: An Animated DirectX9 DemonstrationJun 02, 2003. BuckyBalls is an animated Managed DirectX demonstration. A buckyball, or fullerene, is a complex carbon molecule whose full name is buckminsterfullerene. The molecule contains 60 carbon atoms which form what is called a truncated icosahedron. It is shaped like a soccer ball or a geodesic dome, and is named after Buckminster Fuller, the inventor of the geodesic dome.
  • May Reflection be With you AlwaysJul 02, 2003. So let me present the example where we can use Reflection and Reflection.Emit to do something interesting.
  • Export Managed Code as UnmanagedAug 05, 2003. The following Article explains in detail how to use any .NET Assembly from BlitzPlus/Blitz3D.
  • Code Generator for Basic Stamp II MicrocontrollerOct 15, 2003. The Basic II Stamp is programmed by the language its named after, Basic. The language is a combination of Basic syntax and built in key words that control the Basic Stamp II chip.
  • Late Binding With ReflectionOct 20, 2003. Component based technology has done great things for software development, allowing reuse and leading to better-written code that separates subjects and entities into distinct components.
  • Directory Picker Pro in C#Nov 24, 2003. In my latest project I needed a dialog for picking a directory. I searched through the web, but found nothing that looked nice. First of all I wanted a TreeView for display, and I wanted to view all system drives (with correct names and icons).
  • Deployment: Customizing your .NET deployment ProjectsDec 29, 2003. The fact of the matter is that Visual Studio.NET already contains everything you need to create a rich setup experience for your users. In this article we are going to show you two ways to add a readme dialog to your application, the easy way and the hard way. The easy way requires absolutely no coding. The hard way requires coding and actually allows you to add complex custom features to your application.
  • Debugging a Compiled ComponentFeb 02, 2004. After an assembly is compiled into a dll in a release mode, it is very difficult to gather information from it such as runtime performance, parameters values, etc.
  • Configuring Publisher Policy FileFeb 20, 2004. Versioning in the Microsoft .NET Framework is managed at the assembly level and is only used when locating strong-named assemblies. By default, the common language runtime loads the assembly whose entire version number matches the version number in the calling assembly's metadata.
  • Oracle Data Provider for .NET : Part IFeb 20, 2004. Oracle Data Provider for .NET (ODP.NET) is an implementation of a data provider for the Oracle database. ODP.NET uses Oracle native APIs to offer fast and reliable access to Oracle data and features from any .NET application.
  • Multilingual Applications in .NETMar 24, 2004. This article explains the basic understanding on different methods of developing multilingual applications in .NET. Here emphasis is given on handling multiple languages using resource files.
  • Understanding .NET Framework at a glanceMay 05, 2004. In this article we are going to look at Microsoft .NET Framework. This is the newly established software development environment which helps developers to develop applications quickly and gives optimum, efficient, scalable, performance oriented applications in different languages like Visual Basic .NET, C#, ASP .NET, and Jscript .NET.
  • Line Count UtilityJun 12, 2004. Program returns count of code lines and file names in which code lines will be counted.
  • Microsoft Enterprise Instrumentation Framework(EIF) - Quick GuideJul 02, 2004. The Microsoft EIF is a bunch of assemblies for .Net that make your life easy when it comes to instrumenting your program, by this I mean tracing facilities, writing to the event log, and many other things.
  • Microsoft Enterprise Instrumentation Framework(EIF) - Quick GuideJul 02, 2004. The Microsoft EIF is a bunch of assemblies for .Net that make your life easy when it comes to instrumenting your program, by this I mean tracing facilities, writing to the event log, and many other things.
  • Crystal Reports - Geterogeneus databases: SQL Server, Oracle, Unidata, BtrieveAug 24, 2004. Crystal Reports is the most flexible tool on the market and it has market recognition. Multiple software vendors offer Crystal Reports as the main reporting tool: Microsoft, Best Software, Oracle to name a few. In this article, you learn some tips on using Crystal Reports versus other options.
  • How to work with Assemblies in InstallShield Developer 7.0Oct 14, 2004. InstallShield Developer 7.0 is the best solution for providing the very easy user interface to author installations having both .NET and side by side components. This article is a step by step walk through of how to create a deployment project using InstallShield.
  • Storing Images into a DatabaseOct 18, 2004. In order to provide your application with cool pictures you can employ two techniques (at least). One of them is that you can save the pictures in a folder and store the path to each one in a database or configuration file. The other one is to store the entire file into a database, along with its file name.
  • Automate the process of documenting your codeDec 04, 2004. The Visual Studio .NET IDE allows to document your code in a way that the compiler can create an XML document describing your classes, methods, properties, etc. This article explains how to use this feature and then create a basic help file out of it.
  • Public Key Token Generation AlgorithmJan 31, 2005. The PublicKeyTokenGenerator class and a small utility that generates Public Key Token from the Public Key using that class.
  • Stack in C#Feb 22, 2005. Stacks are one of the common data structures used in the software world, which follows the First In Last Out paradigm. Stacks are used in various mathematical functions like Towers of Hanoi, finding Fibonacci Sequence , Factorial of a number to name a few.
  • How to Call a .NET Assembly From a SQL Server Scheduled JobApr 27, 2005. This article shows you a step-by-step implementation of a COM client (a SQL Server scheduled Job) using .NET and C#.
  • Meter Windows ControlMay 02, 2005. This article is a revised version of previous article named Windows Forms Controls in C# and .NET (Analog Meter).
  • MouseStick Control.May 13, 2005. The attached source code is a MouseStick control written in C# and Windows Forms. The MouseStick control gets its name from the fusion of a joystick with a mouse. Think of the line in the MouseStick as a joystick that is controlled with your computer's mouse.
  • Accessing Global Address List via System.DirectoryServices NamespaceMay 21, 2005. This is a how-to article to access the GAL from ASP.NET, using the DropDownList ASP.NET server control as the UI. To accomplish this the article will illustrate by utilizing ADSI technology from a C# assembly returning an ArralList in order to bind to the DropDownList.
  • Accessing Global Address List via System.DirectoryServices namespaceMay 21, 2005. This is a how-to article to access the GAL from ASP.NET, using the DropDownList ASP.NET server control as the UI. To accomplish this the article will illustrate by utilizing ADSI technology from a C# assembly returning an ArralList in order to bind to the DropDownList.
  • Dynamically Creating Applications Using System.CodeDomMay 21, 2005. The article provides an insight on how to create and compile assemblies dynamically.
  • Custom Assembly in Reporting ServicesJun 30, 2005. This article describes a problem that occurs when you access a custom assembly in your Reporting Services report that does not have sufficient permissions on the resources in your environment. The article also provides simple steps to grant permissions to the custom assemblies that are used in the reports.
  • How to Maintain a CodeGroup in Security Policy at Runtime?Jul 05, 2005. Whenever protected resources are accessed by an assembly, it’s permissions are determined by the code access security system of CLR. Each permission set granted to an assembly is based on the assembly's evidence (such as its URL or publisher certificate, strong name), which in turn is based on configurable security policy.
  • Creating a Dynamic Configuration Dialog in C# and .NETJul 10, 2005. This article will show you how to create a configuration dialog that builds itself from the existing application configuration name-value pairs contained in the appSettings of the app.config file.
  • Application Development using ClickOnce in Visual Studio 2005Aug 12, 2005. This article is an introduction for deploying application using ClickOnce in Visual Studio 2005.
  • Utilize the Full Functionality of the Whidbey File ManagementNov 15, 2005. This article is based on a pre-release version of Microsoft Visual Studio 2005, formerly code named "Whidbey". All information contained herein is subject to change.
  • Indepths of Global Assembly CacheNov 18, 2005. This article gives an indepth knowledge of working of global assembly cache.
  • Creating Custom Template for Web User Control in Visual Studio.NET 2003 Nov 25, 2005. This article shows you how to create custom template for web user control in visual studio 2003. The attached sample application will install the custom template for the name given for either VB or C# language and also uninstall the custom template.
  • Delay Signing an AssemblyJan 18, 2006. In this article we will elaborate the terminology Delay Signing as well as what it means. How it works and the approach to achieve it.
  • Security Steps for Strong AuthenticationFeb 20, 2006. Weak authentication increases the identity spoofing threat. If a user’s logon credentials fall into the wrong hands, an attacker can spoof the user’s identity and gain access to the application. The attacker shares all of the user’s privileges in the application. Credentials must be protected as they are passed over the network and while they are persistent
  • Attributes in C#Feb 20, 2006. In this artilcle, we will see what the attributes are and why should we use the attributes in our applications?
  • How to Get Permissions Assign to Current Assembly in VS.NET 2005 Using C#Feb 24, 2006. The following code will explain the permissions which are assigned to a current assembly.
  • How Easy Cryptography is in VS.NetMar 08, 2006. What can be done regarding the security issues? Part of the solution is to secure important data - more specifically, using strong encryption thats what we will see in this article.
  • Convert Long to Short File Names in C#Mar 17, 2006. Here in this article is very simple code for short to long and long to short file names conversion.
  • Using Reflection to dynamically expose your Business Logic through a Webservice.Apr 27, 2006. Many people are using web services to communicate with their business logic. There are many advantages of this approach with some issues. This article will show you how you can avoid those issues, while still enjoying all the benefits of using web services.
  • Enhancements in Assemblies and Versioning in Visual Studio 2005May 01, 2006. The article discusses a couple of features introduced for assembly and versioning in Visual Studio 2005 such as referencing assemblies, registering assemblies to GAC, digital signing and friend assemblies.
  • When to Delay Sign AssembliesAug 03, 2006. Delay signing plays a vital role in development when you are building assemblies. In this article, I talk about the significance and process of delay signing the assemblies.
  • Assembly Viewer and Assembly Conflict Viewer in ASP.NETAug 10, 2006. This article show how to view assembly attributes and conflicts in ASP.NET page using C#.
  • C# Friendly Assemblies: Looking at Building Truly Reusable ComponentsNov 01, 2006. This article discusses how we can hide our base class implementation and require referencing of our objects through their interfaces. This keeps our own projects loosely coupled and also allows us to publish our assemblies as truly reusable components because they are 100% “Black box”.

About strong-named-assembly

NA
File APIs for .NET
Aspose are the market leader of .NET APIs for file business formats – natively work with DOCX, XLSX, PPT, PDF, MSG, MPP, images formats and many more!
VSLive! Anaheim