moved the hardcoded macros in the vcproj & just disable the warning for the crt
diff --git a/arch/AArch64/AArch64BaseInfo.c b/arch/AArch64/AArch64BaseInfo.c
index 5f7dc2a..0a7ea1f 100644
--- a/arch/AArch64/AArch64BaseInfo.c
+++ b/arch/AArch64/AArch64BaseInfo.c
@@ -14,7 +14,10 @@
 /* Capstone Disassembler Engine */
 /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013> */
 
-#define _CRT_SECURE_NO_WARNINGS
+#if defined (WIN32) || defined (WIN64) || defined (_WIN32) || defined (_WIN64)
+#pragma warning(disable:4996)
+#endif
+
 #include "../../utils.h"
 
 #include <stdio.h>
diff --git a/capstone-win32-vc/capstone-win32/capstone-win32.vcxproj b/capstone-win32-vc/capstone-win32/capstone-win32.vcxproj
index 0157505..d7d29c8 100644
--- a/capstone-win32-vc/capstone-win32/capstone-win32.vcxproj
+++ b/capstone-win32-vc/capstone-win32/capstone-win32.vcxproj
@@ -103,7 +103,7 @@
       <Optimization>MaxSpeed</Optimization>
       <FunctionLevelLinking>true</FunctionLevelLinking>
       <IntrinsicFunctions>true</IntrinsicFunctions>
-      <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>CAPSTONE_HAS_ARM;CAPSTONE_HAS_ARM64;CAPSTONE_HAS_MIPS;CAPSTONE_HAS_POWERPC;CAPSTONE_HAS_SPARC;CAPSTONE_HAS_SYSZ;CAPSTONE_HAS_X86;USE_SYS_DYN_MEM;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <SDLCheck>true</SDLCheck>
       <AdditionalIncludeDirectories>D:\Codes\capstone\capstone-win32-vc\headers;D:\Codes\capstone\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ClCompile>
diff --git a/cs.c b/cs.c
index f566af4..9d7db50 100644
--- a/cs.c
+++ b/cs.c
@@ -1,16 +1,8 @@
 /* Capstone Disassembly Engine */
 /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2014 */
-#define _CRT_SECURE_NO_WARNINGS
-
-#define CAPSTONE_HAS_ARM
-#define CAPSTONE_HAS_ARM64
-#define CAPSTONE_HAS_MIPS
-#define CAPSTONE_HAS_POWERPC
-#define CAPSTONE_HAS_SPARC
-#define CAPSTONE_HAS_SYSZ
-#define CAPSTONE_HAS_X86
-#define USE_SYS_DYN_MEM
-
+#if defined (WIN32) || defined (WIN64) || defined (_WIN32) || defined (_WIN64)
+#pragma warning(disable:4996)
+#endif
 #include <stddef.h>
 #include <stdio.h>
 #include <stdlib.h>