diff options
Diffstat (limited to 'Tests/VSMidl/src')
-rw-r--r-- | Tests/VSMidl/src/CMakeLists.txt | 5 | ||||
-rw-r--r-- | Tests/VSMidl/src/main.cpp | 17 | ||||
-rw-r--r-- | Tests/VSMidl/src/test.idl | 30 |
3 files changed, 52 insertions, 0 deletions
diff --git a/Tests/VSMidl/src/CMakeLists.txt b/Tests/VSMidl/src/CMakeLists.txt new file mode 100644 index 0000000..28bb120 --- /dev/null +++ b/Tests/VSMidl/src/CMakeLists.txt @@ -0,0 +1,5 @@ +cmake_minimum_required(VERSION 2.8) +project(VSMidl) + +include_directories("${CMAKE_CURRENT_BINARY_DIR}/\$(IntDir)") +add_executable(VSMidl main.cpp test.idl) diff --git a/Tests/VSMidl/src/main.cpp b/Tests/VSMidl/src/main.cpp new file mode 100644 index 0000000..6b78fcc --- /dev/null +++ b/Tests/VSMidl/src/main.cpp @@ -0,0 +1,17 @@ +#include <stdio.h> +#include <test.h> +#include <test_i.c> + +int main(int argc, char** argv) +{ + IID libid = LIBID_CMakeMidlTestLib; + CLSID clsid = CLSID_CMakeMidlTest; + IID iid = IID_ICMakeMidlTest; + + printf("Running '%s'\n", argv[0]); + printf(" libid starts with '0x%08lx'\n", (long) libid.Data1); + printf(" clsid starts with '0x%08lx'\n", (long) clsid.Data1); + printf(" iid starts with '0x%08lx'\n", (long) iid.Data1); + + return 0; +} diff --git a/Tests/VSMidl/src/test.idl b/Tests/VSMidl/src/test.idl new file mode 100644 index 0000000..fd755c7 --- /dev/null +++ b/Tests/VSMidl/src/test.idl @@ -0,0 +1,30 @@ +import "oaidl.idl"; +import "ocidl.idl"; + +[ + object, + uuid(258CCEBE-8EE4-4A48-B78C-AC53BCD59E28), + dual, + nonextensible, + helpstring("ICMakeTest Interface"), + pointer_default(unique) +] +interface ICMakeMidlTest : IUnknown +{ + [id(1), helpstring("method Method")] HRESULT Method(); +} + +[ + uuid(0537BA59-7EEC-48F8-BD4B-369BC7D9807E), +] +library CMakeMidlTestLib +{ + [ + uuid(D2A90807-019A-46E5-BF47-FF4FA4352D2A), + helpstring("CMakeMidlTest Class") + ] + coclass CMakeMidlTest + { + [default] interface ICMakeMidlTest; + }; +} |