欢迎光临
我们一直在努力

Nmap/Old Windows Releases

Nmap/Old Windows Releases

While
Nmap supports all modern versions of Windows, it no longer officially
supports some which are so old that even Microsoft has ceased all
support for them. This includes Windows NT, Windows 2000, and Windows
XP.

We would highly recommend upgrading any Windows systems that old for security purposes if nothing else.  But if you must run Nmap on such a system, the easiest option is to use use an older Nmap release.  You can find these in the Nmap dist directory (or older still versions in dist-old.
 The latest version reported to work on Windows XP SP2/SP3 is Nmap
6.47.  For older versions of Windows such as Windows 2K or XP without
Service Pack 2, we recommend Nmap 5.35DC1 or older.

When using Nmap on Windows 2000 (either an old version as
described above, or a newer version as described later on this page), a
couple dependencies from Microsoft may need to be installed first.  
Those are the Windows Installer 3.1 (v2) and the Security Update for Windows 2000 (KB835732).  After installing these, follow the general instructions in the following two sections to install Nmap.

Even current versions of Nmap may be usable with Windows 2000 or
XP if compiled the right way.  First familiarize yourself with Nmap’s normal Windows compilation instructions.  Then follow these instructions first reported by David Millis:

Here’s exactly what I did to get static 2010-built executables that work under earlier Windows versions. I’ve hardly
ever touched VC++, so pardon my repeated static-setting and rebuild lines at the end, if there’s an abridged
equivalent. 🙂

  1. Open nmap-5.51/mswin32/nmap.sln

  2. Solution-Configuration Manager: Active Config = Release

  3. ncat Project-Build Customizations…: masm = true (do before adding .asm’s)

  4. ncat Project-Add-New Item (C++): pointer.asm

.model flat

.data
__imp__EncodePointer () 4 dd dummy
__imp__DecodePointer () 4 dd dummy

EXTERNDEF __imp__EncodePointer () 4 : DWORD
EXTERNDEF __imp__DecodePointer () 4 : DWORD

.code
dummy proc
mov eax, [esp+4]
ret 4
dummy endp 

end
  1. ncat Project-Properties-Linker-System: Minimum Req Version = 5.0

  2. ncat Project-Properties-C/C++-Code Generation: Runtime Library = Multi-Threaded (non-dll)

  3. nbase Project-Properties-C/C++-Code Generation: Runtime Library = Multi-Threaded (non-dll)

  4. nsock Project-Properties-C/C++-Code Generation: Runtime Library = Multi-Threaded (non-dll)

  5. nbase Project-Project Only-Rebuild

  6. nsock Project-Project Only-Rebuild

  7. ncat Project-Project Only-Rebuild

nmap and nping worked the same way. Libs get MT. Executables get the MinReq and Asm as well.

The TedWVC blog has a useful guide on Win2K compatability when compiling with Visual C++ 2010.

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。