IP Address Changes "on the fly"

How can I change fixed  IP addresses "on the fly" from a Win32 application in a documented/supported way that works for Win98, WinNT, and Win2000?
Who is Participating?
jhanceConnect With a Mentor Commented:
The method outlined in this article works for NT4 and W2K:


The AddIpAddress() function from IPHLPAPI.DLL works in Win98 and W2K.  It's documented in the current SDK.

The only OS that really can't do this at all is Win95.
quirkyAuthor Commented:
Adjusted points from 100 to 200
quirkyAuthor Commented:
Thanks for your input.  We are currently using the "hacker" method in the URL you mentioned for NT4. We found the AddIpAddress() function in IPHLPAPI.DLL but have no current documentation in v6.0 of the C++ developers kit. Once we have found this and verified - I will award the points. We are not concerned about Win95 at this time - apparently a good thing.
Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

quirkyAuthor Commented:
The URL for the documentation indicates that Win98 is unsupported - have you tried it and found it to work? We don't have the latest developer's kit so I will take your word for it. We're going to get it as soon as possible.
Yes, in spite of the note in the SDK, the AddIpAddress export from IPHLPAPI.DLL for Win98 does seem to work.  I suspect that some of the other functions in this DLL don't work as advertised, however.

As always though, you should use caution when using undocumented (or underdocumented) features.  There may be specific instances or combinations of system components that may make this function non-operational.  

One tipoff I had that this worked on Win98 is that AOL 4.0 distributes iphlpapi.dll and indeed uses the AddIpAddress function when running on Win98.  I'm sure that AOL get's "inside" information that is generally unvailable to low-level hacks like us.
quirkyAuthor Commented:
We have not been able to get this to work on Win 98. jhance, if your there, do you have any tips?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.