Jump to content

netapi32.dll -> latest version for win-98 is ... ?


Guest wsxedcrfv

Recommended Posts

Guest wsxedcrfv

I was trying to run DMT.exe (xDSL Modem Tool) and got an error about netapi32.dll. The version I had was original win-98 version (4/23/1999). I found version 5.00.2194.1 (12/09/2002) and it took me further, resulting in a new error in netrap.dll (not a file that win-98 normally has). I found and transplanted that file into my system but gives an error (linked to missing export NTDLL.DLL RtlInitAnsiString). So I think this gives me a dead end for dmt.exe.

I'm not noticing any system problems using the newer version of netapi32.dll, and was wondering if there are any known issues using it, or if there is an even newer version that is known to work ok.

Link to comment
Share on other sites


I'm not noticing any system problems using the newer version of netapi32.dll, and was wondering if there are any known issues using it, or if there is an even newer version that is known to work ok.

Which newer version are you using? Didn't you just say it gave you an error?

Link to comment
Share on other sites

Guest wsxedcrfv

Which newer version are you using? Didn't you just say it gave you an error?

The netapi32.dll that I had originally was 4.10.1998 (dated 4/23/1999). DMT.exe didn't like it, so I looked for another version. I found 5.00.2194.1 (dated 12/9/2002) and replaced my original version with it. DMT got further with the newer version, but then gave an error about not being able to find netrap.dll (which doesn't seem to exist on win-98 systems). So I found version 5.1.2600.2180 (xpsp_sp2_rtm.040803-2158) of netrap.dll and put it in \windows\system directory, and got the final error from DMT (missing export NTDLL.DLL RtlInitAnsiString).

So at this point I can't run dmt.exe, but I still have the newer replacement version of netapi32.dll on my system, and it seems to be running fine with it. So I'm wondering if there is an even newer version of that file that is known to be compatible with win-98. (I have no idea what netapi32.dll is for or how important it is).

PS: I see that there is also netapi.dll, for which I'm running version 4.10.1998.

Link to comment
Share on other sites

Well, according to MDGx, in his 98SE2ME documentation:

Do NOT replace ANY of these original Win98 SE system files with their WinME counterparts because your Windows OS WILL STOP WORKING OR LOCK UP IF YOU DO:

[...], NETAPI.DLL, NETAPI32.DLL, [...].

This is all I know about them. I use the 4.10.0.1998 versions of both.

Link to comment
Share on other sites

Guest wsxedcrfv

Well, according to MDGx, in his 98SE2ME documentation:

Do NOT replace ANY of these original Win98 SE system files with their WinME counterparts because your Windows OS WILL STOP WORKING OR LOCK UP IF YOU DO: [...], NETAPI.DLL, NETAPI32.DLL, [...].

This is all I know about them. I use the 4.10.0.1998 versions of both.

Well, I can say that on this win-98se system (with KernelEx 3.6) that version 5.00.2194.1 of netapi32.dll causes no apparent system instability or problems. If the file info is correct, that file is from win-2k. It's significantly larger than the original version (303kb vs 20kb). I'll try this same file on my office win-98 system (without KernelEx) where it's "windows network" LAN functionality would presumably be more heavily used.

-----------------

Well, I tried version 5.00.2194.1 of netapi32.dll on my win-98se office computer. Unlike my home PC, my office PC wouldn't let me mess with the file while windows was running, so I had to swap the file while booted into DOS. Upon restart, my system performed auto-logon into our NT-controlled domain, and I had full access to our internal LAN and the various shares on NT and XP machines. In other words, this version of netapi32.dll worked just fine.

Edited by wsxedcrfv
Link to comment
Share on other sites

Well, this being the case, you might as well test netapi32.dll v. 4.90.0.3000 (it is in WIN_13.CAB) in your machines. It might be the perfect compromise for running dmt.exe... Good luck!

Link to comment
Share on other sites

  • 4 weeks later...

Well, this being the case, you might as well test netapi32.dll v. 4.90.0.3000 (it is in WIN_13.CAB) in your machines. It might be the perfect compromise for running dmt.exe... Good luck!

