diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.dsp b/bacnet-stack/ports/win32/bacnet/bacnet.dsp index f288ee62..fe8e9990 100644 --- a/bacnet-stack/ports/win32/bacnet/bacnet.dsp +++ b/bacnet-stack/ports/win32/bacnet/bacnet.dsp @@ -42,7 +42,7 @@ RSC=rc.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "..\..\.." /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "NDEBUG" /D "BACDL_BIP" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "BACAPP_ALL" /D BACAPP_PRINT_ENABLED=1 /FD /c +# ADD CPP /nologo /MT /W3 /GX /O2 /I "..\..\.." /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "NDEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "BACAPP_ALL" /D PRINT_ENABLED=1 /D BIG_ENDIAN=0 /D USE_INADDR=0 /D "BACDL_BIP" /FD /c # SUBTRACT CPP /YX # ADD BASE RSC /l 0x409 /d "NDEBUG" # ADD RSC /l 0x409 /d "NDEBUG" @@ -67,7 +67,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c -# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "..\..\..\include\\" /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "_DEBUG" /D "BACDL_BIP" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "BACAPP_ALL" /D PRINT_ENABLED=1 /D BIG_ENDIAN=0 /D USE_INADDR=0 /FR /FD /GZ /c +# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\..\..\include\\" /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "BACAPP_ALL" /D PRINT_ENABLED=1 /D BIG_ENDIAN=0 /D USE_INADDR=0 /D "BACDL_BIP" /FR /FD /GZ /c # SUBTRACT CPP /YX # ADD BASE RSC /l 0x409 /d "_DEBUG" # ADD RSC /l 0x409 /d "_DEBUG" @@ -193,6 +193,10 @@ SOURCE=..\..\..\demo\object\device.c # End Source File # Begin Source File +SOURCE=..\dlmstp.c +# End Source File +# Begin Source File + SOURCE=..\..\..\demo\handler\h_arf.c # End Source File # Begin Source File @@ -253,6 +257,10 @@ SOURCE=..\..\..\demo\object\mso.c # End Source File # Begin Source File +SOURCE=..\..\..\src\mstp.c +# End Source File +# Begin Source File + SOURCE=..\..\..\demo\handler\noserv.c # End Source File # Begin Source File @@ -273,6 +281,10 @@ SOURCE=..\..\..\src\rp.c # End Source File # Begin Source File +SOURCE=..\rs485.c +# End Source File +# Begin Source File + SOURCE=..\..\..\demo\handler\s_rp.c # End Source File # Begin Source File diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.ncb b/bacnet-stack/ports/win32/bacnet/bacnet.ncb index 9aa4efa9..7ff5cbd2 100644 Binary files a/bacnet-stack/ports/win32/bacnet/bacnet.ncb and b/bacnet-stack/ports/win32/bacnet/bacnet.ncb differ diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.opt b/bacnet-stack/ports/win32/bacnet/bacnet.opt index 50bababa..53a12591 100644 Binary files a/bacnet-stack/ports/win32/bacnet/bacnet.opt and b/bacnet-stack/ports/win32/bacnet/bacnet.opt differ diff --git a/bacnet-stack/ports/win32/bacnet/bacnet.plg b/bacnet-stack/ports/win32/bacnet/bacnet.plg index d46b83ad..d6be4236 100644 --- a/bacnet-stack/ports/win32/bacnet/bacnet.plg +++ b/bacnet-stack/ports/win32/bacnet/bacnet.plg @@ -6,15 +6,67 @@ --------------------Configuration: bacnet - Win32 Debug--------------------

Command Lines

-Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP72.tmp" with contents +Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP35.tmp" with contents [ -/nologo /MLd /W3 /Gm /GX /ZI /Od /I "..\..\..\include\\" /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "_DEBUG" /D "BACDL_BIP" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "BACAPP_ALL" /D PRINT_ENABLED=1 /D BIG_ENDIAN=0 /D USE_INADDR=0 /FR"Debug/" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c -"C:\code\bacnet-stack\src\bacreal.c" +/nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\..\..\include\\" /I ".." /I "..\..\..\demo\object\\" /I "..\..\..\demo\handler\\" /D "_DEBUG" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "BACAPP_ALL" /D PRINT_ENABLED=1 /D BIG_ENDIAN=0 /D USE_INADDR=0 /D "BACDL_BIP" /FR"Debug/" /Fo"Debug/" /Fd"Debug/" /FD /GZ /c +"C:\code\bacnet-stack\src\abort.c" +"C:\code\bacnet-stack\src\address.c" +"C:\code\bacnet-stack\demo\object\ai.c" +"C:\code\bacnet-stack\demo\object\ao.c" +"C:\code\bacnet-stack\src\apdu.c" +"C:\code\bacnet-stack\src\arf.c" +"C:\code\bacnet-stack\demo\object\av.c" "C:\code\bacnet-stack\src\bacaddr.c" +"C:\code\bacnet-stack\src\bacapp.c" +"C:\code\bacnet-stack\src\bacdcode.c" +"C:\code\bacnet-stack\src\bacerror.c" +"C:\code\bacnet-stack\demo\object\bacfile.c" "C:\code\bacnet-stack\src\bacint.c" +"C:\code\bacnet-stack\src\bacreal.c" +"C:\code\bacnet-stack\src\bacstr.c" +"C:\code\bacnet-stack\src\bactext.c" +"C:\code\bacnet-stack\demo\object\bi.c" +"C:\code\bacnet-stack\src\bigend.c" +"C:\code\bacnet-stack\ports\win32\bip-init.c" +"C:\code\bacnet-stack\src\bip.c" +"C:\code\bacnet-stack\demo\object\bo.c" +"C:\code\bacnet-stack\demo\object\bv.c" +"C:\code\bacnet-stack\src\crc.c" +"C:\code\bacnet-stack\src\datetime.c" +"C:\code\bacnet-stack\src\dcc.c" +"C:\code\bacnet-stack\demo\object\device.c" +"C:\code\bacnet-stack\demo\handler\h_arf.c" +"C:\code\bacnet-stack\demo\handler\h_arf_a.c" +"C:\code\bacnet-stack\demo\handler\h_iam.c" +"C:\code\bacnet-stack\demo\handler\h_rp.c" +"C:\code\bacnet-stack\demo\handler\h_rp_a.c" +"C:\code\bacnet-stack\demo\handler\h_whois.c" +"C:\code\bacnet-stack\demo\handler\h_wp.c" +"C:\code\bacnet-stack\src\iam.c" +"C:\code\bacnet-stack\src\indtext.c" +"C:\code\bacnet-stack\demo\object\lc.c" +"C:\code\bacnet-stack\demo\object\lsp.c" +"C:\code\bacnet-stack\ports\win32\main.c" +"C:\code\bacnet-stack\demo\object\mso.c" +"C:\code\bacnet-stack\demo\handler\noserv.c" +"C:\code\bacnet-stack\src\npdu.c" +"C:\code\bacnet-stack\src\reject.c" +"C:\code\bacnet-stack\src\ringbuf.c" +"C:\code\bacnet-stack\src\rp.c" +"C:\code\bacnet-stack\demo\handler\s_rp.c" +"C:\code\bacnet-stack\demo\handler\s_whois.c" +"C:\code\bacnet-stack\demo\handler\s_wp.c" +"C:\code\bacnet-stack\src\tsm.c" +"C:\code\bacnet-stack\demo\handler\txbuf.c" +"C:\code\bacnet-stack\src\version.c" +"C:\code\bacnet-stack\src\whois.c" +"C:\code\bacnet-stack\src\wp.c" +"C:\code\bacnet-stack\src\mstp.c" +"C:\code\bacnet-stack\ports\win32\dlmstp.c" +"C:\code\bacnet-stack\ports\win32\rs485.c" ] -Creating command line "cl.exe @C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP72.tmp" -Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP73.tmp" with contents +Creating command line "cl.exe @C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP35.tmp" +Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP36.tmp" with contents [ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/bacnet.pdb" /debug /machine:I386 /out:"Debug/bacnet.exe" /pdbtype:sept ".\Debug\abort.obj" @@ -24,10 +76,13 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32 ".\Debug\apdu.obj" ".\Debug\arf.obj" ".\Debug\av.obj" +".\Debug\bacaddr.obj" ".\Debug\bacapp.obj" ".\Debug\bacdcode.obj" ".\Debug\bacerror.obj" ".\Debug\bacfile.obj" +".\Debug\bacint.obj" +".\Debug\bacreal.obj" ".\Debug\bacstr.obj" ".\Debug\bactext.obj" ".\Debug\bi.obj" @@ -55,7 +110,6 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32 ".\Debug\mso.obj" ".\Debug\noserv.obj" ".\Debug\npdu.obj" -".\Debug\version.obj" ".\Debug\reject.obj" ".\Debug\ringbuf.obj" ".\Debug\rp.obj" @@ -64,21 +118,81 @@ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32 ".\Debug\s_wp.obj" ".\Debug\tsm.obj" ".\Debug\txbuf.obj" +".\Debug\version.obj" ".\Debug\whois.obj" ".\Debug\wp.obj" -".\Debug\bacreal.obj" -".\Debug\bacaddr.obj" -".\Debug\bacint.obj" +".\Debug\mstp.obj" +".\Debug\dlmstp.obj" +".\Debug\rs485.obj" ] -Creating command line "link.exe @C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP73.tmp" +Creating command line "link.exe @C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP36.tmp"

