Interested on Microsoft technologies? Read Visual Studio Dot Net

Reason of this project:
This is the next part of the previous tutorial. We'll learn here how to add, change, read, delete registry keys and values using vb.net.
I included a sample that contains all those functionality.
Project details:
1- How to add a registry key/value
2- How to read a registry value
3- How to delete a key or a value
4- Changing a value or a key
5- Hints to use registry with VB.net
6- The registry reader (VB.net)

1- How to add a registry key/value

One thing that I think I forget to notice. A folder in the registry is name "key" and the elements in this key are named "values".
There's a description of each value type in the 5th tutorial
Now we'll see how to add a key or a value.
Probably you have thought where we'll put it and whether it's a key or a value.
So we have 2 things to notice.
Visual Basic will automatically show you the hives (they are stored in).
You'll have only to choose the needed one.
To do that paste the following line.
My.Computer.Registry.CurrentUser.CreateSubKey("TestKey")

This line will create a key in the HKEY_CURRENT_USER hive and will be named "testkey"
Now let's move on to see how to set a value.
For the value we'll need three things: Value path, Value name and value value. We can also precise the value type if not Visual Basic will try to assign the value type depending on the object type.
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\TestKey", "TestValue", "This is a test value.")

Tip: Type "," and Visual Basic will show a list of value types.

The sample:
The sample contain two part, one for creating keys and the other to create values.
To create a key just put the named of the key and it'll be created in the Current_User folder.
To assign a value, type the complete path, for example "HKEY_CURRENT_USER\mykey" and then the value name then the value content and click add to create it.

2- How to read a registry value

The next thing is to read what we wrote!
This is so simple, just put the following line.
You'll need to have the Path and the name of the value.
Dim readValue As String
readValue = My.Computer.Registry.GetValue _
("HKEY_CURRENT_USER\TestKey", "TestValue", Nothing)
MsgBox("The value is " & readValue)

If you wish to do more complex things, like getting the keys in a hive and getting the values of keys...
Then you should see the registry viewer sample. (Download the source code to get it)

3- How to delete a registry key or value

We finish by deleting what we added.
To do this it's easy!
The following line will delete a key
My.Computer.Registry.CurrentUser.DeleteSubKey("TestKey")

To delete a value
my.Computer .Registry .CurrentUser.DeleteValue("Test value")


4- Changing a value or a key

Changing a value can be somewhat difficult.
Dim autoshell = My.Computer.Registry.LocalMachine.OpenSubKey("Software\Microsoft\Windows NT\CurrentVersion\Winlogon", True)
'' Set the value to 0
autoshell.SetValue("autorestartshell", 0)
autoshell.Close()
After opening a subkey (don't forget true! as it give you permission to delete), we can use the autoshell in order to change any value in the following subkey.

5- Hints to use registry with VB.net

We can count the values in a hive
My.Computer.Registry.CurrentUser.ValueCount.ToString()

But also the keys
My.Computer.Registry.CurrentUser.SubKeyCount.ToString()

And check if a value exist
If My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\MyKey", _
"TestValue", Nothing) Is Nothing Then
MsgBox("Value does not exist.")
Else
MsgBox("Value exist.")
End If

6- The registry reader (VB.net)

I have included an application with the source code. This one will resume all what we have done.
It's like the registry editor of Windows but still view only and can't edit values.

Download the source code

The Zip file contains:
-The sample source code
-The registry viewer application
-The readme.txt file
-The tutorial.txt file

Still have question:
If you have any problem or you found a bug, post a comment describing your problem.
If you have a general question, we highly recommend the MSDN Forums as the best Dot Net forums in the net.

Bookmark and share this tutorial
Related Ads

Tutorial 5: What is Windows registry (Registry Keys)

