Click here to Skip to main content
11,502,821 members (57,365 online)
Click here to Skip to main content

MAC Address Changer for Windows XP/2003

, 26 May 2005 CDDL 522.2K 23.9K 114
Rate this:
Please Sign up or sign in to vote.
A freeware program (with source code) that allows you to change the MAC ID of your network adapter
Fig. 1 : Screenshot of the one and only main dialog
Fig. 2 : You can use getmac from a command prompt to list MAC Addresses of your n/w adapters

Overview

My cable ISP does something really unusual and annoying: it locks a cable modem to the N/W card's MAC address, thereby disallowing a user from either changing his network card or using a different machine. When my dad visits me, this is most inconvenient as he cannot plug his laptop into the internet and I don't have a LAN at home he can plug into. A Linuxian friend of mine suggested that I change the MAC ID, which is apparently a one-command operation on Linux-based machines.

I Googled around and found that changing the MAC under Windows involved changing certain registry values and resetting the network adapter. I barely trust my dad with his laptop, so you can imagine how I felt about trusting him to modify the registry and reset network adapters. I am not particularly crazy about coding; I do it for a living as well as an off-work hobby, but I thought it'd be a prudent idea to write a GUI application for my dad in my spare time. That's how MAC Address Changer for Windows XP/2003 came into being.

Requirements

  • Windows XP / Windows 2003

Operations

Change the MAC ID

Enter a MAC Address into the edit box and click the Change button. It validates the ID you've entered, so you cannot enter a MAC like "I am a chicken hawk" or something goofy like that.

Reset the MAC ID

This'll reset the MAC address to the adapter default.

Things to Note

  • Normally, both operations would be pretty straightforward. Sometimes though, with some network adapters, programmatic reset of the adapters will fail. In that case, you'll get a message box telling you that you'll need to manually reset the adapter.

  • If you don't have write-access to the HKLM registry key hierarchy, both operations fail.

Program Usage

The program can be used freely for commercial and non-commercial purposes.

Source Code

The source code (decently commented, I hope) has been included. I used VC++ 2005 Beta 2 (MFC dialog application without the /clr option), so you'll need that to open the project files. All the textual UI is taken from the resource, so it should be pretty easy to have versions for other languages, say German or French for instance. If anyone modifies the source code, I request that my original copyright comment headers be left intact.

Pseudo-Statutory Warning

This program may not work with some network adapters and it might cause an adapter to stop working normally if MAC IDs are incessantly changed/reset. Some network administrators might have forbidden the practice of changing MAC addresses, so you might want to check with your sys-admin before you use this program.

Conclusion

This application was written out of personal necessity and if it is useful to other people, well and good. If not, oh well, then nothing is lost anyway. The source code has been provided for interested people.

History

  • May 19, 2005: Began work on program
  • May 25, 2005: Made fixes to allow program to run on Windows 2003
  • May 27, 2005: Program (with source code) first published on The Code Project

License

This article, along with any associated source code and files, is licensed under The Common Development and Distribution License (CDDL)

Share

About the Author

Nish Nishant

United States United States
Nish Nishant is a Software Architect/Consultant based out of Columbus, Ohio. He has over 15 years of software industry experience in various roles including Lead Software Architect, Principal Software Engineer, and Product Manager. Nish is a recipient of the annual Microsoft Visual C++ MVP Award since 2002 (13 consecutive awards as of 2014).

Nish is an industry acknowledged expert in the Microsoft technology stack. He authored
C++/CLI in Action for Manning Publications in 2005, and had previously co-authored
Extending MFC Applications with the .NET Framework for Addison Wesley in 2003. In addition, he has over 140 published technology articles on CodeProject.com and another 250+ blog articles on his
WordPress blog. Nish is vastly experienced in team management, mentoring teams, and directing all stages of software development.

Contact Nish : You can reach Nish on his google email id voidnish.

Website and Blog

