diff --git a/10.0.15042.0/Samples/AsyncReader/AsyncReader.sln b/10.0.15042.0/Samples/AsyncReader/AsyncReader.sln
new file mode 100644
index 000000000..41ff13743
--- /dev/null
+++ b/10.0.15042.0/Samples/AsyncReader/AsyncReader.sln
@@ -0,0 +1,28 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AsyncReader", "AsyncReader.vcxproj", "{079790FD-97A0-428D-BF8D-83D24C1D6A56}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.ActiveCfg = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.Build.0 = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.ActiveCfg = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.Build.0 = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.ActiveCfg = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.Build.0 = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.ActiveCfg = Release|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/AsyncReader/AsyncReader.vcxproj b/10.0.15042.0/Samples/AsyncReader/AsyncReader.vcxproj
new file mode 100644
index 000000000..79c42d214
--- /dev/null
+++ b/10.0.15042.0/Samples/AsyncReader/AsyncReader.vcxproj
@@ -0,0 +1,206 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}
+ Win32Proj
+ Console
+ 10.0.14393.0
+
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+ copy message.txt $(OutDir)
+
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+ copy message.txt $(OutDir)
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+ copy message.txt $(OutDir)
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+ copy message.txt $(OutDir)
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/AsyncReader/Main.cpp b/10.0.15042.0/Samples/AsyncReader/Main.cpp
new file mode 100644
index 000000000..d487796b2
--- /dev/null
+++ b/10.0.15042.0/Samples/AsyncReader/Main.cpp
@@ -0,0 +1,95 @@
+#include "pch.h"
+
+using namespace winrt;
+using namespace Windows::Foundation;
+
+struct file
+{
+ file(wchar_t const * const filename) :
+ m_handle(create(filename)),
+ m_io(get_abi(m_handle))
+ {
+ }
+
+ auto read(uint64_t const offset, void * const buffer, size_t const size)
+ {
+ return m_io.start([=, handle = get_abi(m_handle)](OVERLAPPED & overlapped)
+ {
+ overlapped.Offset = static_cast(offset);
+ overlapped.OffsetHigh = offset >> 32;
+
+ if (!ReadFile(handle, buffer, static_cast(size), nullptr, &overlapped))
+ {
+ const DWORD error = GetLastError();
+
+ if (error != ERROR_IO_PENDING)
+ {
+ throw hresult_error(HRESULT_FROM_WIN32(error));
+ }
+ }
+ });
+ }
+
+private:
+
+ struct file_traits
+ {
+ using type = HANDLE;
+
+ static type invalid() noexcept
+ {
+ return INVALID_HANDLE_VALUE;
+ }
+
+ static void close(type value) noexcept
+ {
+ WINRT_VERIFY(CloseHandle(value));
+ }
+ };
+
+ using file_handle = impl::handle;
+
+ static file_handle create(wchar_t const * const filename)
+ {
+ file_handle handle = CreateFile(filename,
+ GENERIC_READ,
+ 0,
+ nullptr,
+ OPEN_EXISTING,
+ FILE_FLAG_OVERLAPPED,
+ nullptr);
+
+ if (!handle)
+ {
+ throw_last_error();
+ }
+
+ return handle;
+ }
+
+ file_handle m_handle;
+ resumable_io m_io;
+};
+
+IAsyncAction sample()
+{
+ file reader(L"message.txt");
+
+ std::array buffer;
+ uint64_t offset = 0;
+
+ while (uint32_t const bytes = co_await reader.read(offset, buffer.data(), buffer.size()))
+ {
+ printf("%.*s", bytes, buffer.data());
+ offset += bytes;
+ }
+
+ printf("\n");
+}
+
+int main()
+{
+ init_apartment();
+
+ sample().get();
+}
diff --git a/10.0.15042.0/Samples/AsyncReader/message.txt b/10.0.15042.0/Samples/AsyncReader/message.txt
new file mode 100644
index 000000000..e463eb2c3
--- /dev/null
+++ b/10.0.15042.0/Samples/AsyncReader/message.txt
@@ -0,0 +1,3 @@
+https://github.com/microsoft/cppwinrt
+
+C++/WinRT is a standard C++ language projection for the Windows Runtime implemented solely in header files. It allows you to both author and consume Windows Runtime APIs using any standards-compliant C++ compiler. C++/WinRT is designed to provide C++ developers with first-class access to the modern Windows API.
diff --git a/10.0.15042.0/Samples/AsyncReader/pch.cpp b/10.0.15042.0/Samples/AsyncReader/pch.cpp
new file mode 100644
index 000000000..1d9f38c57
--- /dev/null
+++ b/10.0.15042.0/Samples/AsyncReader/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/AsyncReader/pch.h b/10.0.15042.0/Samples/AsyncReader/pch.h
new file mode 100644
index 000000000..febe8e023
--- /dev/null
+++ b/10.0.15042.0/Samples/AsyncReader/pch.h
@@ -0,0 +1,5 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/base.h"
diff --git a/10.0.15042.0/Samples/Blocks/App.cpp b/10.0.15042.0/Samples/Blocks/App.cpp
new file mode 100644
index 000000000..fbf188f93
--- /dev/null
+++ b/10.0.15042.0/Samples/Blocks/App.cpp
@@ -0,0 +1,151 @@
+#include "pch.h"
+
+using namespace winrt;
+
+using namespace Windows;
+using namespace Windows::ApplicationModel::Core;
+using namespace Windows::Foundation::Numerics;
+using namespace Windows::UI;
+using namespace Windows::UI::Core;
+using namespace Windows::UI::Composition;
+
+struct App : implements
+{
+ CompositionTarget m_target{ nullptr };
+ VisualCollection m_visuals{ nullptr };
+ Visual m_selected{ nullptr };
+ float2 m_offset{};
+
+ IFrameworkView CreateView()
+ {
+ return *this;
+ }
+
+ void Initialize(CoreApplicationView const &)
+ {
+ }
+
+ void Load(hstring_view)
+ {
+ }
+
+ void Uninitialize()
+ {
+ }
+
+ void Run()
+ {
+ CoreWindow window = CoreWindow::GetForCurrentThread();
+ window.Activate();
+
+ CoreDispatcher dispatcher = window.Dispatcher();
+ dispatcher.ProcessEvents(CoreProcessEventsOption::ProcessUntilQuit);
+ }
+
+ void SetWindow(CoreWindow const & window)
+ {
+ Compositor compositor;
+ ContainerVisual root = compositor.CreateContainerVisual();
+ m_target = compositor.CreateTargetForCurrentView();
+ m_target.Root(root);
+ m_visuals = root.Children();
+
+ window.PointerPressed({ this, &App::OnPointerPressed });
+ window.PointerMoved({ this, &App::OnPointerMoved });
+
+ window.PointerReleased([&](auto && ...)
+ {
+ m_selected = nullptr;
+ });
+ }
+
+ void OnPointerPressed(IInspectable const &, PointerEventArgs const & args)
+ {
+ float2 const point = args.CurrentPoint().Position();
+
+ for (Visual visual : m_visuals)
+ {
+ float3 const offset = visual.Offset();
+ float2 const size = visual.Size();
+
+ if (point.x >= offset.x &&
+ point.x < offset.x + size.x &&
+ point.y >= offset.y &&
+ point.y < offset.y + size.y)
+ {
+ m_selected = visual;
+ m_offset.x = offset.x - point.x;
+ m_offset.y = offset.y - point.y;
+ }
+ }
+
+ if (m_selected)
+ {
+ m_visuals.Remove(m_selected);
+ m_visuals.InsertAtTop(m_selected);
+ }
+ else
+ {
+ AddVisual(point);
+ }
+ }
+
+ void OnPointerMoved(IInspectable const &, PointerEventArgs const & args)
+ {
+ if (m_selected)
+ {
+ float2 const point = args.CurrentPoint().Position();
+
+ m_selected.Offset(
+ {
+ point.x + m_offset.x,
+ point.y + m_offset.y,
+ 0.0f
+ });
+ }
+ }
+
+ void AddVisual(float2 const point)
+ {
+ Compositor compositor = m_visuals.Compositor();
+ SpriteVisual visual = compositor.CreateSpriteVisual();
+
+ static Color colors[] =
+ {
+ { 0xDC, 0x5B, 0x9B, 0xD5 },
+ { 0xDC, 0xED, 0x7D, 0x31 },
+ { 0xDC, 0x70, 0xAD, 0x47 },
+ { 0xDC, 0xFF, 0xC0, 0x00 }
+ };
+
+ static unsigned last = 0;
+ unsigned const next = ++last % _countof(colors);
+ visual.Brush(compositor.CreateColorBrush(colors[next]));
+
+ float const BlockSize = 100.0f;
+
+ visual.Size(
+ {
+ BlockSize,
+ BlockSize
+ });
+
+ visual.Offset(
+ {
+ point.x - BlockSize / 2.0f,
+ point.y - BlockSize / 2.0f,
+ 0.0f,
+ });
+
+ m_visuals.InsertAtTop(visual);
+
+ m_selected = visual;
+ m_offset.x = -BlockSize / 2.0f;
+ m_offset.y = -BlockSize / 2.0f;
+ }
+};
+
+int __stdcall wWinMain(HINSTANCE, HINSTANCE, PWSTR, int)
+{
+ CoreApplication::Run(App());
+}
diff --git a/10.0.15042.0/Samples/Blocks/App.winmd b/10.0.15042.0/Samples/Blocks/App.winmd
new file mode 100644
index 000000000..af05904ab
Binary files /dev/null and b/10.0.15042.0/Samples/Blocks/App.winmd differ
diff --git a/10.0.15042.0/Samples/Blocks/Assets/Logo.scale-100.png b/10.0.15042.0/Samples/Blocks/Assets/Logo.scale-100.png
new file mode 100644
index 000000000..e26771cb3
Binary files /dev/null and b/10.0.15042.0/Samples/Blocks/Assets/Logo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Blocks/Assets/SmallLogo.scale-100.png b/10.0.15042.0/Samples/Blocks/Assets/SmallLogo.scale-100.png
new file mode 100644
index 000000000..f3fc56a0e
Binary files /dev/null and b/10.0.15042.0/Samples/Blocks/Assets/SmallLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Blocks/Assets/SplashScreen.scale-100.png b/10.0.15042.0/Samples/Blocks/Assets/SplashScreen.scale-100.png
new file mode 100644
index 000000000..c951e031b
Binary files /dev/null and b/10.0.15042.0/Samples/Blocks/Assets/SplashScreen.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Blocks/Assets/StoreLogo.scale-100.png b/10.0.15042.0/Samples/Blocks/Assets/StoreLogo.scale-100.png
new file mode 100644
index 000000000..dcb672712
Binary files /dev/null and b/10.0.15042.0/Samples/Blocks/Assets/StoreLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Blocks/Assets/WideLogo.scale-100.png b/10.0.15042.0/Samples/Blocks/Assets/WideLogo.scale-100.png
new file mode 100644
index 000000000..9dd94b628
Binary files /dev/null and b/10.0.15042.0/Samples/Blocks/Assets/WideLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Blocks/Blocks.sln b/10.0.15042.0/Samples/Blocks/Blocks.sln
new file mode 100644
index 000000000..9b17135b7
--- /dev/null
+++ b/10.0.15042.0/Samples/Blocks/Blocks.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Blocks", "Blocks.vcxproj", "{1F93D330-56FC-4497-BBDE-1807301B5C79}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|ARM = Release|ARM
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.ActiveCfg = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Build.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Deploy.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.ActiveCfg = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Build.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Deploy.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.ActiveCfg = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Build.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Deploy.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.ActiveCfg = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Build.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Deploy.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.ActiveCfg = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Build.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Deploy.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.ActiveCfg = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Build.0 = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Deploy.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/Blocks/Blocks.vcxproj b/10.0.15042.0/Samples/Blocks/Blocks.vcxproj
new file mode 100644
index 000000000..12a62d54b
--- /dev/null
+++ b/10.0.15042.0/Samples/Blocks/Blocks.vcxproj
@@ -0,0 +1,297 @@
+
+
+
+ {1f93d330-56fc-4497-bbde-1807301b5c79}
+ App
+ en-US
+ 14.0
+ true
+ Windows Store
+ 8.2
+ 10.0.10166.0
+ 10.0.10166.0
+ 10.0.14393.0
+ 10.0.14393.0
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+
+
+
+ Designer
+
+
+
+
+
+
+
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/Blocks/Package.appxmanifest b/10.0.15042.0/Samples/Blocks/Package.appxmanifest
new file mode 100644
index 000000000..9b8bb4a45
--- /dev/null
+++ b/10.0.15042.0/Samples/Blocks/Package.appxmanifest
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+ App
+ Microsoft
+ Assets\StoreLogo.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/Blocks/pch.cpp b/10.0.15042.0/Samples/Blocks/pch.cpp
new file mode 100644
index 000000000..bcb5590be
--- /dev/null
+++ b/10.0.15042.0/Samples/Blocks/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/Blocks/pch.h b/10.0.15042.0/Samples/Blocks/pch.h
new file mode 100644
index 000000000..00c293fc3
--- /dev/null
+++ b/10.0.15042.0/Samples/Blocks/pch.h
@@ -0,0 +1,8 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/Windows.ApplicationModel.Core.h"
+#include "winrt/Windows.UI.Core.h"
+#include "winrt/Windows.UI.Composition.h"
+#include "winrt/Windows.UI.Input.h"
diff --git a/10.0.15042.0/Samples/CL/build.bat b/10.0.15042.0/Samples/CL/build.bat
new file mode 100644
index 000000000..ac5df9ff2
--- /dev/null
+++ b/10.0.15042.0/Samples/CL/build.bat
@@ -0,0 +1 @@
+cl main.cpp /I ..\.. /EHsc /std:c++latest /d1permissive-
diff --git a/10.0.15042.0/Samples/CL/main.cpp b/10.0.15042.0/Samples/CL/main.cpp
new file mode 100644
index 000000000..9b33abde5
--- /dev/null
+++ b/10.0.15042.0/Samples/CL/main.cpp
@@ -0,0 +1,10 @@
+#pragma comment(lib, "windowsapp")
+
+#include "winrt\base.h"
+
+using namespace winrt;
+
+int main()
+{
+ initialize();
+}
diff --git a/10.0.15042.0/Samples/IBuffer/App.cpp b/10.0.15042.0/Samples/IBuffer/App.cpp
new file mode 100644
index 000000000..576203c9d
--- /dev/null
+++ b/10.0.15042.0/Samples/IBuffer/App.cpp
@@ -0,0 +1,177 @@
+#include "pch.h"
+
+namespace com = ::Windows::Storage::Streams;
+
+using namespace winrt;
+using namespace winrt::Windows::ApplicationModel::Activation;
+using namespace winrt::Windows::Foundation;
+using namespace winrt::Windows::Graphics::Imaging;
+using namespace winrt::Windows::Storage;
+using namespace winrt::Windows::Storage::Pickers;
+using namespace winrt::Windows::Storage::Streams;
+using namespace winrt::Windows::UI;
+using namespace winrt::Windows::UI::Core;
+using namespace winrt::Windows::UI::Xaml;
+using namespace winrt::Windows::UI::Xaml::Controls;
+using namespace winrt::Windows::UI::Xaml::Media;
+using namespace winrt::Windows::UI::Xaml::Media::Imaging;
+
+struct App : ApplicationT
+{
+public:
+
+ // The Click and Rendering methods be default use IInspectable from winrt::ABI. They should use the version from winrt::Windows.
+ void RenderingHandler(const IInspectable&, const IInspectable& args)
+ {
+ // Once the image is loaded successfully, then we can dynamically update the WritableBitmap.
+ if (m_imageLoaded)
+ {
+ auto renderingArgs = args.as();
+
+ // Get elapsed time
+ TimeSpan timeSpan = renderingArgs.RenderingTime();
+
+ // Calculate twistAngle from -180 to 180 degrees
+ double t = (timeSpan.count() % m_cycleDuration) / (double)m_cycleDuration;
+ double tprime = 2 * (t < 0.5 ? t : 1 - t);
+ double twistAngle = 2 * (tprime - 0.5) * 3.14159;
+
+ for (int yDst = 0; yDst < m_height; yDst++)
+ {
+ for (int xDst = 0; xDst < m_width; xDst++)
+ {
+ // Calculate length of point to center and angle
+ int xDelta = xDst - m_xCenter;
+ int yDelta = yDst - m_yCenter;
+ double distanceToCenter = sqrt(xDelta * xDelta +
+ yDelta * yDelta);
+ double angleClockwise = atan2(yDelta, xDelta);
+
+ // Calculation angle of rotation for twisting effect
+ double xEllipse = m_xCenter * cos(angleClockwise);
+ double yEllipse = m_yCenter * sin(angleClockwise);
+ double radius = sqrt(xEllipse * xEllipse +
+ yEllipse * yEllipse);
+ double fraction = max(0.0, 1 - distanceToCenter / radius);
+ double twist = fraction * twistAngle;
+
+ // Calculate the source pixel for each destination pixel
+ int xSrc = (int)(m_xCenter + (xDst - m_xCenter) * cos(twist)
+ - (yDst - m_yCenter) * sin(twist));
+ int ySrc = (int)(m_yCenter + (xDst - m_xCenter) * sin(twist)
+ + (yDst - m_yCenter) * cos(twist));
+ xSrc = max(0, min(m_width - 1, xSrc));
+ ySrc = max(0, min(m_height - 1, ySrc));
+
+ // Calculate the indices
+ int iDst = 4 * (yDst * m_width + xDst);
+ int iSrc = 4 * (ySrc * m_width + xSrc);
+
+ // Transfer the pixel bytes
+ m_destPixels[iDst++] = m_srcPixels[iSrc++];
+ m_destPixels[iDst++] = m_srcPixels[iSrc++];
+ m_destPixels[iDst++] = m_srcPixels[iSrc++];
+ m_destPixels[iDst] = m_srcPixels[iSrc];
+ }
+ }
+
+ // Invalidate the bitmap
+ m_writeableBitmap.Invalidate();
+ }
+ }
+
+ std::future ClickHandler(const IInspectable&, const IInspectable&)
+ {
+ FileOpenPicker picker;
+ picker.ViewMode(PickerViewMode::Thumbnail);
+ picker.SuggestedStartLocation(PickerLocationId::PicturesLibrary);
+
+ auto fileTypeFilters = picker.FileTypeFilter();
+ fileTypeFilters.Append(L".jpg");
+ fileTypeFilters.Append(L".jpeg");
+ fileTypeFilters.Append(L".png");
+
+ StorageFile selectedFile = await picker.PickSingleFileAsync();
+ if (!selectedFile)
+ {
+ return;
+ }
+
+ IRandomAccessStream imageStream = await selectedFile.OpenAsync(FileAccessMode::Read);
+ BitmapDecoder decoder = await BitmapDecoder::CreateAsync(imageStream);
+ BitmapFrame frame = await decoder.GetFrameAsync(0);
+
+ m_width = frame.PixelWidth();
+ m_height = frame.PixelHeight();
+ m_xCenter = m_width / 2;
+ m_yCenter = m_height / 2;
+
+ PixelDataProvider provider = await frame.GetPixelDataAsync();
+ m_srcPixels = provider.DetachPixelData();
+
+ // Manipulation of the bitmap objects must be done on the UI thread
+ m_uiDispatcher.RunAsync(CoreDispatcherPriority::Normal, [this]() {
+
+ m_writeableBitmap = WriteableBitmap(m_width, m_height);
+ m_image.Source(m_writeableBitmap);
+
+ IBuffer buffer = m_writeableBitmap.PixelBuffer();
+ com_ptr byteAccess = buffer.as();
+ byteAccess->Buffer(&m_destPixels);
+
+ m_imageLoaded = true;
+ });
+ }
+
+ void OnLaunched(LaunchActivatedEventArgs const &)
+ {
+ CompositionTarget::Rendering({ this, &App::RenderingHandler });
+
+ m_uiDispatcher = CoreWindow::GetForCurrentThread().Dispatcher();
+
+ StackPanel panel;
+ panel.Orientation(Orientation::Vertical);
+
+ Button pickerButton;
+ TextBlock pickerButtonText;
+ pickerButtonText.Text(L"Choose image...");
+ pickerButton.Content(pickerButtonText);
+ pickerButton.Click({ this, &App::ClickHandler });
+
+ m_image.Height(200.0);
+ m_image.Width(200.0);
+
+ auto panelContent = panel.Children();
+ panelContent.Append(pickerButton);
+ panelContent.Append(m_image);
+
+ Window window = Window::Current();
+ window.Content(panel);
+ window.Activate();
+ }
+
+private:
+ CoreDispatcher m_uiDispatcher{ nullptr };
+ Image m_image;
+
+ int m_width{ 0 };
+ int m_height{ 0 };
+ int m_xCenter{ 0 };
+ int m_yCenter{ 0 };
+
+ byte* m_destPixels{ nullptr };
+ com_array m_srcPixels;
+ WriteableBitmap m_writeableBitmap{ nullptr };
+
+ bool m_imageLoaded{ false };
+
+ static const int64_t m_cycleDuration{ 30000000 };
+};
+
+int __stdcall wWinMain(HINSTANCE, HINSTANCE, PWSTR, int)
+{
+ Application::Start([](auto &&)
+ {
+ make();
+ });
+}
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/IBuffer/App.winmd b/10.0.15042.0/Samples/IBuffer/App.winmd
new file mode 100644
index 000000000..af05904ab
Binary files /dev/null and b/10.0.15042.0/Samples/IBuffer/App.winmd differ
diff --git a/10.0.15042.0/Samples/IBuffer/Assets/Logo.scale-100.png b/10.0.15042.0/Samples/IBuffer/Assets/Logo.scale-100.png
new file mode 100644
index 000000000..e26771cb3
Binary files /dev/null and b/10.0.15042.0/Samples/IBuffer/Assets/Logo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/IBuffer/Assets/SmallLogo.scale-100.png b/10.0.15042.0/Samples/IBuffer/Assets/SmallLogo.scale-100.png
new file mode 100644
index 000000000..f3fc56a0e
Binary files /dev/null and b/10.0.15042.0/Samples/IBuffer/Assets/SmallLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/IBuffer/Assets/SplashScreen.scale-100.png b/10.0.15042.0/Samples/IBuffer/Assets/SplashScreen.scale-100.png
new file mode 100644
index 000000000..c951e031b
Binary files /dev/null and b/10.0.15042.0/Samples/IBuffer/Assets/SplashScreen.scale-100.png differ
diff --git a/10.0.15042.0/Samples/IBuffer/Assets/StoreLogo.scale-100.png b/10.0.15042.0/Samples/IBuffer/Assets/StoreLogo.scale-100.png
new file mode 100644
index 000000000..dcb672712
Binary files /dev/null and b/10.0.15042.0/Samples/IBuffer/Assets/StoreLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/IBuffer/Assets/WideLogo.scale-100.png b/10.0.15042.0/Samples/IBuffer/Assets/WideLogo.scale-100.png
new file mode 100644
index 000000000..9dd94b628
Binary files /dev/null and b/10.0.15042.0/Samples/IBuffer/Assets/WideLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/IBuffer/IBuffer.sln b/10.0.15042.0/Samples/IBuffer/IBuffer.sln
new file mode 100644
index 000000000..15fd82e78
--- /dev/null
+++ b/10.0.15042.0/Samples/IBuffer/IBuffer.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "IBuffer", "IBuffer.vcxproj", "{1F93D330-56FC-4497-BBDE-1807301B5C79}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|ARM = Release|ARM
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.ActiveCfg = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Build.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Deploy.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.ActiveCfg = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Build.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Deploy.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.ActiveCfg = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Build.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Deploy.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.ActiveCfg = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Build.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Deploy.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.ActiveCfg = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Build.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Deploy.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.ActiveCfg = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Build.0 = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Deploy.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/IBuffer/IBuffer.vcxproj b/10.0.15042.0/Samples/IBuffer/IBuffer.vcxproj
new file mode 100644
index 000000000..e5c389fad
--- /dev/null
+++ b/10.0.15042.0/Samples/IBuffer/IBuffer.vcxproj
@@ -0,0 +1,297 @@
+
+
+
+ {1f93d330-56fc-4497-bbde-1807301b5c79}
+ App
+ en-US
+ 14.0
+ true
+ Windows Store
+ 8.2
+ 10.0.10166.0
+ 10.0.10166.0
+ 10.0.14393.0
+ 10.0.14393.0
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ /bigobj /await /std:c++latest
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+
+
+
+ Designer
+
+
+
+
+
+
+
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/IBuffer/Package.appxmanifest b/10.0.15042.0/Samples/IBuffer/Package.appxmanifest
new file mode 100644
index 000000000..bf6c1048d
--- /dev/null
+++ b/10.0.15042.0/Samples/IBuffer/Package.appxmanifest
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+ App
+ Microsoft
+ Assets\StoreLogo.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/IBuffer/pch.cpp b/10.0.15042.0/Samples/IBuffer/pch.cpp
new file mode 100644
index 000000000..bcb5590be
--- /dev/null
+++ b/10.0.15042.0/Samples/IBuffer/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/IBuffer/pch.h b/10.0.15042.0/Samples/IBuffer/pch.h
new file mode 100644
index 000000000..b312ac5fc
--- /dev/null
+++ b/10.0.15042.0/Samples/IBuffer/pch.h
@@ -0,0 +1,13 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/Windows.Storage.Pickers.h"
+#include "winrt/Windows.Storage.Streams.h"
+#include "winrt/Windows.UI.Core.h"
+#include "winrt/Windows.UI.Xaml.Controls.h"
+#include "winrt/Windows.UI.Xaml.Media.Imaging.h"
+#include "winrt/Windows.Graphics.Imaging.h"
+
+#include
+#include
diff --git a/10.0.15042.0/Samples/JustCoroutines/JustCoroutines.sln b/10.0.15042.0/Samples/JustCoroutines/JustCoroutines.sln
new file mode 100644
index 000000000..b22a61c3e
--- /dev/null
+++ b/10.0.15042.0/Samples/JustCoroutines/JustCoroutines.sln
@@ -0,0 +1,28 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JustCoroutines", "JustCoroutines.vcxproj", "{079790FD-97A0-428D-BF8D-83D24C1D6A56}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.ActiveCfg = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.Build.0 = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.ActiveCfg = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.Build.0 = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.ActiveCfg = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.Build.0 = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.ActiveCfg = Release|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/JustCoroutines/JustCoroutines.vcxproj b/10.0.15042.0/Samples/JustCoroutines/JustCoroutines.vcxproj
new file mode 100644
index 000000000..6f285a1f5
--- /dev/null
+++ b/10.0.15042.0/Samples/JustCoroutines/JustCoroutines.vcxproj
@@ -0,0 +1,191 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}
+ Win32Proj
+ Console
+ 10.0.14393.0
+
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/JustCoroutines/Main.cpp b/10.0.15042.0/Samples/JustCoroutines/Main.cpp
new file mode 100644
index 000000000..26458ebf8
--- /dev/null
+++ b/10.0.15042.0/Samples/JustCoroutines/Main.cpp
@@ -0,0 +1,54 @@
+#include "pch.h"
+
+namespace winrt::ABI::Windows::Foundation
+{
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0111")) __declspec(novtable) AsyncActionProgressHandler : impl_AsyncActionProgressHandler {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0112")) __declspec(novtable) AsyncActionWithProgressCompletedHandler : impl_AsyncActionWithProgressCompletedHandler {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0113")) __declspec(novtable) AsyncOperationProgressHandler : impl_AsyncOperationProgressHandler {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0114")) __declspec(novtable) AsyncOperationWithProgressCompletedHandler : impl_AsyncOperationWithProgressCompletedHandler {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0115")) __declspec(novtable) AsyncOperationCompletedHandler : impl_AsyncOperationCompletedHandler {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0116")) __declspec(novtable) IAsyncActionWithProgress : impl_IAsyncActionWithProgress {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0117")) __declspec(novtable) IAsyncOperation : impl_IAsyncOperation {};
+ template <> struct __declspec(uuid("3a14233f-a037-4ac0-a0ad-c4bb0bbf0118")) __declspec(novtable) IAsyncOperationWithProgress : impl_IAsyncOperationWithProgress {};
+}
+
+using namespace std::chrono;
+using namespace winrt;
+using namespace Windows::Foundation;
+
+IAsyncOperationWithProgress Produce()
+{
+ co_await resume_background();
+
+ auto progress = co_await get_progress_token;
+
+ int total = 0;
+
+ for (int i = 0; i != 5; ++i)
+ {
+ progress(i);
+ total += i;
+ co_await 500ms;
+ }
+
+ return total;
+}
+
+IAsyncAction Consume()
+{
+ auto async = Produce();
+
+ async.Progress([](auto const & /*sender*/, int args)
+ {
+ printf("progress %d\n", args);
+ });
+
+ printf("total %d\n", co_await async);
+}
+
+int main()
+{
+ init_apartment();
+
+ Consume().get();
+}
diff --git a/10.0.15042.0/Samples/JustCoroutines/pch.cpp b/10.0.15042.0/Samples/JustCoroutines/pch.cpp
new file mode 100644
index 000000000..1d9f38c57
--- /dev/null
+++ b/10.0.15042.0/Samples/JustCoroutines/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/JustCoroutines/pch.h b/10.0.15042.0/Samples/JustCoroutines/pch.h
new file mode 100644
index 000000000..f0b016408
--- /dev/null
+++ b/10.0.15042.0/Samples/JustCoroutines/pch.h
@@ -0,0 +1,5 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/base.h"
diff --git a/10.0.15042.0/Samples/Ocr/Main.cpp b/10.0.15042.0/Samples/Ocr/Main.cpp
new file mode 100644
index 000000000..0c4cf1d5a
--- /dev/null
+++ b/10.0.15042.0/Samples/Ocr/Main.cpp
@@ -0,0 +1,45 @@
+#include "pch.h"
+
+using namespace winrt;
+using namespace std::chrono;
+
+using namespace Windows::Foundation;
+using namespace Windows::Storage;
+using namespace Windows::Storage::Streams;
+using namespace Windows::Graphics::Imaging;
+using namespace Windows::Media::Ocr;
+
+hstring MessagePath()
+{
+ wchar_t buffer[1024]{};
+ GetCurrentDirectory(_countof(buffer), buffer);
+ check_hresult(PathCchAppendEx(buffer, _countof(buffer), L"message.png", PATHCCH_ALLOW_LONG_PATHS));
+ return buffer;
+}
+
+IAsyncOperation AsyncSample()
+{
+ StorageFile file = co_await StorageFile::GetFileFromPathAsync(MessagePath());
+ IRandomAccessStream stream = co_await file.OpenAsync(FileAccessMode::Read);
+
+ BitmapDecoder decoder = co_await BitmapDecoder::CreateAsync(stream);
+ SoftwareBitmap bitmap = co_await decoder.GetSoftwareBitmapAsync();
+
+ OcrEngine engine = OcrEngine::TryCreateFromUserProfileLanguages();
+ OcrResult result = co_await engine.RecognizeAsync(bitmap);
+ return result.Text();
+}
+
+int main()
+{
+ init_apartment();
+
+ try
+ {
+ printf("%ls\n", AsyncSample().get().c_str());
+ }
+ catch (hresult_error const & e)
+ {
+ printf("hresult_error: (0x%8X) %ls\n", e.code(), e.message().c_str());
+ }
+}
diff --git a/10.0.15042.0/Samples/Ocr/Ocr.sln b/10.0.15042.0/Samples/Ocr/Ocr.sln
new file mode 100644
index 000000000..09178768e
--- /dev/null
+++ b/10.0.15042.0/Samples/Ocr/Ocr.sln
@@ -0,0 +1,28 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Ocr", "Ocr.vcxproj", "{079790FD-97A0-428D-BF8D-83D24C1D6A56}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.ActiveCfg = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.Build.0 = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.ActiveCfg = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.Build.0 = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.ActiveCfg = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.Build.0 = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.ActiveCfg = Release|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/Ocr/Ocr.vcxproj b/10.0.15042.0/Samples/Ocr/Ocr.vcxproj
new file mode 100644
index 000000000..ce8b30d73
--- /dev/null
+++ b/10.0.15042.0/Samples/Ocr/Ocr.vcxproj
@@ -0,0 +1,206 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}
+ Win32Proj
+ Console
+ 10.0.14393.0
+
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+ copy message.png $(OutDir)
+
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+ copy message.png $(OutDir)
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+ copy message.png $(OutDir)
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+ copy message.png $(OutDir)
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/10.0.15042.0/Samples/Ocr/message.png b/10.0.15042.0/Samples/Ocr/message.png
new file mode 100644
index 000000000..bdea615c2
Binary files /dev/null and b/10.0.15042.0/Samples/Ocr/message.png differ
diff --git a/10.0.15042.0/Samples/Ocr/pch.cpp b/10.0.15042.0/Samples/Ocr/pch.cpp
new file mode 100644
index 000000000..1d9f38c57
--- /dev/null
+++ b/10.0.15042.0/Samples/Ocr/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/Ocr/pch.h b/10.0.15042.0/Samples/Ocr/pch.h
new file mode 100644
index 000000000..565b43076
--- /dev/null
+++ b/10.0.15042.0/Samples/Ocr/pch.h
@@ -0,0 +1,11 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+#pragma comment(lib, "pathcch")
+
+#include "winrt/Windows.Storage.Streams.h"
+#include "winrt/Windows.Graphics.Imaging.h"
+#include "winrt/Windows.Media.Ocr.h"
+#include "winrt/Windows.Networking.Sockets.h"
+
+#include
diff --git a/10.0.15042.0/Samples/Syndication/Main.cpp b/10.0.15042.0/Samples/Syndication/Main.cpp
new file mode 100644
index 000000000..f5d15f016
--- /dev/null
+++ b/10.0.15042.0/Samples/Syndication/Main.cpp
@@ -0,0 +1,27 @@
+#include "pch.h"
+
+using namespace winrt;
+
+using namespace Windows::Foundation;
+using namespace Windows::Web::Syndication;
+
+IAsyncAction Sample()
+{
+ Uri uri(L"http://kennykerr.ca/feed");
+ SyndicationClient client;
+ SyndicationFeed feed = co_await client.RetrieveFeedAsync(uri);
+
+ for (SyndicationItem item : feed.Items())
+ {
+ hstring title = item.Title().Text();
+
+ printf("%ls\n", title.c_str());
+ }
+}
+
+int main()
+{
+ init_apartment();
+
+ Sample().get();
+}
diff --git a/10.0.15042.0/Samples/Syndication/Syndication.sln b/10.0.15042.0/Samples/Syndication/Syndication.sln
new file mode 100644
index 000000000..0c58937ed
--- /dev/null
+++ b/10.0.15042.0/Samples/Syndication/Syndication.sln
@@ -0,0 +1,28 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Syndication", "Syndication.vcxproj", "{079790FD-97A0-428D-BF8D-83D24C1D6A56}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.ActiveCfg = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x64.Build.0 = Debug|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.ActiveCfg = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Debug|x86.Build.0 = Debug|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.ActiveCfg = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x64.Build.0 = Release|x64
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.ActiveCfg = Release|Win32
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/Syndication/Syndication.vcxproj b/10.0.15042.0/Samples/Syndication/Syndication.vcxproj
new file mode 100644
index 000000000..19f795dee
--- /dev/null
+++ b/10.0.15042.0/Samples/Syndication/Syndication.vcxproj
@@ -0,0 +1,191 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {079790FD-97A0-428D-BF8D-83D24C1D6A56}
+ Win32Proj
+ Console
+ 10.0.14393.0
+
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ true
+ v140
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+ Application
+ false
+ v140
+ true
+ Unicode
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ true
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ false
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+
+
+ Use
+ Level4
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ ProgramDatabase
+ Default
+ 4702
+
+
+ Console
+ true
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+ Level4
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ false
+ pch.h
+ ..\..
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4702
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
+
+
+
diff --git a/10.0.15042.0/Samples/Syndication/pch.cpp b/10.0.15042.0/Samples/Syndication/pch.cpp
new file mode 100644
index 000000000..1d9f38c57
--- /dev/null
+++ b/10.0.15042.0/Samples/Syndication/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/Syndication/pch.h b/10.0.15042.0/Samples/Syndication/pch.h
new file mode 100644
index 000000000..fbb976297
--- /dev/null
+++ b/10.0.15042.0/Samples/Syndication/pch.h
@@ -0,0 +1,6 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/Windows.Foundation.h"
+#include "winrt/Windows.Web.Syndication.h"
diff --git a/10.0.15042.0/Samples/Video/App.cpp b/10.0.15042.0/Samples/Video/App.cpp
new file mode 100644
index 000000000..3d6d133f4
--- /dev/null
+++ b/10.0.15042.0/Samples/Video/App.cpp
@@ -0,0 +1,97 @@
+#include "pch.h"
+
+using namespace winrt;
+
+using namespace Windows::ApplicationModel::Core;
+using namespace Windows::Foundation;
+using namespace Windows::UI::Core;
+using namespace Windows::UI::Composition;
+using namespace Windows::Media::Core;
+using namespace Windows::Media::Playback;
+using namespace Windows::Storage;
+using namespace Windows::Storage::Pickers;
+
+struct App : implements
+{
+ IFrameworkView CreateView()
+ {
+ return *this;
+ }
+
+ void Initialize(CoreApplicationView const &)
+ {
+ }
+
+ void Load(hstring_view)
+ {
+ }
+
+ void Uninitialize()
+ {
+ }
+
+ void Run()
+ {
+ CoreWindow window = CoreWindow::GetForCurrentThread();
+ window.Activate();
+
+ CoreDispatcher dispatcher = window.Dispatcher();
+ dispatcher.ProcessEvents(CoreProcessEventsOption::ProcessUntilQuit);
+ }
+
+ void SetWindow(CoreWindow const & window)
+ {
+ m_activated = window.Activated(auto_revoke, { this, &App::OnActivated });
+ }
+
+ fire_and_forget OnActivated(CoreWindow window, WindowActivatedEventArgs)
+ {
+ m_activated.revoke();
+
+ Compositor compositor;
+ SpriteVisual visual = compositor.CreateSpriteVisual();
+ Rect bounds = window.Bounds();
+ visual.Size({ bounds.Width, bounds.Height });
+ m_target = compositor.CreateTargetForCurrentView();
+ m_target.Root(visual);
+
+ FileOpenPicker picker;
+ picker.SuggestedStartLocation(PickerLocationId::VideosLibrary);
+ picker.FileTypeFilter().Append(L".mp4");
+ StorageFile file = await picker.PickSingleFileAsync();
+
+ if (!file)
+ {
+ CoreApplication::Exit();
+ return;
+ }
+
+ MediaSource source = MediaSource::CreateFromStorageFile(file);
+ MediaPlayer player;
+ player.Source(MediaPlaybackItem(source));
+ MediaPlayerSurface surface = player.GetSurface(compositor);
+ visual.Brush(compositor.CreateSurfaceBrush(surface.CompositionSurface()));
+ player.Play();
+
+ window.PointerPressed([=](auto && ...)
+ {
+ static bool playing = true;
+ playing = !playing;
+
+ playing ? player.Play() : player.Pause();
+ });
+
+ window.SizeChanged([=](auto &&, WindowSizeChangedEventArgs const & args)
+ {
+ visual.Size(args.Size());
+ });
+ }
+
+ CoreWindow::Activated_revoker m_activated;
+ CompositionTarget m_target{ nullptr };
+};
+
+int __stdcall wWinMain(HINSTANCE, HINSTANCE, PWSTR, int)
+{
+ CoreApplication::Run(App());
+}
diff --git a/10.0.15042.0/Samples/Video/App.winmd b/10.0.15042.0/Samples/Video/App.winmd
new file mode 100644
index 000000000..af05904ab
Binary files /dev/null and b/10.0.15042.0/Samples/Video/App.winmd differ
diff --git a/10.0.15042.0/Samples/Video/Assets/Logo.scale-100.png b/10.0.15042.0/Samples/Video/Assets/Logo.scale-100.png
new file mode 100644
index 000000000..e26771cb3
Binary files /dev/null and b/10.0.15042.0/Samples/Video/Assets/Logo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Video/Assets/SmallLogo.scale-100.png b/10.0.15042.0/Samples/Video/Assets/SmallLogo.scale-100.png
new file mode 100644
index 000000000..f3fc56a0e
Binary files /dev/null and b/10.0.15042.0/Samples/Video/Assets/SmallLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Video/Assets/SplashScreen.scale-100.png b/10.0.15042.0/Samples/Video/Assets/SplashScreen.scale-100.png
new file mode 100644
index 000000000..c951e031b
Binary files /dev/null and b/10.0.15042.0/Samples/Video/Assets/SplashScreen.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Video/Assets/StoreLogo.scale-100.png b/10.0.15042.0/Samples/Video/Assets/StoreLogo.scale-100.png
new file mode 100644
index 000000000..dcb672712
Binary files /dev/null and b/10.0.15042.0/Samples/Video/Assets/StoreLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Video/Assets/WideLogo.scale-100.png b/10.0.15042.0/Samples/Video/Assets/WideLogo.scale-100.png
new file mode 100644
index 000000000..9dd94b628
Binary files /dev/null and b/10.0.15042.0/Samples/Video/Assets/WideLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/Video/Package.appxmanifest b/10.0.15042.0/Samples/Video/Package.appxmanifest
new file mode 100644
index 000000000..fb76cdf07
--- /dev/null
+++ b/10.0.15042.0/Samples/Video/Package.appxmanifest
@@ -0,0 +1,28 @@
+
+
+
+
+
+ App
+ Microsoft
+ Assets\StoreLogo.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/Video/Video.sln b/10.0.15042.0/Samples/Video/Video.sln
new file mode 100644
index 000000000..2131e440f
--- /dev/null
+++ b/10.0.15042.0/Samples/Video/Video.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Video", "Video.vcxproj", "{1F93D330-56FC-4497-BBDE-1807301B5C79}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|ARM = Release|ARM
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.ActiveCfg = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Build.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Deploy.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.ActiveCfg = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Build.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Deploy.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.ActiveCfg = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Build.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Deploy.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.ActiveCfg = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Build.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Deploy.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.ActiveCfg = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Build.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Deploy.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.ActiveCfg = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Build.0 = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Deploy.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/Video/Video.vcxproj b/10.0.15042.0/Samples/Video/Video.vcxproj
new file mode 100644
index 000000000..383aea863
--- /dev/null
+++ b/10.0.15042.0/Samples/Video/Video.vcxproj
@@ -0,0 +1,297 @@
+
+
+
+ {1f93d330-56fc-4497-bbde-1807301b5c79}
+ App
+ en-US
+ 14.0
+ true
+ Windows Store
+ 8.2
+ 10.0.10166.0
+ 10.0.10166.0
+ 10.0.14393.0
+ 10.0.14393.0
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive- %(AdditionalOptions)
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+
+
+
+ Designer
+
+
+
+
+
+
+
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/Video/pch.cpp b/10.0.15042.0/Samples/Video/pch.cpp
new file mode 100644
index 000000000..bcb5590be
--- /dev/null
+++ b/10.0.15042.0/Samples/Video/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/Video/pch.h b/10.0.15042.0/Samples/Video/pch.h
new file mode 100644
index 000000000..de146110a
--- /dev/null
+++ b/10.0.15042.0/Samples/Video/pch.h
@@ -0,0 +1,12 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/Windows.ApplicationModel.Core.h"
+#include "winrt/Windows.Foundation.h"
+#include "winrt/Windows.UI.Core.h"
+#include "winrt/Windows.UI.Composition.h"
+#include "winrt/Windows.Media.Core.h"
+#include "winrt/Windows.Media.Playback.h"
+#include "winrt/Windows.Storage.Pickers.h"
+#include "winrt/Windows.Graphics.Imaging.h"
diff --git a/10.0.15042.0/Samples/XamlCode/App.cpp b/10.0.15042.0/Samples/XamlCode/App.cpp
new file mode 100644
index 000000000..190a74fca
--- /dev/null
+++ b/10.0.15042.0/Samples/XamlCode/App.cpp
@@ -0,0 +1,66 @@
+#include "pch.h"
+
+using namespace winrt;
+
+using namespace Windows::ApplicationModel::Activation;
+using namespace Windows::Foundation;
+using namespace Windows::UI;
+using namespace Windows::UI::Xaml;
+using namespace Windows::UI::Xaml::Controls;
+using namespace Windows::UI::Xaml::Media;
+using namespace Windows::Storage;
+using namespace Windows::Storage::Streams;
+using namespace Windows::Graphics::Imaging;
+using namespace Windows::Media::Ocr;
+using namespace Windows::Storage::Pickers;
+
+struct App : ApplicationT
+{
+ void OnLaunched(LaunchActivatedEventArgs const &)
+ {
+ TextBlock block;
+
+ block.FontFamily(FontFamily(L"Segoe UI Semibold"));
+ block.FontSize(72.0);
+ block.Foreground(SolidColorBrush(Colors::Orange()));
+ block.VerticalAlignment(VerticalAlignment::Center);
+ block.TextAlignment(TextAlignment::Center);
+ block.TextWrapping(TextWrapping::Wrap);
+
+ Window window = Window::Current();
+ window.Content(block);
+ window.Activate();
+
+ Async(block);
+ }
+
+ fire_and_forget Async(TextBlock block)
+ {
+ FileOpenPicker picker;
+ picker.FileTypeFilter().Append(L".png");
+ picker.SuggestedStartLocation(PickerLocationId::PicturesLibrary);
+ auto file = co_await picker.PickSingleFileAsync();
+
+ if (file == nullptr)
+ {
+ return;
+ }
+
+ thread_context ui_thread;
+ co_await resume_background();
+
+ auto stream = co_await file.OpenAsync(FileAccessMode::Read);
+ auto decoder = co_await BitmapDecoder::CreateAsync(stream);
+ auto bitmap = co_await decoder.GetSoftwareBitmapAsync();
+ auto engine = OcrEngine::TryCreateFromUserProfileLanguages();
+ auto result = co_await engine.RecognizeAsync(bitmap);
+
+ co_await ui_thread;
+ block.Text(result.Text());
+ }
+};
+
+int __stdcall wWinMain(HINSTANCE, HINSTANCE, PWSTR, int)
+{
+ Application::Start([](auto &&) { make(); });
+}
diff --git a/10.0.15042.0/Samples/XamlCode/App.winmd b/10.0.15042.0/Samples/XamlCode/App.winmd
new file mode 100644
index 000000000..af05904ab
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/App.winmd differ
diff --git a/10.0.15042.0/Samples/XamlCode/Assets/Logo.scale-100.png b/10.0.15042.0/Samples/XamlCode/Assets/Logo.scale-100.png
new file mode 100644
index 000000000..e26771cb3
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/Assets/Logo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/XamlCode/Assets/SmallLogo.scale-100.png b/10.0.15042.0/Samples/XamlCode/Assets/SmallLogo.scale-100.png
new file mode 100644
index 000000000..f3fc56a0e
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/Assets/SmallLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/XamlCode/Assets/SplashScreen.scale-100.png b/10.0.15042.0/Samples/XamlCode/Assets/SplashScreen.scale-100.png
new file mode 100644
index 000000000..c951e031b
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/Assets/SplashScreen.scale-100.png differ
diff --git a/10.0.15042.0/Samples/XamlCode/Assets/StoreLogo.scale-100.png b/10.0.15042.0/Samples/XamlCode/Assets/StoreLogo.scale-100.png
new file mode 100644
index 000000000..dcb672712
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/Assets/StoreLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/XamlCode/Assets/WideLogo.scale-100.png b/10.0.15042.0/Samples/XamlCode/Assets/WideLogo.scale-100.png
new file mode 100644
index 000000000..9dd94b628
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/Assets/WideLogo.scale-100.png differ
diff --git a/10.0.15042.0/Samples/XamlCode/Message.png b/10.0.15042.0/Samples/XamlCode/Message.png
new file mode 100644
index 000000000..88bb10e72
Binary files /dev/null and b/10.0.15042.0/Samples/XamlCode/Message.png differ
diff --git a/10.0.15042.0/Samples/XamlCode/Package.appxmanifest b/10.0.15042.0/Samples/XamlCode/Package.appxmanifest
new file mode 100644
index 000000000..bf6c1048d
--- /dev/null
+++ b/10.0.15042.0/Samples/XamlCode/Package.appxmanifest
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+ App
+ Microsoft
+ Assets\StoreLogo.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/XamlCode/XamlCode.sln b/10.0.15042.0/Samples/XamlCode/XamlCode.sln
new file mode 100644
index 000000000..cc4068d30
--- /dev/null
+++ b/10.0.15042.0/Samples/XamlCode/XamlCode.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 14
+VisualStudioVersion = 14.0.25420.1
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XamlCode", "XamlCode.vcxproj", "{1F93D330-56FC-4497-BBDE-1807301B5C79}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|ARM = Release|ARM
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.ActiveCfg = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Build.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|ARM.Deploy.0 = Debug|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.ActiveCfg = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Build.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x64.Deploy.0 = Debug|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.ActiveCfg = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Build.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Debug|x86.Deploy.0 = Debug|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.ActiveCfg = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Build.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|ARM.Deploy.0 = Release|ARM
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.ActiveCfg = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Build.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x64.Deploy.0 = Release|x64
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.ActiveCfg = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Build.0 = Release|Win32
+ {1F93D330-56FC-4497-BBDE-1807301B5C79}.Release|x86.Deploy.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/10.0.15042.0/Samples/XamlCode/XamlCode.vcxproj b/10.0.15042.0/Samples/XamlCode/XamlCode.vcxproj
new file mode 100644
index 000000000..561b83f29
--- /dev/null
+++ b/10.0.15042.0/Samples/XamlCode/XamlCode.vcxproj
@@ -0,0 +1,298 @@
+
+
+
+ {1f93d330-56fc-4497-bbde-1807301b5c79}
+ App
+ en-US
+ 14.0
+ true
+ Windows Store
+ 8.2
+ 10.0.10166.0
+ 10.0.10166.0
+ 10.0.14393.0
+ 10.0.14393.0
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+ Application
+ false
+ true
+ v140
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+ $(Configuration)\$(Platform)\
+ $(Configuration)\$(Platform)\temp\
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+ /bigobj /await /std:c++latest /d1permissive-
+ 4453;28204
+ ..\..;$(ProjectDir);$(GeneratedFilesDir);$(IntDir);%(AdditionalIncludeDirectories)
+ Level4
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ copy App.winmd $(OutDir)App.winmd
+
+
+
+
+
+
+
+ Designer
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Create
+ Create
+ Create
+ Create
+ Create
+ Create
+
+
+
+
+
+
\ No newline at end of file
diff --git a/10.0.15042.0/Samples/XamlCode/pch.cpp b/10.0.15042.0/Samples/XamlCode/pch.cpp
new file mode 100644
index 000000000..bcb5590be
--- /dev/null
+++ b/10.0.15042.0/Samples/XamlCode/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/10.0.15042.0/Samples/XamlCode/pch.h b/10.0.15042.0/Samples/XamlCode/pch.h
new file mode 100644
index 000000000..4ae1de948
--- /dev/null
+++ b/10.0.15042.0/Samples/XamlCode/pch.h
@@ -0,0 +1,13 @@
+#pragma once
+
+#pragma comment(lib, "windowsapp")
+
+#include "winrt/Windows.ApplicationModel.Activation.h"
+#include "winrt/Windows.Foundation.h"
+#include "winrt/Windows.UI.Xaml.Controls.h"
+#include "winrt/Windows.UI.Xaml.Media.h"
+#include "winrt/Windows.Storage.Streams.h"
+#include "winrt/Windows.Graphics.Imaging.h"
+#include "winrt/Windows.Media.Ocr.h"
+#include "winrt/Windows.Storage.Pickers.h"
+#include "winrt/Windows.Networking.h"
diff --git a/10.0.15042.0/winrt/Windows.ApplicationModel.Activation.h b/10.0.15042.0/winrt/Windows.ApplicationModel.Activation.h
new file mode 100644
index 000000000..31d414772
--- /dev/null
+++ b/10.0.15042.0/winrt/Windows.ApplicationModel.Activation.h
@@ -0,0 +1,3138 @@
+// C++ for the Windows Runtime v1.0.private
+// Copyright (c) 2017 Microsoft Corporation. All rights reserved.
+
+#pragma once
+
+#include "base.h"
+WINRT_WARNING_PUSH
+
+#include "internal/Windows.ApplicationModel.Background.3.h"
+#include "internal/Windows.ApplicationModel.Contacts.3.h"
+#include "internal/Windows.Foundation.3.h"
+#include "internal/Windows.ApplicationModel.Appointments.AppointmentsProvider.3.h"
+#include "internal/Windows.ApplicationModel.UserDataAccounts.Provider.3.h"
+#include "internal/Windows.System.3.h"
+#include "internal/Windows.UI.ViewManagement.3.h"
+#include "internal/Windows.ApplicationModel.Search.3.h"
+#include "internal/Windows.ApplicationModel.DataTransfer.ShareTarget.3.h"
+#include "internal/Windows.Foundation.Collections.3.h"
+#include "internal/Windows.Storage.Search.3.h"
+#include "internal/Windows.Storage.Pickers.Provider.3.h"
+#include "internal/Windows.Storage.Provider.3.h"
+#include "internal/Windows.Storage.3.h"
+#include "internal/Windows.Security.Authentication.Web.3.h"
+#include "internal/Windows.Security.Authentication.Web.Provider.3.h"
+#include "internal/Windows.Devices.Enumeration.3.h"
+#include "internal/Windows.Media.SpeechRecognition.3.h"
+#include "internal/Windows.ApplicationModel.Wallet.3.h"
+#include "internal/Windows.Devices.Printers.Extensions.3.h"
+#include "internal/Windows.ApplicationModel.Calls.3.h"
+#include "internal/Windows.ApplicationModel.Contacts.Provider.3.h"
+#include "internal/Windows.ApplicationModel.Activation.3.h"
+#include "Windows.ApplicationModel.h"
+
+WINRT_EXPORT namespace winrt {
+
+namespace impl {
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Kind(Windows::ApplicationModel::Activation::ActivationKind * value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Kind());
+ return S_OK;
+ }
+ catch (...)
+ {
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_PreviousExecutionState(Windows::ApplicationModel::Activation::ApplicationExecutionState * value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().PreviousExecutionState());
+ return S_OK;
+ }
+ catch (...)
+ {
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_SplashScreen(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().SplashScreen());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_User(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().User());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CurrentlyShownApplicationViewId(int32_t * value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CurrentlyShownApplicationViewId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Verb(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Verb());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_AddAppointmentOperation(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().AddAppointmentOperation());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_RemoveAppointmentOperation(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().RemoveAppointmentOperation());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ReplaceAppointmentOperation(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ReplaceAppointmentOperation());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_InstanceStartDate(impl::abi_arg_out> value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().InstanceStartDate());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_LocalId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().LocalId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_RoamingId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().RoamingId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_TimeToShow(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().TimeToShow());
+ return S_OK;
+ }
+ catch (...)
+ {
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Duration(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Duration());
+ return S_OK;
+ }
+ catch (...)
+ {
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_TaskInstance(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().TaskInstance());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CachedFileUpdaterUI(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CachedFileUpdaterUI());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_VideoDeviceController(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().VideoDeviceController());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_VideoDeviceExtension(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().VideoDeviceExtension());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Verb(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Verb());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ServiceId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_ServiceUserId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceUserId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Contact(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Contact());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Address(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Address());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Contact(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Contact());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ServiceId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_ServiceUserId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceUserId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Contact(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Contact());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ContactPanel(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ContactPanel());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Contact(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Contact());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ContactPickerUI(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ContactPickerUI());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ServiceId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_ServiceUserId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceUserId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Contact(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Contact());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ServiceId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_ServiceUserId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ServiceUserId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Contact(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Contact());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Verb(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Verb());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ContinuationData(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ContinuationData());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_DeviceInformationId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().DeviceInformationId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Verb(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Verb());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_DeviceInformation(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().DeviceInformation());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_AppName(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().AppName());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Files(impl::abi_arg_out> value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Files());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Verb(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Verb());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CallerPackageFamilyName(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CallerPackageFamilyName());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_NeighboringFilesQuery(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().NeighboringFilesQuery());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_FileOpenPickerUI(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().FileOpenPickerUI());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CallerPackageFamilyName(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CallerPackageFamilyName());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Files(impl::abi_arg_out> value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Files());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_FileSavePickerUI(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().FileSavePickerUI());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CallerPackageFamilyName(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CallerPackageFamilyName());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_EnterpriseId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().EnterpriseId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_File(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().File());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Folder(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Folder());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Arguments(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Arguments());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_TileId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().TileId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_TileActivatedInfo(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().TileActivatedInfo());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Info(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Info());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CallUI(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CallUI());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_PickerOperationId(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().PickerOperationId());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_PrelaunchActivated(bool * value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().PrelaunchActivated());
+ return S_OK;
+ }
+ catch (...)
+ {
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Workflow(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Workflow());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Configuration(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Configuration());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_PrintWorkflowSession(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().PrintWorkflowSession());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_Uri(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Uri());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_CallerPackageFamilyName(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().CallerPackageFamilyName());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Data(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Data());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_ProtocolForResultsOperation(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().ProtocolForResultsOperation());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_SharedContext(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().SharedContext());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_QueryText(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().QueryText());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+
+ HRESULT __stdcall get_Language(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().Language());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template
+struct produce : produce_base
+{
+ HRESULT __stdcall get_LinguisticDetails(impl::abi_arg_out value) noexcept override
+ {
+ try
+ {
+ typename D::abi_guard guard(this->shim());
+ *value = detach_abi(this->shim().LinguisticDetails());
+ return S_OK;
+ }
+ catch (...)
+ {
+ *value = nullptr;
+ return impl::to_hresult();
+ }
+ }
+};
+
+template