C# Corner

Resources  
  • FileDownloader : Download files using HTTPJan 10, 2000. This application contains a Form and a Class module . From Form we create a thread which execute the procedure to handle the NET download. This application can be enhance to do more down load as in Download manager by creating more threads.
  • Meal Scheduler in C#May 04, 2000. In this application once you enter your meal timings. A message box will appear on the screen while you are working and remember you about your meal with light sound.
  • Graphics Animation SampleMay 16, 2000. After finishing a text program (lottery) its time for some fun. Everytime a have to work with a new language.I write a small program to bounce some balls in a box.
  • I'm having trouble implementing IObjectSafety. IE keeps telling me that my controls isn't safe. Why?Aug 15, 2000. This article explains about how to implement the IObjectSafety. ATL's IObjectSafetyImpl class appears to have a few bugs in it. The code below works great.
  • CSDownloadURL : Download Contents of a Web PageDec 03, 2000. CSDownloadURL is a class which has two functions - SetURL and DownloadURL. The set URL sets the current URL and GetDownload downloads the URL contents and returns its contents in a string.
  • Creating an Empty Project using VS.NETDec 04, 2000. This tutorial guides you towards your first C# Empty project step by step. After that I'll show you how to add a class to the project and few members to the class and call this class members from the main method.
  • Tutorial: Creating C# Class Library (DLL) Using Visual Studio .NETDec 09, 2000. This step-by-step tutorial shows you how to create a class library (DLL) in Visual Studio .NET.
  • SmtpMail and Mail Message : Send Mails in .NET Jan 12, 2001. You can use SmtpMail and MailMessage to send mails in .NET.
  • Using ListViews in C#Jan 18, 2001. As a Visual C++ user for 10 years I can say that Microsoft deserves praise for their new ListView class. The MFC ListView class was, well, unpleasant to use. C# makes life a bit easier with a richer property and method set for ListViews. Also, you can now, set the ListView to select an entire row in report mode, something that in Visual C++ you had to write a whole custom ListView control to do. Note also the nice grid lines.
  • Timer in C#Jan 26, 2001. An article with sample project explains how to work with the Timer control in C# and .NET to write to a text file after few seconds.
  • Implementing Delegates in C#Feb 04, 2001. The Zip file contains two projects. One is VB.Net and the other is C#. Each project is an example of the same use of a delegate. A base class is derived and the delegate calls a method on several classes derived from the base class.
  • Horoscope Web ServiceFeb 08, 2001. An article talks about web services and how to develop them using .NET.
  • Making UI more responsive using ThreadingFeb 12, 2001. This example shows how threads can help us to make User interface more responsive when we have some background jobs.
  • Implementing Delegates in C# : Part 2Feb 13, 2001. This is second part of Timothy's Delegates in C# series...
  • Synchronization in Multi-threadingFeb 13, 2001. This article with sample code shows synchronization concepts of multithreading ..
  • Writing Your First Multithreading ApplicationFeb 14, 2001. If you have never written a multithreading application in C# or .NET, this application might be helpful for you.
  • Multithreading For BeginnersFeb 15, 2001. This tutorial is for beginners who want to write their first multithreaded application in C# and .NET.
  • Using the ref ParameterMar 06, 2001. The ref keyword on a method parameter causes a method to refer to the same variable that was passed as an input parameter for the same method. If you do any changes to the variable, they will be reflected in the variable.
  • Using the out ParameterMar 07, 2001. Did you ever need your method return more than one value? The out keyword can be used to do the same.
  • Effective C#: Working with StringsMar 12, 2001. Using string might degrade the performance of your application. This article explains about what precautions you should take when you are going to use strings in your application.
  • Write Relational Data to an XML FileMar 15, 2001. This article shows you how you can write data from a database to an XML file using DataSet.
  • Using Transforms with GDI+ in C#Mar 15, 2001. Transforms are matrices that allow you to rotate and translate your graphics shapes. In this example we are going to rotate a very powerful element in C# called the GraphicsPath.
  • FTP Server in C#Mar 26, 2001. The application is a simple implementation of FTP Protocol RFC 959.
  • Using Delegates to Choose Right FunctionApr 01, 2001. The need to call different class method based on some string passed to class is an old problem.
  • Web Request ClassApr 04, 2001. This is a simple application that the gets the source of a webpage via the WebRequest Object.
  • Writing Secure Code using C#Apr 06, 2001. Code access security is a mechanism that grants/denies access to resources within a method call. For example, code written by a person may be allowed to write to the disk while code from another one may be forbidden from accessing the disk. This control can be enforced even if the code written by both of them is used within a single application
  • Invoking Web Method from one Web Service to AnotherApr 10, 2001. In this article I will show you how to connect a web service from another.
  • Understanding How Assert Effects SecurityApr 25, 2001. Assert is a security action that is evaluated at run time. Code Access Permission classes and Permission Sets support a method called Assert. Using the Assert method to control access to resources or actions will allow your code to perform actions that it normally has permission to perform and will allow other callers up stream in the call stack to have access that they would not normally have.
  • Using .NET Framework Multithreading and GDI+ to Enrich the user experienceMay 04, 2001. This tutorial shows you how to create, send, and received messages using MSMQ from the .NET base class library (System.Messaging) and C#.
  • Word Pad in C#May 11, 2001. This application explores the Rich Text control in C#,its properties and methods. Explains the usage of common dialog boxes File open, File save and Font dialog box.
  • Ouch! There is a Hook in My C#May 15, 2001. As an extension to the J++ design practice, C# has a syntactic construct, called Attributes, which let you drop hooks to Windows API or modify the runtime semantics, like threading synchronization behavior. The C# has legalized the hooking practice by calling them Attributes, and including them in ECMA C# specification.
  • Flames for FunMay 31, 2001. This is my second application using C#. In this Application I used GDI+.
  • Validation Contol in Mobile FormJun 04, 2001. In this article i'll be showing the power of Valiation Control which u can use with Mobile Application.There are total six Valiation Control as provided. Here i am showing four of them in this example and the rest two are Valiationsummary and CustomValidator.
  • Properties in C#: New Cover on old book Jun 06, 2001. Properties are accessor methods whose job is to retrieve and set the values of fields.
  • The out and ref Paramerter in C#Jun 12, 2001. The out and the ref parameters are used to return values in the same variables, that you pass an an argument of a method. These both parameters are very useful when your method needs to return more than one values.
  • Using ref and out ParameterJun 20, 2001. When we pass a parameter as ref to a method, the method refers to the same variable and changes made will affect the actual variable.
  • TCP/IPLib SampleJun 22, 2001. This compopnent contains both a TCP/IP server and client. TcpIpClient inherits from System.Net.Sockets.TCPClient and is very straight forward. After construction, specifying the host and port, a network connection is established by calling Connect(). Internally, upon a successful connection, the client receives a TcpIpPacket, which contains a unique cookie that is used in any subsequent transactions.
  • Time TickerJun 26, 2001. Graphics Class encapsulates a GDI+ drawing surface. The FromHWND method is used to create a new instance of the Graphics class from a window handle. Clear method fills the entire drawing surface with the specified RGB color by using Color class. DrawString method draws a string using Font and SolidBrush classes.
  • What & Why : Properties :: Part 1Jun 26, 2001. If you were programming in C or C++ before coming to C#, you'll be a little bit confused about properties.
  • Snooping on C#.NET Regular ExpressionsJun 26, 2001. I present here two micro test utils, which will let you play with regular expressions. Regular expression( System.Text.RegularExpressions.Regex ) is a powerful class very useful for parsing, splitting or replacing texts.
  • Synchronization in Parallel threadsJul 02, 2001. The Threads makes us able to run multitasks at a time. In fact Computers (John von Neumann Architecture) don't execute the tasks parallel .The OS gives threads permission (depend on thread priority) to work on CPU. The sufficient degree of parallelism keeps the CPU busy and it is efficient.
  • What & Why : Properties :: Part 2Jul 09, 2001. In the part 1 of this series, I discussed about the get method of the properties, with the help of which you can make your variable so that nobody can modify the value of the variable.
  • Post in Mobile FormsJul 27, 2001. Till now whatever we are doing is in single page and the traversing between forms take place only in a single Page. If you Remember Something of WML there our most effective funda is posting from one form to other.
  • Compute Feature of DataTableAug 01, 2001. The following code is for implementing least known feature of DataTable Compute() method.
  • Service ExplorerAug 06, 2001. This program manages services running in your computer. You can use the GetServices method on the ServiceController class to retrieve a list of the services on a particular computer.
  • strnicmp equivalent in C#Aug 07, 2001. C# equivalent strnicmp function in C language. It accepts two input strings along with the number of positions of chars to compare.
  • Drawing With no OnPaint MethodAug 09, 2001. In this sample example, I draw GDI+ objects on button click.
  • Messaging between Threads using Message LoopAug 20, 2001. MessageLoopLib is a stripped down version of a complete, threading communication subsystem Ive written. This implementation is a single thread created in the GUI constructor. Ive dropped all thread management and have had to change some of the message code to accommodate this.
  • Web Services between .NET, Java and MS SOAP Toolkit: Part 2Aug 24, 2001. This second article in this series dedicated to Web services comes as a sequel to the first one in which I started to tell you how you could build different kind of clients and services using MS SOAP Toolkit, Apache SOAP for Java and .NET Framework.
  • Web Service Between .NET, Java and MS SOAP Toolkit - Part IIAug 24, 2001. Second article in this series dedicated to Web services comes as a sequel to the first one in which I started to tell you how you could build different kind of clients and services using MS SOAP Toolkit, Apache SOAP for Java and .NET Framework.
  • Web Browser in C# and VB.NETSep 11, 2001. This article explains how to add and web browser ActiveX to your project to developer your own customized web browser.
  • using Array Class and IEnumeration in C#Sep 14, 2001. This article illustrates the usage of Array class and IEnumerator. Array class Provides methods for creating, manipulating, searching and sorting arrays, thereby serving as the base class for all arrays in the common language runtime.
  • Playing with StringsSep 18, 2001. This program explores the String class and its various methods. With this you will be able to initialize strings using different constructors and use them. To see how the methods of the 'String' class work, see the following code.
  • Enumerators in C#Sep 18, 2001. Sample example shows you how to use enumerators in C#.
  • A Simple Multi-threaded TCP/UDP Server and Client V2.Sep 24, 2001. This is the second version of my client/server program. The server and the client can be run on the same machine or on different machines. The following is the brief description of the server and the client programs specifically.
  • Socket ChatSep 24, 2001. This is an implementation of a Chat program using sockets. Along with basic chat capability,
  • Real Time ApplicationOct 02, 2001. The Real time Application is a sample that shows the communication techniques between a client (TcpClient) and a server (TcpServer) application using Socket class on each side. The project also demonstrates how to using listview control in the real time project.
  • Uploading and Downloading Web FilesOct 05, 2001. This program is for beginner, shows how to use web client class to Download and upload file from the Internet and how to save them to disk. Download or upload file can be done using Method DownLoad Or UpLoad.
  • Abstract Classes And MethodsOct 08, 2001. This is a detailed analysis of Abstract classes and methods in C# with some concrete examples.
  • WinChat For .NETOct 10, 2001. WinChat For .NET is a simple peer-to-peer chatting program that functions very similarly to the WinChat program provided by Windows 2000. It provides all the functionalities that the original WinChat program provides.
  • Method Parameters in C#Oct 15, 2001. This article describes different method parameters such as value parameters, reference parameters, output parameters, and parameter arrays.
  • C# PagerOct 16, 2001. C# Pager is a simple client/server application that implements functions of a pager.
  • Web services with Language InteroperabilityOct 18, 2001. A web service in general is a way of exposing the properties and methods through the Internet In other words, it's an URL-addressable resource that programmatically returns information to clients who want to use it.
  • Pointers in C#Oct 25, 2001. C# also supports pointers in a limited extent. A pointer is nothing but a variable that holds the memory address of another type. But in C# pointer can only be declared to hold the memory address of value types and arrays.
  • Inheritance and PolymorphismOct 29, 2001. By using the concept of inheritance, it is possible to create a new class from an existing one and add new features to it.
  • Charting in GDI+Nov 07, 2001. Here is an example of creating simple charts using GDI+ commands in C#. I have used the random class to create 5 random percentage values. I then use GDI+ to plot these values on a chart.
  • Network Programming in C# - Part 1Nov 12, 2001. The .NET framework provides two namespaces, System.Net and System.Net.Sockets for network programming
  • Network Programming in C# - Part 2Nov 12, 2001. This is the second part of the series of articles about the network programming with C#.
  • Exceptions and Exception StackNov 16, 2001. The purpose of this tutorial is to explain firstly how you would go about creating your own set of exceptions to trap error conditions that could occur in your code or library, for your own benefit or for the benefit of another developer using your library. The second lesson is on how the C# exception stack works, and how you can use it to catch all types of exceptions.
  • C# IRC BotNov 19, 2001. This is a very simple program that establishes a connection to irc server, joins a channel and greets every nick that joins.
  • Debug Troelsen's .NET books (1): IEnumeratorDec 10, 2001. This article examines code problem in chapter 4 (for C#)/chapter 5(for VB.Net) of the two .Net books.
  • Factory Patterns in C#Dec 10, 2001. The FACTORY METHOD PATTERN comes under the classification of Creational Patterns. The creational patterns deals with the best way to create objects.
  • Space Invaders in C# and .NETDec 23, 2001. Yes, the classic arcade game has returned and is appearing in C# Corner complete with sound and authentic aliens and source code. It's not quite as good as the real game, but with a few adjustments it can get there.
  • Developing a Record Navigation Form with Unbound ControlsDec 26, 2001. Developing a record navigation form with unbound controls. The form enables you to navigate through the records one at a time. In this application we have used a combo box, two text boxes and various command buttons.
  • Graphics Programming in C#Dec 26, 2001. The new improved version of GDI is called GDI+. The .NET framework provides a rich set of classes, methods and events for developing applications with graphical capabilities.
  • NUnit for people who can't workJan 02, 2002. In this lesson I will show how to numerically solve algebraic and ordinary differential equations, and perform numerical integration with Simpson method.
  • Overview of Automated TranscationsJan 04, 2002. Two or more .NET Framework objects can participate in the same transaction. One or more .NET Framework objects can participate in the same transaction as one or more COM+ objects. All objects must be hosted in Microsoft Windows 2K Component Services so as to receive services such as transaction processing.
  • Bridge Patterns in C# Jan 17, 2002. Bridge Pattern is commonly known as Handle/Body idiom in C++ community. This pattern is used for decoupling an abstraction from its implementation so that the two can vary independently.
  • Using ListBox Web ControlJan 21, 2002. This article explains the ListBox Web Forms control properties and methods and how to use it.
  • C# Discussion Forum from Harrison LogicJan 29, 2002. Threaded Discussion Forum that utilizes the .NET framework, with C# as the ASP.NET server side language. Uses MS Access Database for data.
  • .NET Framework and Web Services - Part 3Jan 31, 2002. Here I am going to explain Web methods and how to write Web methods in C# and VB.NET.
  • Creational Pattern - BuilderFeb 19, 2002. The Builder pattern allows a client object to construct a complex object by specifying only its type and content. The client is shielded from the details of the objects construction.
  • XML Web Services Type MarshalingFeb 20, 2002. This article illustrates that various data types can be passed to and returned from Web Service methods.
  • A Database Web ServiceFeb 22, 2002. This program is a Web service, which contains Web methods that return a dataset after querying a database (any database) given the connection string, the password, the database, the table, the user ID and the SQL commands.
  • Microsoft Knowledge Base Web Service ConsumerFeb 22, 2002. In this Article I am going to show you how to consume Microsoft knowledge base Web service from our client.
  • Authenticate Web ServiceMar 04, 2002. In this example we will build a web service that authenticates userid and password from an a very simple MS Access database. This web service exposes only one method to the client.
  • Multi-threaded Web Applications - Case I: Search EngineMar 07, 2002. This article is the first of the series of 4. I will demonstrate the use of threading in web applications by implementing a simply search engine. The following 3 articles in the series will be a Port Scanner, a Reverse DNS and a Web Hammer respectively.
  • 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.
  • A Shaped Windows Forms Application with Variable OpacityMar 11, 2002. This application demonstrates two simple techniques that beginners might find useful in developing creative new looks for Windows applications.
  • Multi-threaded Web Applications - Case II: Port ScannerMar 12, 2002. This article continues the 4-parts series of Multi-threaded Web Applications. In the first part, I have demonstrated how you can use multi-threading with ASP.NET to make a web based search engine more responsive, and to reduce the time required to compose the result. In this article, I will demonstrate how you can apply the same technique to a web based port scanner.
  • Sending Windows Message in C#Mar 14, 2002. This sample code shows how to send Window messages between two forms using C#.
  • Peer-to-peer Chat Program using Asynchronous SocketMar 22, 2002. This is a simple chat program, which uses asynchronous socket to provide connection between two machines.
  • ASP.NET Naughts and CrossesMar 22, 2002. This article demonstrates the basic techniques used to build "ASP.net Noughts & Crosses" (tic tac toe to our American friends).
  • Xite EncryptionMar 25, 2002. This class contains methods/functions for easily decrypting and encrypting data.
  • Saving and Reading Object to/from a DatabaseMar 25, 2002. An object is a memory stream, which is hard to write using the normal methods. In this article, I show how you can save objects in a database and read back from the database.
  • XML Signatures in Microsoft .NETMar 28, 2002. In this article we will explore XML Signature specification from W3C and its implementation in .NET using C#.
  • Multithreading Part 2: Understanding the System.Threading.Thread ClassApr 08, 2002. In this article we will study the .NET threading API, how to create threads in C#, start and stop them, define their priorities and states.
  • Multithreading Part I: Multithreading and MultitaskingApr 08, 2002. In this and a series of articles that would follow, we would learn about threads and how to write multi-threaded programs in C#.
  • Multithreading Part 3: Thread SynchronizationApr 11, 2002. The .NET framework provides a number of classes and data types that you can use to control the access to shared resources. Thread synchronization refers to the act of shielding against multithreading issues such as data- races, deadlocks and starvation.
  • Multithreading Part 4: The ThreadPool, Timer Classes and Asynchronous ProgrammingApr 16, 2002. In this article, I would discuss few more .NET classes and how and what role do they play a role in building multithreading applications.

About invoke-a-method-from-second-thread

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