diff --git a/Tutorial/GacUI_Windows/GacUI_Windows.sln b/Tutorial/GacUI_Windows/GacUI_Windows.sln
index 2b365dad..6e851df1 100644
--- a/Tutorial/GacUI_Windows/GacUI_Windows.sln
+++ b/Tutorial/GacUI_Windows/GacUI_Windows.sln
@@ -9,6 +9,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{A9A7E9AB-319
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUILite", "..\Lib\GacUILite\GacUILite.vcxproj", "{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WindowIcon", "WindowIcon\WindowIcon.vcxproj", "{05144B92-0CDF-4E81-A151-413305E40CE9}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -31,6 +33,14 @@ Global
{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.ActiveCfg = Release|Win32
{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.Build.0 = Release|Win32
{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|x64.ActiveCfg = Release|Win32
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Debug|Win32.ActiveCfg = Debug|Win32
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Debug|Win32.Build.0 = Debug|Win32
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Debug|x64.ActiveCfg = Debug|x64
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Debug|x64.Build.0 = Debug|x64
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Release|Win32.ActiveCfg = Release|Win32
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Release|Win32.Build.0 = Release|Win32
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Release|x64.ActiveCfg = Release|x64
+ {05144B92-0CDF-4E81-A151-413305E40CE9}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/Tutorial/GacUI_Windows/WindowIcon/Main.cpp b/Tutorial/GacUI_Windows/WindowIcon/Main.cpp
new file mode 100644
index 00000000..e69de29b
diff --git a/Tutorial/GacUI_Windows/WindowIcon/New.ico b/Tutorial/GacUI_Windows/WindowIcon/New.ico
new file mode 100644
index 00000000..c359a29a
Binary files /dev/null and b/Tutorial/GacUI_Windows/WindowIcon/New.ico differ
diff --git a/Tutorial/GacUI_Windows/WindowIcon/Resource.rc b/Tutorial/GacUI_Windows/WindowIcon/Resource.rc
new file mode 100644
index 00000000..cdacf0ba
Binary files /dev/null and b/Tutorial/GacUI_Windows/WindowIcon/Resource.rc differ
diff --git a/Tutorial/GacUI_Windows/WindowIcon/UI/Annotate_Default.ico b/Tutorial/GacUI_Windows/WindowIcon/UI/Annotate_Default.ico
new file mode 100644
index 00000000..7caf85f4
Binary files /dev/null and b/Tutorial/GacUI_Windows/WindowIcon/UI/Annotate_Default.ico differ
diff --git a/Tutorial/GacUI_Windows/WindowIcon/UI/Resource.xml b/Tutorial/GacUI_Windows/WindowIcon/UI/Resource.xml
new file mode 100644
index 00000000..3777c980
--- /dev/null
+++ b/Tutorial/GacUI_Windows/WindowIcon/UI/Resource.xml
@@ -0,0 +1,46 @@
+
+
+
+ Source
+ ..\..\UIRes\WindowIcon.bin
+ GacUI.h
+ GacUIReflection.h
+ Demo
+
+
+
+
+ Annotate_Default.ico
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Tutorial/GacUI_Windows/WindowIcon/WindowIcon.vcxproj b/Tutorial/GacUI_Windows/WindowIcon/WindowIcon.vcxproj
new file mode 100644
index 00000000..6acdf81d
--- /dev/null
+++ b/Tutorial/GacUI_Windows/WindowIcon/WindowIcon.vcxproj
@@ -0,0 +1,164 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 15.0
+ {05144B92-0CDF-4E81-A151-413305E40CE9}
+ Win32Proj
+ WindowIcon
+ 10.0.17134.0
+
+
+
+ Application
+ true
+ v141
+ Unicode
+
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
+
+ Application
+ true
+ v141
+ Unicode
+
+
+ Application
+ false
+ v141
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+
+
+ true
+
+
+ false
+
+
+ false
+
+
+
+ Level3
+ Disabled
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ true
+ Windows
+
+
+
+
+ Level3
+ Disabled
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ true
+ Windows
+
+
+
+
+ Level3
+ MaxSpeed
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ true
+ true
+ true
+ Windows
+
+
+
+
+ Level3
+ MaxSpeed
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ true
+ true
+ true
+ Windows
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Tutorial/GacUI_Windows/WindowIcon/WindowIcon.vcxproj.filters b/Tutorial/GacUI_Windows/WindowIcon/WindowIcon.vcxproj.filters
new file mode 100644
index 00000000..cb87c020
--- /dev/null
+++ b/Tutorial/GacUI_Windows/WindowIcon/WindowIcon.vcxproj.filters
@@ -0,0 +1,51 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+ {147830a0-17a4-47de-87fe-afed9d3c93b5}
+
+
+ {fe201c2d-4f36-4de6-9abc-b40d78d605fb}
+
+
+
+
+ Source Files
+
+
+
+
+ Resource Files
+
+
+
+
+ Icon
+
+
+ Resource Files
+
+
+
+
+ Icon
+
+
+
+
+ Icon
+
+
+
\ No newline at end of file
diff --git a/Tutorial/GacUI_Windows/WindowIcon/resource.h b/Tutorial/GacUI_Windows/WindowIcon/resource.h
new file mode 100644
index 00000000..c7663c78
--- /dev/null
+++ b/Tutorial/GacUI_Windows/WindowIcon/resource.h
@@ -0,0 +1,16 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by Resource.rc
+//
+#define MAINICON 101
+
+// Next default values for new objects
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+#define _APS_NEXT_RESOURCE_VALUE 104
+#define _APS_NEXT_COMMAND_VALUE 40001
+#define _APS_NEXT_CONTROL_VALUE 1001
+#define _APS_NEXT_SYMED_VALUE 101
+#endif
+#endif