I wish to use the "Windows Server 2003 SP1 Platform SDK" with Visual Studio.Net 2003
This is because the DirectShow software has been moved from the DirectX SDK to the Platform SDK (and I wish to use the latest 'august 2005' version of the DirectX SDK and also DirectShow, so I need both SDKs installed)
My problem is that having registered the Platform SDK's directories with Visual Studio, a re-compile of my previously working c++ code now generates the following error.
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\atlsocket.inl(26): error C3861: 'FreeAddrInfo': identifier not found, even with argument-dependent lookup
As far I as I know, my code does nothing with "atlsocket" so I am at a loss as to how to fix this (presumably) library version related issue.

Using the Plaform SDK with Visual Studio.Net 2003
Steve Camsell
Dear Nikola,
The directories are as follows...
Executable
C:\Program Files\Microsoft Platform SDK\bin\winnt
C:\Program Files\Microsoft Platform SDK\bin
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Utilities\Bin\x86
$(VCInstallDir)bin
$(VSInstallDir)Common7\Tools\bin\prerelease
$(VSInstallDir)Common7\tools
$(VSInstallDir)Common7\ide
C:\Program Files\HTML Help Workshop
$(FrameworkSDKDir)bin
$(FrameworkDir)$(FrameworkVersion)
C:\WINDOWS\system32
C:\WINDOWS
C:\WINDOWS\System32\Wbem
Include
C:\Program Files\Microsoft Platform SDK\include
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Include
$(VCInstallDir)include
$(VCInstallDir)atlmfc\include
$(VCInstallDir)PlatformSDK\include\prerelease
$(VCInstallDir)PlatformSDK\include
$(FrameworkSDKDir)include
Libraries
C:\Program Files\Microsoft Platform SDK\lib
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Lib\x86
$(VCInstallDir)lib
$(VCInstallDir)atlmfc\lib
$(VCInstallDir)PlatformSDK\lib\prerelease
$(VCInstallDir)PlatformSDK\lib
$(FrameworkSDKDir)lib
The four build errors that I get are as follows...
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\atlsocket.inl(26): error C3861: 'FreeAddrInfo': identifier not found, even with argument-dependent lookup
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\atlsocket.inl(42): error C3861: 'FreeAddrInfo': identifier not found, even with argument-dependent lookup
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\atlsocket.inl(52): error C2039: 'GetAddrInfo' : is not a member of 'operator``global namespace'''
c:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\atlsocket.inl(52): error C2660: 'ATL::CSocketAddr::GetAddrInfo' : function does not take 4 arguments
DevMatt
#define
WINVER 0x0502I had the same problem on W2003 with HTTPSVR sample.
Leonid
Joe Gradecki
Include
$(VCInstallDir)include
$(VCInstallDir)atlmfc\include
C:\Program Files\Microsoft Platform SDK\include
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Include
$(FrameworkSDKDir)include
Libraries
$(VCInstallDir)lib
$(VCInstallDir)atlmfc\lib
C:\Program Files\Microsoft Platform SDK\lib
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Lib\x86
That should do it.
Nikola
SanDiegoKiss
Dennis Yang
Thank you for your reply, unfortunately that did not change the errors received.
The closest I have come to a solution so far is to remove all references to the default include directories and to just add the ones from the Platform SDK.
C:\Program Files\Microsoft Platform SDK\include
C:\Program Files\Microsoft Platform SDK\Include\atl
C:\Program Files\Microsoft Platform SDK\Include\crt
C:\Program Files\Microsoft Platform SDK\Include\mfc
C:\Program Files\Microsoft DirectX 9.0 SDK (February 2005)\Include
This gets rid of all the errors except the following...
c:\Documents and Settings\nl1\My Documents\Personal\My Projects\Strider\BrainRegion.h(2): fatal error C1083: Cannot open include file: 'afxtempl.h': No such file or directory
This error occurs because my code uses the template library and the SDK does not seem to have the template library header file, or it has been renamed. Any suggestions
Yours Sincerely
Nicholas Lee
GreenHorse
That atlsocket.inl conflicted with something related to the TCP/IP and I just commented out its insides, all of them. As a result the project was successfully compiled.
Ralf Hedler
Nikola
aprivate
It seems the problem in IDE.You just close all the IDE and register the PSDK then reopen ur sol in fresh IDE it may work
Rocinante8
Actually, I eventually decided that this problem had wasted too much of my valuable time and I gave up on the 'august 2005 release' and used an older version of the DirectX sdk which still included DirectShow. This older version works without any problems.
There appears to be no (obvious) way to make the "Windows Server 2003 SP1 Platform SDK" work with Visual Studio.Net 2003
This integration problem 'may' be becuase Microsoft is pushing other software technogies to do the same thing as DirectShow and is retiring DirectShow. That's why it got pushed into the platform sdk.
These new technologies however only work on XP and not everyone uses XP.