Output Window

Compiling... -bacreal.c +abort.c +address.c +ai.c +ao.c +apdu.c +arf.c +av.c bacaddr.c +bacapp.c +bacdcode.c +bacerror.c +bacfile.c bacint.c +bacreal.c +bacstr.c +bactext.c +bi.c +bigend.c +bip-init.c +bip.c Generating Code... +Compiling... +bo.c +bv.c +crc.c +datetime.c +dcc.c +device.c +h_arf.c +h_arf_a.c +h_iam.c +h_rp.c +h_rp_a.c +h_whois.c +h_wp.c +iam.c +indtext.c +lc.c +lsp.c +main.c +mso.c +noserv.c +Generating Code... +Compiling... +npdu.c +reject.c +ringbuf.c +rp.c +s_rp.c +s_whois.c +s_wp.c +tsm.c +txbuf.c +version.c +whois.c +wp.c +mstp.c +dlmstp.c +rs485.c +Generating Code... +c:\code\bacnet-stack\ports\win32\dlmstp.c(448) : warning C4761: integral size mismatch in argument; conversion supplied +c:\code\bacnet-stack\src\mstp.c(656) : warning C4761: integral size mismatch in argument; conversion supplied +c:\code\bacnet-stack\src\mstp.c(944) : warning C4761: integral size mismatch in argument; conversion supplied Linking... -Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP75.tmp" with contents +Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP38.tmp" with contents [ /nologo /o"Debug/bacnet.bsc" ".\Debug\abort.sbr" @@ -88,10 +202,13 @@ Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP75.tmp" with conte ".\Debug\apdu.sbr" ".\Debug\arf.sbr" ".\Debug\av.sbr" +".\Debug\bacaddr.sbr" ".\Debug\bacapp.sbr" ".\Debug\bacdcode.sbr" ".\Debug\bacerror.sbr" ".\Debug\bacfile.sbr" +".\Debug\bacint.sbr" +".\Debug\bacreal.sbr" ".\Debug\bacstr.sbr" ".\Debug\bactext.sbr" ".\Debug\bi.sbr" @@ -119,7 +236,6 @@ Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP75.tmp" with conte ".\Debug\mso.sbr" ".\Debug\noserv.sbr" ".\Debug\npdu.sbr" -".\Debug\version.sbr" ".\Debug\reject.sbr" ".\Debug\ringbuf.sbr" ".\Debug\rp.sbr" @@ -128,19 +244,20 @@ Creating temporary file "C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP75.tmp" with conte ".\Debug\s_wp.sbr" ".\Debug\tsm.sbr" ".\Debug\txbuf.sbr" +".\Debug\version.sbr" ".\Debug\whois.sbr" ".\Debug\wp.sbr" -".\Debug\bacreal.sbr" -".\Debug\bacaddr.sbr" -".\Debug\bacint.sbr"] -Creating command line "bscmake.exe @C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP75.tmp" +".\Debug\mstp.sbr" +".\Debug\dlmstp.sbr" +".\Debug\rs485.sbr"] +Creating command line "bscmake.exe @C:\DOCUME~1\cbkargs\LOCALS~1\Temp\RSP38.tmp" Creating browse info file...

Output Window

Results

-bacnet.exe - 0 error(s), 0 warning(s) +bacnet.exe - 0 error(s), 3 warning(s) diff --git a/bacnet-stack/ports/win32/bacnet/readme.txt b/bacnet-stack/ports/win32/bacnet/readme.txt index 0f4c86dc..6c7e1853 100644 --- a/bacnet-stack/ports/win32/bacnet/readme.txt +++ b/bacnet-stack/ports/win32/bacnet/readme.txt @@ -111,3 +111,21 @@ In Visual C++, add a Preprocessor Definition by: 6. Type TSM_ENABLED=1 in that edit box (using a comma if necessary) 7. Press OK 8. Compile the entire project again... + +Q. error LNK2001: unresolved external symbol __beginthread +A. Visual C++ needs to have the multithreaded library when compiled +with MS/TP datalink enabled (BACDL_MSTP instead of BACDL_BIP): +1. Select "Project" menu +2. Select "Settings..." +3. Select the "C/C++" tab (3rd Tab) +4. Select the Category: Code Generation +5. Select the Multithreaded from the "Use runtime library" box options + +Q. warning C4013: '_beginthreadex' undefined; assuming extern returning int +A. Visual C++ needs to have the multithreaded library when compiled +with MS/TP datalink enabled (BACDL_MSTP instead of BACDL_BIP): +1. Select "Project" menu +2. Select "Settings..." +3. Select the "C/C++" tab (3rd Tab) +4. Select the Category: Code Generation +5. Select the Multithreaded from the "Use runtime library" box options