This is a small network profile manager that I’ve developed at the request of a friend of mine. He’s pleased with it and encouraged me to publish it.
The application is called netProfileManager and it is written in C#.

netProfileManager Screenshot
The main goal of the software is to allow you to create profiles that store your network configurations. It supports IPv4 both static and DHCP configurations. It uses the netsh and ipconfig command line utilities.
Profiles can be launched by right clicking the application icon in the tray bar or from the main interface. The software is provided as is with no warranty whatsoever.
Don’t hesitate to contact me if you wish to report a bug or make a suggestion.
You can download it here: http://ameya.ro/downloads.php
I would love to hear some feedback from those who’ve already tested it.
I’ve recently worked on a project that required my application to move the mouse and left click on some items.
Here’s a simple working solution that will handle mouse movement and left clicking.
using System.Runtime.InteropServices;
private const UInt32 MouseEventLeftDown = 0x0002;
private const UInt32 MouseEventLeftUp = 0x0004;
[DllImport("user32.dll")]
private static extern void mouse_event(UInt32 dwFlags, UInt32 dx, UInt32 dy, UInt32 dwData, IntPtr dwExtraInfo);
private void leftClick()
{
mouse_event(MouseEventLeftDown, 0, 0, 0, new System.IntPtr());
mouse_event(MouseEventLeftUp, 0, 0, 0, new System.IntPtr());
}
private void mouseMove()
{
Cursor.Position = new Point(Cursor.Position.X - 200, Cursor.Position.Y - 200);
}

// Populate the row
string[] row = new string[] {"Item 1","Item 2","Item 3"};
//Add the row to the DataGridView
dataGridView.Rows.Add(row[0]);
You can, of course, create an object array with multiple row arrays and use a foreach to add them all to the DataGridView.
using System;
using System.IO;
namespace cpFolder
{
class Program
{
static void Main( string[] args )
{
copyFolder( @"C:\source", @"C:\destination" );
Console.ReadLine();
}
static public void copyFolder( string sourceFolder, string destFolder )
{
if (!Directory.Exists( destFolder ))
Directory.CreateDirectory( destFolder );
string[] files = Directory.GetFiles( sourceFolder );
foreach (string file in files)
{
string name = Path.GetFileName( file );
string dest = Path.Combine( destFolder, name );
File.Copy( file, dest );
}
string[] folders = Directory.GetDirectories( sourceFolder );
foreach (string folder in folders)
{
string name = Path.GetFileName( folder );
string dest = Path.Combine( destFolder, name );
copyFolder( folder, dest );
}
}
}
}