Comments and Discussions

 
Questionmac change help for program in labview Pin
Juanjo837-Dec-12 2:04
memberJuanjo837-Dec-12 2:04 
GeneralMy vote of 5 Pin
IBelongToYou4-Oct-12 15:25
memberIBelongToYou4-Oct-12 15:25 
GeneralMy vote of 5 Pin
Chandrabhan Sangale12-Aug-11 18:40
memberChandrabhan Sangale12-Aug-11 18:40 
Questioncan't change mac address Pin
simsim12330-Jun-11 17:36
membersimsim12330-Jun-11 17:36 
Questioncan't changemacaddress Pin
simsim12330-Jun-11 17:35
membersimsim12330-Jun-11 17:35 
GeneralThis really makes me mad Pin
852derek852@gmail.com4-Feb-11 20:54
member852derek852@gmail.com4-Feb-11 20:54 
GeneralRe: This really makes me mad Pin
Nishant Sivakumar18-Apr-11 6:08
mvpNishant Sivakumar18-Apr-11 6:08 
GeneralThank you Pin
Dave31328-Sep-10 20:07
memberDave31328-Sep-10 20:07 
GeneralRe: Thank you Pin
Nishant Sivakumar28-Sep-10 20:48
mvpNishant Sivakumar28-Sep-10 20:48 
Generalfeature request [modified] Pin
Member 733103427-Aug-10 20:29
memberMember 733103427-Aug-10 20:29 
GeneralResolved Issue. Pin
AshishKaira24-Jun-09 2:28
memberAshishKaira24-Jun-09 2:28 
Question"divisor" question? Pin
Hunt Chang13-Feb-09 5:26
memberHunt Chang13-Feb-09 5:26 
AnswerRe: "divisor" question? Pin
Hunt Chang13-Feb-09 5:29
memberHunt Chang13-Feb-09 5:29 
Generalwork on LAN but not Wifi card Pin
Member 38278988-Feb-09 21:22
memberMember 38278988-Feb-09 21:22 
GeneralWorks fine, even when other fails ;) Pin
yavor nenov7-Feb-09 0:25
memberyavor nenov7-Feb-09 0:25 
GeneralRe: Works fine, even when other fails ;) Pin
Nishant Sivakumar7-Feb-09 2:05
sitebuilderNishant Sivakumar7-Feb-09 2:05 
GeneralC# version of Mac Changer Pin
nexus9912-Jan-09 3:14
membernexus9912-Jan-09 3:14 
GeneralRe: C# version of Mac Changer Pin
Nishant Sivakumar12-Jan-09 5:02
sitebuilderNishant Sivakumar12-Jan-09 5:02 
GeneralAbout release verion Pin
Elaaber16-Nov-08 14:10
memberElaaber16-Nov-08 14:10 
GeneralRe: About release verion Pin
Nishant Sivakumar12-Jan-09 5:03
sitebuilderNishant Sivakumar12-Jan-09 5:03 
QuestionYour Windows computer sits on the wire? Pin
dontknowitall9-Mar-08 4:33
memberdontknowitall9-Mar-08 4:33 
GeneralThank You Pin
fedotawa9-Sep-07 5:12
memberfedotawa9-Sep-07 5:12 
GeneralThanks!! Pin
quocky71114-Aug-07 17:48
memberquocky71114-Aug-07 17:48 
GeneralMac address from client machine Pin
MaheshSankar25-Jun-07 2:59
memberMaheshSankar25-Jun-07 2:59 
GeneralIdentify the computer type and mac address Pin
nilketnil26-Mar-07 9:56
membernilketnil26-Mar-07 9:56 
QuestionLost MAC Address Pin
ricdanmar18-Mar-07 11:12
memberricdanmar18-Mar-07 11:12 
Generalmac doesn't change Pin
mtbusta28-Feb-07 0:46
membermtbusta28-Feb-07 0:46 
QuestionHow to get the MAC from Hardware Pin
Reader Man San31-Oct-06 20:49
memberReader Man San31-Oct-06 20:49 
AnswerRe: How to get the MAC from Hardware Pin
Skull_Cracker6-Mar-07 8:53
memberSkull_Cracker6-Mar-07 8:53 
GeneralMACAddressChanger.exe Not Working on WinXP SP2 Pin
vbusy22-Oct-06 0:01
membervbusy22-Oct-06 0:01 
GeneralSome Issues [modified] Pin
TomM10-Aug-06 6:41
memberTomM10-Aug-06 6:41 
GeneralRe: Some Issues Pin
Nishant Sivakumar10-Aug-06 6:54
staffNishant Sivakumar10-Aug-06 6:54 
GeneralThnx mate!!! Pin
freakinbush5-Jul-06 2:38
memberfreakinbush5-Jul-06 2:38 
GeneralMuy Bueno, Exelente Pin
alexrf7416-Jun-06 10:43
memberalexrf7416-Jun-06 10:43 
GeneralBug with multiple IP's on a MAC Pin
A.Tas12-May-06 2:58
memberA.Tas12-May-06 2:58 
GeneralRe: Bug with multiple IP's on a MAC Pin
babyc++2-Apr-10 23:55
memberbabyc++2-Apr-10 23:55 
GeneralQuestion ... Pin
Razvan2kss9-Mar-06 10:41
memberRazvan2kss9-Mar-06 10:41 
GeneralFeature request Pin
animesonic3-Dec-05 21:26
memberanimesonic3-Dec-05 21:26 
GeneralMac adress Pin
Xiko10-Nov-05 5:06
memberXiko10-Nov-05 5:06 
GeneralRe: Mac adress Pin
Nishant Sivakumar11-Nov-05 0:56
staffNishant Sivakumar11-Nov-05 0:56 
GeneralThanks Pin
vaaljapie2-Nov-05 0:11
membervaaljapie2-Nov-05 0:11 
GeneralRe: Thanks Pin
Nishant Sivakumar11-Nov-05 0:56
staffNishant Sivakumar11-Nov-05 0:56 
Generalyour code is very good! Pin
ljx2000023-Oct-05 17:49
memberljx2000023-Oct-05 17:49 
GeneralRe: your code is very good! Pin
Nishant Sivakumar11-Nov-05 0:56
staffNishant Sivakumar11-Nov-05 0:56 
QuestionHELP Please !! Pin
Anonymous22-Oct-05 21:32
sussAnonymous22-Oct-05 21:32 
AnswerRe: HELP Please !! Pin
Nishant Sivakumar11-Nov-05 0:57
staffNishant Sivakumar11-Nov-05 0:57 
GeneralMAC ID dll option Pin
arifbustani27-Jun-05 13:44
memberarifbustani27-Jun-05 13:44 
GeneralThe easier way Pin
alent1-Jun-05 4:43
memberalent1-Jun-05 4:43 
GeneralNice! Pin
Ravi Bhavnani27-May-05 1:53
memberRavi Bhavnani27-May-05 1:53 
GeneralRe: Nice! Pin
Nishant Sivakumar27-May-05 2:24
staffNishant Sivakumar27-May-05 2:24 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.150520.1 | Last Updated 27 May 2005
Article Copyright 2005 by Nish Nishant
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid