Skip to main content

Environment requirements

The SDK ships as two packages, x86 (Win32 / 32-bit) and x64 (64-bit), and the one you use must match your project’s target platform. Linking the x86 package into a 64-bit project (or the other way around) fails at link time with fatal error LNK1112: module machine type 'x86' conflicts with target machine type 'x64'.
  • Target platform: Windows x86 (Win32 / 32-bit) or x64 (64-bit)—pick the package that matches your project’s target platform
  • Language: C++
  • Runtime: the SDK package already includes the VC++ runtime DLLs it needs, so you don’t need to install a runtime redistributable on the target machine

Download the SDK

When a new version is released, follow the same naming pattern and replace the version number. The x64 package has an extra -x64 segment before the version number:
The SMeeting Windows SDK package already includes the underlying audio and video library (srtc.dll and others), so you don’t need to download the SRTC Windows SDK separately.

Directory structure

After unzipping you get the following (both packages have exactly the same layout, and the root directory inside is meeting_dll/ in both):
Both packages unzip to a directory with the same name. Don’t unzip them into the same directory, where they overwrite each other, and don’t mix lib and bin across architectures (the x86 SMeeting.lib / SMeeting.dll and the x64 ones are different binaries).

Project setup

1

Add the include directory

Add meeting_dll/include to your project’s additional include directories, then include the headers in your code:
2

Link the import library

Add meeting_dll/lib to the additional library directories and link SMeeting.lib.
3

Deploy the runtime dependencies

Copy everything under meeting_dll/bin into the directory that contains your executable:
Two things that are easy to miss:
  • The DLLs’ bitness must match YourApp.exe: a 32-bit app uses the bin from the x86 package, and a 64-bit app uses the bin from the x64 package
  • plugin/ must stay a subdirectory; don’t flatten the DLLs inside it into the root directory
The file list in bin changed starting with 1.0.0-alpha.6: it no longer contains DenModule.dll, pthreadGC2.dll, pthreadVC2.dll, rtp.dll, or zlib.dll, and adds zlib1.dll.These are dependency changes in the underlying audio and video library. Overwrite your distribution directory with the whole bin from the new package instead of copying files incrementally by name, so that old DLLs that are no longer needed don’t linger.
The contents of the bin directory change between versions, so we recommend copying it as a whole rather than picking files one by one by name—when you pick files by hand, it’s easy to miss newly added dependencies when you upgrade the SDK.

Next steps