Well I tried netapi32.dll 5.00.2194.1/4.90.0.3000 and they both works.

I did notice that MDGx say don't use the files listed below and I retested them on my own.

My network adapters was detected, installed the drivers and now I'm connected.

The only one that doesn't work is NETDI.DLL, it breaks the network file in the control panel.

But the rest works without problems from what I can tell.

6-11-2005

* Removed WinME replacements [%windir%\SYSTEM]: NETAPI.DLL, NETAPI32.DLL,

NETDI.DLL + NETOS.DLL from options 1 + 2 to fix network device detection. MUST

use Windows 98 SE files instead. [thank you Eck]

Link to comment
Share on other sites

I've tested those files under 98SE way back [2005], without KernelEx, only for the purpose of adding them to 98SE2ME.

At the time they gave me errors, so I removed them.

Whenever I manage to install VirtualPC 2007 + 98SE in virtual environment [hopefully soon], I'll test them again, with and without KEX.

Link to comment
Share on other sites

  • 1 month later...

Well, this being the case, you might as well test netapi32.dll v. 4.90.0.3000 (it is in WIN_13.CAB) in your machines. It might be the perfect compromise for running dmt.exe... Good luck!

Looks like I have the exact same issue trying to run Altium Viewer, DXP.EXE (using KernelEx 4.5RC1). Same DLL's, initial error is missing export NETAPI32.DLL:NetApiBufferFree.

Anyway, I managed to find the ME version of NETAPI32.DLL (as you've suggested here), but alas, this produced the same error as the 98SE version. Looks like this problem needs a "NetApi32Ex" kinda solution.

Joe.

Link to comment
Share on other sites

  • 1 year later...

NetApiEx was introduced in the ImportPatcher topic, but will continue here.

Btw, here are some more netapi32 functions you may want to add in your dll:

NetGetAnyDCName

NetGroupEnum

NetGroupGetInfo

NetGroupGetUsers

NetShareEnum

NetUserGetGroups

This is a slippery slope...I found over 100 others while researching NetMessageBufferSend. And many of them aren't even in APIParameterCounts! :whistle:

I'll begin adding them in batches. :yes:

Also, Win9x has in Svrapi.dll ANSII versions of some of the NT Netapi32 functions. A little glue code might allow them to be used as functioning replacements.

And also, the Netbios function in Netapi32.dll calls _Netbios in Netbios.dll, so it might be possible for NetApiEx to bypass Netbios and call _Netbios instead.

Link to comment
Share on other sites

> Have you succesfully tested a netbios function forwarding and if so can you tell on which program so I can try it out myself?

No, I have yet to find a suitable program. The forwarding is produced by the VC5 linker from a .def file the same way that works for the ComDlgEx open and save functions.

...Okay, a brute-force search of my entire 30GB HDD just now found a program named winbox.exe that is static-linked to Netapi32.Netbios. But none linked to the NT Netapi32 functions. I'll do some testing and report back....

Well you could perhaps download and test with this one I mentioned in the other thread:

I've got that 3DVIA Printscreen program (for capturing 3D models from opengl and directx applications) that's got a dll requiring both NetMessageBufferSend and Netbios from netapi32

Link to comment
Share on other sites

Four ways to use NetApiEx.dll:

  1. Place in app or %system% folder and use ImportPatcher to redirect app to it. (for testing mainly)
  2. Rename to NetApi32.dll and place in app folder. (local usage; must not be listed in KnownDLLs)
  3. Rename to NetApi32.dll and place in %system% folder after renaming original to NetApi00.dll
  4. Place in %KernelEx%, add to 'contents' list in Core.ini, and use as a new KernelEx extension:
    contents=std,kexbases,kexbasen,NetApiEx

Method 4 is where I could use help testing and some feedback.

Well, I can confirm method 4 works!

I can now use the unpatched version of 'JPlatin.dll' in the SAP GUI for Java client.

Joe.

PS. Altium Viewer 6.3 is also working with an unpatched 'DXP.exe'.

Edited by jds
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...