Reason of this project:
I wrote this tutorial in order to help the hundred of programmers searching on the web for Windows registry.
This is an like introduction, if you are seeking how to use and deploy the registry keys with Vb.net, just see the next tutorial (It'll be tutorial 6).
In this tutorial I'll show what is the windows registry system and why use it.

Project details:
1- What is Windows registry and why use it
2- How to read, write and change the registry
3- HIVES and their use
4- Definition of registry values

1- What is Windows registry and why use it.

You can compare the Windows registry to a database. It stores informations related to Windows and other installed application on your system, but also Hardware.
Think now if someone need to change the computer name via programming. How can he do this?
Programmers can think of files (text files) to store the computer and windows information. But when file get big and heavy, Database will be more secure. And then they had (Windows builder) the choice of a database "Windows Registry".
Microsoft Dot Net Frame 1.1 and higher have implemented a great solution for registry on their classes. This will replace the hard work and long lines of code that programmers have to write if they are using Visual Studio 6.0 for example.

2- How to read, write and change the registry

Windows has a wonderful tool on it, named "Registry Editor". But you won't find it, unless you open the System32 folder on the Windows folder.
But we can easily run it through the execute command it the start menu. Just type "regedit" (without quotes).
Now the registry editor will open.
Please before doing any changes on your registry make a backup.
To do a windows registry backup: File > Export > Give a name for the file and select the All option box.
The backup may block your pc from working for a short period of time.
You'll see that there are 5 folder. Those are the main folder (named hives) and you can't add another main folder.
Now you can select any folder and right click on it, then add a new sub-folder or value.
By selecting any folder and right clicking, you'll find a list of action that you can do.
If the action is blended (made not selectable), then either it's impossible or you don't have the rights to do this action.
You need administrator rights to change registry keys.

3- HIVES (main registry folders) and their use

The registry is split into a number of logical sections named "hives", those are the top main folder that can added, edited or renamed.
They all start with "HKEY" prefix.

HKEY_CLASSES_ROOT
Stores information about registered applications, such as Associations from File Extensions and OLE Object Class ID's tying them to the applications used to handle these items.
HKEY_CURRENT_USER
Stores settings that are specific to the currently logged-in user. The HKCU key is a link to the subkey of HKEY_USERS that corresponds to the user; the same information is reflected in both locations. On Windows-NT based systems, each users' settings are stored in their own files called NTUSER.DAT and USRCLASS.DAT inside their own documents and settings subfolder.
HKEY_LOCAL_MACHINE
Stores settings that are general to all users on the computer. On NT-based versions of Windows, HKLM contains four subkeys, SAM, SECURITY, SOFTWARE and SYSTEM, that are found within their respective files located in the %SystemRoot%\System32\Config folder. A fifth subkey, HARDWARE, is volatile and is created dynamically, and as such is not stored in a file. Information about system hardware drivers and services are located under the SYSTEM subkey, whilst the SOFTWARE subkey contains software and windows settings.
HKEY_USERS
Contains subkeys corresponding to the HKEY_CURRENT_USER keys for each user registered on the machine.
HKEY_CURRENT_CONFIG
Contains information gathered at runtime; information stored in this key is not permanently stored on disk, but rather regenerated at boot time.

4- Definition of registry values

Binary Value
REG_BINARY
Raw binary data. Most hardware component information is stored as binary data and is displayed in Registry Editor in hexadecimal format.
DWORD Value
REG_DWORD
Data represented by a number that is 4 bytes long (a 32-bit integer). Many parameters for device drivers and services are this type and are displayed in Registry Editor in binary, hexadecimal, or decimal format. Related values are DWORD_LITTLE_ENDIAN (least significant byte is at the lowest address) and REG_DWORD_BIG_ENDIAN (least significant byte is at the highest address).
Expandable String Value
REG_EXPAND_SZ
A variable-length data string. This data type includes variables that are resolved when a program or service uses the data.
Multi-String Value
REG_MULTI_SZ
A multiple string. Values that contain lists or multiple values in a form that people can read are generally this type. Entries are separated by spaces, commas, or other marks.
String Value
REG_SZ
A fixed-length text string.
Binary Value
REG_RESOURCE_LIST
A series of nested arrays that is designed to store a resource list that is used by a hardware device driver or one of the physical devices it controls. This data is detected and written in the \ResourceMap tree by the system and is displayed in Registry Editor in hexadecimal format as a Binary Value.
Binary Value
REG_RESOURCE_REQUIREMENTS_LIST
A series of nested arrays that is designed to store a device driver's list of possible hardware resources the driver or one of the physical devices it controls can use. The system writes a subset of this list in the \ResourceMap tree. This data is detected by the system and is displayed in Registry Editor in hexadecimal format as a Binary Value.
Binary Value
REG_FULL_RESOURCE_DESCRIPTOR
A series of nested arrays that is designed to store a resource list that is used by a physical hardware device. This data is detected and written in the \HardwareDescription tree by the system and is displayed in Registry Editor in hexadecimal format as a Binary Value.
None
REG_NONE
Data without any particular type. This data is written to the registry by the system or applications and is displayed in Registry Editor in hexadecimal format as a Binary Value
Link
REG_LINK
A Unicode string naming a symbolic link.
QWORD Value
REG_QWORD
Data represented by a number that is a 64-bit integer. This data is displayed in Registry Editor as a Binary Value and was introduced in Windows 2000.

This tutorial doesn't contain any source.
Download the tutorial

The Zip file contains:
-The readme.txt file
-The tutorial.txt file

Still have question:
If you have any problem or you found a bug, post a comment describing your problem.
If you have a general question, we highly recommend the MSDN Forums as the best Dot Net forums in the net.

Bookmark and share this tutorial
Related Ads

Tutorial 4: Avoiding the Timer Control

Reason of this project:
I have done a long search on this theme. I have already published 2 tutorials on how to use timer.
Now I found a method with vb.net on how to count without using the timer control.
This can be helpful if you are using a Command Line Application

Project details:
1- How this work?
2- A small sample
3- The stopwatch class

1- How this work?

It works exactly like the timer work! The stopwatch is a class that can help you count.
To declare this class use this line of code:
Imports System.Diagnostics.Stopwatch
This line must be left in the top of the code before anything.
I'll introduce in the 2d sample how to use the stop watch class.
However in the next sample, I'll show a simple method to avoid using the timer control and the Stopwatch also.


2- A small sample

Our aim here is to calculate the time elapsed between 2 different steps in the program.
This task seems to be complex and need a timer. But we'll do it without a timer in a very simple method.
How this is done?
The Now.tick return a time (don't matter what it return), however this time change regularly. (It's a real counter).
Between the two steps we'll calculate the difference and divide it by 10,000,000. (Because Tick precision is Nano-second!!).
This is the code so far:
Dim First As Long
Dim second As Long
Dim time As Double
First = Now.Ticks
MsgBox("OK to see counted time")
second = Now.Ticks
time = (second - First) / 10000000
MsgBox("Time in seconds: " & time.ToString())

See the sample for more information (Commented)


3- The stop watch

The previous method is helpful but can be limited to work with.
The stop watch will solve the problem. It's a class that exist in the .net Frame Work.
To declare this class use this line of code:
Imports System.Diagnostics.Stopwatch
This line must be left in the top of the code before anything.
I have already mentioned this, but although people don't see it and then have a problem when trying to run their application.
If you don't import the class you can't work with it!
What's the stopwatch class? It's a stopwatch!
How it works? exactly like the timer control, we can say that it's a timer control.
This is the line that will create a new stopwatch
Dim mystopwatch As New System.Diagnostics.Stopwatch

We'll start counting with the following line.
mystopwatch.Start()

And we'll get the elapsed time with
mystopwatch.Elapsed.Totalseconds

You can see the source code in the 2nd sample for more details.


Download Source Code

The Zip file contains:
-The two example source code
-The readme.txt file
-The tutorial.txt file

Still have question:
If you have any problem or you found a bug, post a comment describing your problem.
If you have a general question, we highly recommend the MSDN Forums as the best Dot Net forums in the net.

Bookmark and share this tutorial
Related Ads

Tutorial 3: Introduction for SQL Server

Reason of this project:
If you are a beginner in the domain of Data Base then you may don't know what's SQL Server. SQL server is good for data base management and will make your applications save much time.
In this tutorial that doesn't include any sample, we'll learn how to install and prepare MS SQL server; I'll post sample tutorials in later time.


Project details:
1- Introduction to SQL Server 2005
2- Installation of SQL Server 2005
3- Getting started with SQL Server 2005

1- Introduction to SQL Server 2005

I think you have an idea about Data bases (even about MS Access). A data base is a group of tables. Each tables posses some content and text on it. We'll see in later tutorials that we can include images and any file format.
The Database group the data and the server help us manage those data. With the server, we can add record, delete, drop tables. We can also do queries, for example searching for special text in the database..
An example of the power of the database:
This example will show you the obvious difference that makes a server and a database.
If you make a search for example using Windows Search (not in Vista because in Vista it indexes files), and suppose that you have 100,000 files to search.
The computer will spend about 15 minutes crawling your disk and may block!
Now let's make a search with Google or Yahoo. It find the words that you are searching in less than 1 second. However it searches in billions of pages!
How this can be done? Simply those search engines are using a database.
So you see the benefits of a database.
However if you want to use SQL Server, then you need to install it on the machine where you want your application to use the database.
luckily Microsoft offer MS SQL Server Express edition for free, so your clients can install it on their machines.
This is a common and very asked question: What's the difference between Access and SQL?
Access is a database but not a server; SQL is a server, it's role is to group all the databases and to manage them.
This is what make SQL more customizable and faster. It also have many other advantages.
SQL Server can also be used on Web application!

2- Installation of SQL Server 2005

We need to install SQL Server in order to use it; SQL server is like the sea, you can't take control of all its functionalities and tools. But Don't worry, me also I don't know all SQL Server tools and settings.
This is not a problem. But if you want to become a professional I think, you must take some special lessons about it. You'll need also a long time to become professional. But this tutorial can be an introduction.
Ok first we need to prepare the computer.
We'll install the express edition that is free. You can download it from the Microsoft site.
You'll need a 1 GHZ processor (at least 600 MHZ) and 1 GB memory.
More the computer is fast, more SQL become fast. If you'll manipulate small data SQL won't be slow; but it's first starting or use may take some time (when you connect for the first time).
After downloading SQL Server (about 50 Mb), execute the installation process.
The setup will analyze your computer, this may take some time and then we'll give you the report.
You may find warnings, read out the messages. It's better to have all the item green (success).
Then press next to continue the setup.
The SQL server should be installed

3- Getting started with SQL Server 2005

Now you should have SQL Server 2005 installed, I recommend also that you download the Microsoft Online documentation about SQL Server as it includes many important and basic things.
Now we are going to focus on the most important part of this server.
So select Start > All programs > SQL Server 2005 > Configuration tools.
Here you'll find the main SQL server applications.
We'll see only the "SQL Server Configuration manager" tool.
This tools we'll allow us to stop and start the SQL servers.
Click over SQL server 2005 services to see the installed servers on your Pc.
It contains very important information and excellent tutorials.
You may need to change those properties (of each SQL Server) in future when using SQL with VB.net.
Now if you want to install a new server then do it with the installation package.
There's other important things that I'm going to notice now.
Sometimes users complain that SQL server doesn't work on a network.
This is normal as you have this setting disabled by default.
To enable it and other settings, go to Protocols for YOURSERVERNAME and enable what you need.

Note: There's no source code for this tutorial
Download this tutorial

The Zip file contains:
-The readme.txt file
-The tutorial.txt file

Still have question:
If you have any problem or you found a bug, post a comment describing your problem.
If you have a general question, we highly recommend the MSDN Forums as the best Dot Net forums in the net.

Bookmark and share this tutorial
Related Ads

Reason of this project:
I have already explained well how to use the timer control. Now we'll try to use it in a complex (but not a lot) string problem.
The aim is to create an animation program, that reads text and make an animation by displaying the first, then the second...characters until it get the last one, then it make it again.
The speed can be also fixed. Also we'll added other settings like Mirror and Uppercase

Project details:
1- Description of the string class
2- First Step: Making a handler
3- Next Step: Making a clear plan
4- The alarm example

1- Description of the String Class:

I have explained the Timer control, you can see it just in the previous post; now I want to highlight about the String Class.
The String Class in Dot Net is different that the version 6.0 of Visual Studio. First it becomes an object, second some new features are available.
I'll highlight one: The Upper and the lower function.
This function will up case all the characters in the string or lower them.
Those function exist in VS 6.0 but I'm highlighting because we'll use them on our application.
String.length (function): return the string length as integer
String.substring (function): Retrieve a part from the string. You specify the starting and the length of this part.
Notes for integers:
n = n + 1 is the same as n += 1
n = n - 1 is the same as n -= 1
At end the string class isn't so complex or hard to use!

2- First Step: Sample aim and controls

Let's see what we need and what we won't.
The application must contain:

* A text box for the speed of the animation
* A text box for the text of the animation
* A button to start the timer
* A button to stop it (but we can also make them one button)
* A check box for Uppercase
* A check box for the mirror

Now let see what the application does.
The user type a text and set a speed. Then click Run to start the animation.
The user can choose Uppercase to make the printing results upper or to make them normal by unchecking.
If the user choose the mirror setting and the animation is running, it will stop it in order to reset the settings.
Note:
You can get many errors in this application for example if you enter a string and not an integer in the speed text box.
In this case you must use the Try Catch End Try block in order to get exceptions.
I didn't take care for this part as it isn't the subject of our work.

3- Next Step: Making a clear plan

The problem of most beginners programmers is where to start from?
They have learn a lot but they didn't know how to use their knowledge.
I'll show you how to create this project your self!
Me also I can't make such as project from the first hit (instance I mean).
I need to make parts and easier the project. I'll explain: Those are the parts that I have made before finishing my sample.

- Making an animation with a string (not variable). The project contain only a Label to show the animation. This is the most difficult part in the project and it took about 5 minutes.
- Adding the Run, Stop buttons (1 minute)
- Making the speed and the text customizable by the user (1 minute)
- Adding the Upper case check box (1 minute)
- Adding the mirror check box (2 minutes)
- Review of the project (1 minute)
- Adding comments to the code(3 minutes)

--> Total time: about 15 minutes.

It took a long time to make it! But it was finally made, because I divided my work on steps, from easier to harder and every time I make it a little bit harder.
But If you want to make it from the first time, you'll probably have errors and missed things on your application (else you are a genius).
Even with most easy case, this method is good; you learn how to organize your work.
If you are a beginner don't try to start from the last tutorial but from the first one because I'm increasing difficulty level each time.


4- Final Step: The first step

As I said in the project plan, this is the most difficult step ever.
I'll explain here only the first step, the rest you can easily understand it from the sample comment.
The aim is to have an animation that get from the first character to the last character with the help of the timer that make a time for a loop.
This is the most difficult sentence. It group all the needs; (From the first chr to the last chr) The first is always 0 and the last is always string.length.
We have only to add 1 each time the timer call the event. Plus if the n times arrived (equal) the length of the string we must reset it to 0 or stop the timer so the error don't occur.
How to get the text from the first to the last character:
result = anim.Substring(0, n)

We have to add 1 to n every time the timer call the procedure.
n += 1
If n = ln Then n = 0

But also to reset it!
See the source code for more information (read the comments).
Note: for the mirror, we'll make like we have done in the normal case but to inverse!
result = anim.Substring(n2, n)

n2 is the length (we start from the end) and decrease by 1 each time the procedure is called.

Download the source code

The Zip file contains:
-The example source code
-The readme.txt file
-The tutorial.txt file

Still have question:
If you have any problem or you found a bug, post a comment describing your problem.
If you have a general question, we highly recommend the MSDN Forums as the best Dot Net forums in the net.

Bookmark and share this tutorial
Related Ads

Tutorial 1: The timer control and stop watch application

Reason of this project:
Many of beginners’ programmers don’t know the timer control or how to use it to fit their needs.
For this reason, I came with this tutorial to show what the timer control is and how to use it on our application.

Project details:
1- Description of the timer control
2- The timer example
3- The speed watch example
4- The alarm example

1- Description of the timer control:


The timer control isn’t a timer and don’t show time. We use to create timer and speed watch.
How it function?
Simply, the timer control counts a period of time and then does an event.
  • You set an interval for the timer (for example 1 second)
  • You start the timer
  • The timer start counting
  • 1 Second: The timer calls an event (that you have declared)
  • The event does an action

--> And the timer loop (every 1 second).

We can say that the timer is a regular loop that does an event every interval of time that you set.

If you ask Visual Studio to get the MSDN help it'll shows:
The length of the intervals is defined by the Interval property, whose value is in milliseconds.
When the component is enabled, the Tick event is raised every interval.
This is where you would add code to be executed.
For more information, see How to: Run Procedures at Set Intervals with the Windows Forms Timer Component.
The key methods of the Timer component are Start and Stop, which turn the timer on and off.
When the timer is switched off, it resets; there is no way to pause a Timer component.

Many don't understand the MSDN help this is because you lack experience. The MSDN documentation thinks that you know every thing!
But I'll explain on an easy way how to use it and understand all this text.
To understand we'll do the first sample together, I'll explain as much as possible.
For the 2 other samples just read the comments associated to the code source.

2- The timer example


In this example we’ll create a clock that shows time. I know that every one can use the following expression: Date.now and get the time.
But now we won’t to update it, I mean every 1 second the clock refresh and show the time again.
If we use a loop this we’ll take much time of the computer process, plus the application we’ll not be stable and we’ll need threading…
With the timer control we can do the clock with less problems and code lines.
You can follow the steps to create the project or just read and see the source code.
First create a new project and name it clock.
Then take a clock control and a label control (only 2 controls)
And now double click over the form and you should be in the Form Load part.
First we need to set the timer interval. For our clock: 1 second.
Timer1.Interval = 1000

Now let’s start the timer. From this line the timer will start counting.
Timer1.Start()

Now create a sub that the counter will call.
Private Sub count(ByVal MyObject As Object, _
ByVal myEventArgs As EventArgs)
Dim time As String
time = Date.Now.Hour & ":" & Date.Now.Minute & ":" & Date.Now.Second
Label1.Text = time
End Sub

The ByVal MyObject As Object and the ByVal myEventArgs As EventArgs are elementar!

Now we have to return to the form load. We need to make a relation between the timer and the sub.
So before all (starting the timer and setting the interval), add the following line.
AddHandler Timer1.Tick, AddressOf count


All is done! Now run the project.Run the project. You should see the time update every second like the Windows clock.


3- The Stop watch example

I think you understood the timer control system. So I'll give only a description of this example.
For more help read the comments to understand it better.
The speed watch as it's name, is a speed watch =)
Example aim : one button to start and stop the watch. Another button to reset.
The user can specify the interval, so another button to set the interval.

4- The alarm example

This is a clock example! But we'll added a new function: The Alarm.
You set a time where you want to show a message. When the timer control reach the time, it call the event.
For more details see the project comments.

Download the source code

The Zip file contains:
-The 3 examples source code
-The readme.txt file
-The tutorial.txt file

Still have question:
If you have any problem or you found a bug, post a comment describing your problem.
If you have a general question, we highly recommend the MSDN Forums as the best Dot Net forums in the net.

Bookmark and share this tutorial
Related Ads

Join our team and help others

We are making this work exactly for nothing. we want only to provide tutorial for people who want to learn Dot Net technologies.
If you are a Dot Net programmer and interested in helping others for free, you can join our association and start creating tutorial for the benefit of all!
To join our association please first post a comment in this post.
Describe on it your activities on Dot Net and also on other domains.
I'll contact you as soon as possible. I'll also invite other people that I think they are capable to create cool tutorials.

Programmers in the Dot Net source Community:

Omar Abid (Contact him)

Bookmark and share this tutorial
Related Ads

Help us spread the world

We are doing a great work and we hope that you enjoy it!

Help us spread the world by any of those manners:
• We submit always our tutorials to Digg, Stumble Upon, Reedit. Try to review, comment and vote for our tutorials.
• Tell your friend about us: You are a beginner programmer or you know a beginner programmer, tell him about our blog and the tutorial that it contains.
• Have a blog or a site: Link to us and to our tutorials.


Help people and other programmers get the most out of this blog. But also join our group to create free tutorials for the benefits of all people.

Bookmark and share this tutorial
Related Ads

Read this post first!

Please read this file carefully before using our tutorials. (You'll find this post in every tutorial that you download in the Readme.txt file)

About Those tutorials:
Dot Net Source, is a group of tutorials and source code unique and perfect.
Those tutorials are made by a group. You can see people who have join the Dot Net Source, at the Dot Net Source Blog (http://thedotnetsource.blogspot.com)
You can join, use, read, comment and do many activities in the Dot Net Source Blog.
If you have any questions or problems, you can post your question at the MSDN Forums.

Terms of use:
This is a free, open source and with help code snippets. Our projects are associated with tutorials.
Before using those tutorials please read the following terms. (Those terms are unique and made for the Dot Net Source Community)

1- We made Dot Net project and we review our code many times, although we are not responsible of any problem or bug that may occur while using our projects.
2- You use these projects (code) at your own risk.
3- Our Zip files (projects) that you download from the blog are secure and we certify that they don’t contain any virus or sypware. But we aren’t responsible for any problem that may occur from downloading our sources.
4- This project is Open Source, but if you want to show it in your blog or site or forum, just include a link to the tutorial post.
5- You can freely use this source on your application.
6- Don’t copy the tutorial and the source and made them your own in your site.
7- The tutorial and the source are subject of change without prevention, so visit our site regularly to know the latest updates.

Have a nice time using our projects to improve your application and learn new dot net technologies.

Bookmark and share this tutorial
Related Ads

About Dot Net Source

The Dot Net Source blog was originally made by Omar Abid in order to help Dot Net beginners to understand more Dot Net bases and to be skilled, but also to remember the Dot Net functions that he forgot because of studying matters :).
The Dot Net Source is totally Open Source. Project or samples are associated with Tutorials to show you how to create and manipulate the Dot Net.
Please respect this work and don't copy it. If you like it, just give us a link or a comment.
Have a nice day!

Bookmark and share this tutorial
Related Ads

The Dot Net Source Logo

We have made the Dot Net Source logo in order to advertise with it.
Every one can put the Dot Net Source logo in his blog in order to help us and our code source spread the world.
We have also a Banner that will be used with affiliate and friends sites.
However you can publish any of our tutorial on your blog in condition that you add the banner in top of the tutorial post.

The logo

The banner



Bookmark and share this tutorial
Related Ads