windows: expose public APIs with dllimport for user apps
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dfde981..2cb7117 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -150,6 +150,7 @@
 include_directories("${PROJECT_SOURCE_DIR}/include")
 
 if (BUILD_STATIC)
+    add_definitions(-DCAPSTONE_STATIC)
     add_library(capstone STATIC ${SOURCES})
 else ()
     add_definitions(-DCAPSTONE_SHARED)
diff --git a/include/capstone.h b/include/capstone.h
index bd3694a..ff4840a 100644
--- a/include/capstone.h
+++ b/include/capstone.h
@@ -20,8 +20,10 @@
 #pragma warning(disable:4100)
 #ifdef CAPSTONE_SHARED	// compiling DLL file
 #define CAPSTONE_EXPORT __declspec(dllexport)
-#else
+#elif defined(CAPSTONE_STATIC)
 #define CAPSTONE_EXPORT
+#else	// code uses our DLL
+#define CAPSTONE_EXPORT __declspec(dllimport)
 #endif
 #else	// not MSVC
 #define CAPSTONE_EXPORT