Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/ByteArrayVariant.sln
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/ByteArrayVariant.sln (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/ByteArrayVariant.sln (revision 96)
@@ -0,0 +1,56 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 2012
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Server", "Server\Server.vcxproj", "{DE750840-259A-48ED-988A-DEA645411957}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ServerPS", "Server\ServerPS.vcxproj", "{EF8A4EF9-1356-463D-BB23-B8318C1A03CD}"
+ ProjectSection(ProjectDependencies) = postProject
+ {DE750840-259A-48ED-988A-DEA645411957} = {DE750840-259A-48ED-988A-DEA645411957}
+ EndProjectSection
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client", "Client\Client.csproj", "{72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}"
+ ProjectSection(ProjectDependencies) = postProject
+ {DE750840-259A-48ED-988A-DEA645411957} = {DE750840-259A-48ED-988A-DEA645411957}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|Mixed Platforms = Debug|Mixed Platforms
+ Debug|Win32 = Debug|Win32
+ Release|Any CPU = Release|Any CPU
+ Release|Mixed Platforms = Release|Mixed Platforms
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {DE750840-259A-48ED-988A-DEA645411957}.Debug|Any CPU.ActiveCfg = Debug|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Debug|Mixed Platforms.Build.0 = Debug|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Debug|Win32.ActiveCfg = Debug|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Debug|Win32.Build.0 = Debug|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Release|Any CPU.ActiveCfg = Release|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Release|Mixed Platforms.ActiveCfg = Release|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Release|Mixed Platforms.Build.0 = Release|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Release|Win32.ActiveCfg = Release|Win32
+ {DE750840-259A-48ED-988A-DEA645411957}.Release|Win32.Build.0 = Release|Win32
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}.Debug|Any CPU.ActiveCfg = Debug|Win32
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}.Debug|Win32.ActiveCfg = Debug|Win32
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}.Release|Any CPU.ActiveCfg = Release|Win32
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}.Release|Mixed Platforms.ActiveCfg = Release|Win32
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}.Release|Win32.ActiveCfg = Release|Win32
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Debug|Win32.ActiveCfg = Debug|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}.Release|Win32.ActiveCfg = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/App.config
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/App.config (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/App.config (revision 96)
@@ -0,0 +1,6 @@
+
+
+
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Client.csproj
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Client.csproj (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Client.csproj (revision 96)
@@ -0,0 +1,69 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {72C45A19-B0AE-427C-A8CC-E9EB7DA0B42B}
+ Exe
+ Properties
+ Client
+ Client
+ v4.5
+ 512
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {37375E14-A7D6-477D-BE5D-85767DBCE79A}
+ 1
+ 0
+ 0
+ tlbimp
+ False
+ True
+
+
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Program.cs
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Program.cs (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Program.cs (revision 96)
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Diagnostics;
+using ServerLib;
+
+namespace Client
+{
+ class Program
+ {
+ [STAThread]
+ static void Main(string[] args)
+ {
+ Foo foo = new Foo();
+ byte[] input = new byte[] { 1, 2, 3, 4 };
+ byte[] output = foo.Bar(input);
+ byte[] referenceOutput = new byte[] { 4, 3, 2, 1 };
+ Debug.Assert(Enumerable.SequenceEqual(output, referenceOutput));
+ }
+ }
+}
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Properties/AssemblyInfo.cs
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Properties/AssemblyInfo.cs (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Client/Properties/AssemblyInfo.cs (revision 96)
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("Client")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Client")]
+[assembly: AssemblyCopyright("Copyright © 2012")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("beb3c8c9-d206-46ac-809e-cc8609555406")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.cpp
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.cpp (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.cpp (revision 96)
@@ -0,0 +1,8 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#include "stdafx.h"
+#include "Foo.h"
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.h
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.h (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.h (revision 96)
@@ -0,0 +1,63 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#pragma once
+
+#include
+#include "resource.h" // main symbols
+#include "Server_i.h"
+
+using namespace ATL;
+
+////////////////////////////////////////////////////////////
+// CFoo
+
+class ATL_NO_VTABLE CFoo :
+ public CComObjectRootEx,
+ public CComCoClass,
+ public IDispatchImpl
+{
+public:
+
+DECLARE_REGISTRY_RESOURCEID(IDR_FOO)
+
+BEGIN_COM_MAP(CFoo)
+ COM_INTERFACE_ENTRY(IFoo)
+ COM_INTERFACE_ENTRY(IDispatch)
+END_COM_MAP()
+
+DECLARE_PROTECT_FINAL_CONSTRUCT()
+
+public:
+// CFoo
+
+// IFoo
+ STDMETHOD(Bar)(VARIANT vInput, VARIANT* pvOutput) throw()
+ {
+ _ATLTRY
+ {
+ ATLENSURE_THROW(vInput.vt == (VT_ARRAY | VT_UI1), E_INVALIDARG);
+ CComSafeArray pInputArray(vInput.parray);
+ ATLASSERT(pInputArray.GetDimensions() == 1);
+ const ULONG nCount = pInputArray.GetCount();
+ CComSafeArray pOutputArray;
+ ATLENSURE_SUCCEEDED(pOutputArray.Create(nCount));
+ for(ULONG nIndex = 0; nIndex < nCount; nIndex++)
+ pOutputArray[(INT) nIndex] = pInputArray[(INT) ((nCount - 1) - nIndex)];
+ ATLASSERT(pvOutput);
+ VariantInit(pvOutput);
+ CComVariant vOutput(pOutputArray.Detach());
+ ATLVERIFY(SUCCEEDED(vOutput.Detach(pvOutput)));
+ }
+ _ATLCATCH(Exception)
+ {
+ return Exception;
+ }
+ return S_OK;
+ }
+};
+
+OBJECT_ENTRY_AUTO(__uuidof(Foo), CFoo)
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.rgs
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.rgs (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Foo.rgs (revision 96)
@@ -0,0 +1,16 @@
+HKCR
+{
+ NoRemove CLSID
+ {
+ ForceRemove {B4B8E7FA-D672-487A-9B12-2F8D0B6287B5} = s 'Foo Class'
+ {
+ ForceRemove Programmable
+ InprocServer32 = s '%MODULE%'
+ {
+ val ThreadingModel = s 'Free'
+ }
+ TypeLib = s '{37375E14-A7D6-477D-BE5D-85767DBCE79A}'
+ Version = s '1.0'
+ }
+ }
+}
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ReadMe.txt
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ReadMe.txt (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ReadMe.txt (revision 96)
@@ -0,0 +1,83 @@
+========================================================================
+ ACTIVE TEMPLATE LIBRARY : Server Project Overview
+========================================================================
+
+AppWizard has created this Server project for you to use as the starting point for
+writing your Dynamic Link Library (DLL).
+
+This file contains a summary of what you will find in each of the files that
+make up your project.
+
+Server.vcxproj
+ This is the main project file for VC++ projects generated using an Application Wizard.
+ It contains information about the version of Visual C++ that generated the file, and
+ information about the platforms, configurations, and project features selected with the
+ Application Wizard.
+
+Server.vcxproj.filters
+ This is the filters file for VC++ projects generated using an Application Wizard.
+ It contains information about the association between the files in your project
+ and the filters. This association is used in the IDE to show grouping of files with
+ similar extensions under a specific node (for e.g. ".cpp" files are associated with the
+ "Source Files" filter).
+
+Server.idl
+ This file contains the IDL definitions of the type library, the interfaces
+ and co-classes defined in your project.
+ This file will be processed by the MIDL compiler to generate:
+ C++ interface definitions and GUID declarations (Server.h)
+ GUID definitions (Server_i.c)
+ A type library (Server.tlb)
+ Marshaling code (Server_p.c and dlldata.c)
+
+Server.h
+ This file contains the C++ interface definitions and GUID declarations of the
+ items defined in Server.idl. It will be regenerated by MIDL during compilation.
+
+Server.cpp
+ This file contains the object map and the implementation of your DLL's exports.
+
+Server.rc
+ This is a listing of all of the Microsoft Windows resources that the
+ program uses.
+
+Server.def
+ This module-definition file provides the linker with information about the exports
+ required by your DLL. It contains exports for:
+ DllGetClassObject
+ DllCanUnloadNow
+ DllRegisterServer
+ DllUnregisterServer
+ DllInstall
+
+/////////////////////////////////////////////////////////////////////////////
+Other standard files:
+
+StdAfx.h, StdAfx.cpp
+ These files are used to build a precompiled header (PCH) file
+ named Server.pch and a precompiled types file named StdAfx.obj.
+
+Resource.h
+ This is the standard header file that defines resource IDs.
+
+/////////////////////////////////////////////////////////////////////////////
+Proxy/stub DLL project and module definition file:
+
+Serverps.vcxproj
+ This file is the project file for building a proxy/stub DLL if necessary.
+ The IDL file in the main project must contain at least one interface and you must
+ first compile the IDL file before building the proxy/stub DLL. This process generates
+ dlldata.c, Server_i.c and Server_p.c which are required
+ to build the proxy/stub DLL.
+
+Serverps.vcxproj.filters
+ This is the filters file for the proxy/stub project. It contains information about the
+ association between the files in your project and the filters. This association is
+ used in the IDE to show grouping of files with similar extensions under a specific
+ node (for e.g. ".cpp" files are associated with the "Source Files" filter).
+
+Serverps.def
+ This module definition file provides the linker with information about the exports
+ required by the proxy/stub.
+
+/////////////////////////////////////////////////////////////////////////////
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.cpp
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.cpp (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.cpp (revision 96)
@@ -0,0 +1,72 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#include "stdafx.h"
+#include "resource.h"
+#include "Server_i.h"
+#include "dllmain.h"
+
+
+using namespace ATL;
+
+// Used to determine whether the DLL can be unloaded by OLE.
+STDAPI DllCanUnloadNow(void)
+{
+ return _AtlModule.DllCanUnloadNow();
+ }
+
+// Returns a class factory to create an object of the requested type.
+STDAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID* ppv)
+{
+ return _AtlModule.DllGetClassObject(rclsid, riid, ppv);
+}
+
+// DllRegisterServer - Adds entries to the system registry.
+STDAPI DllRegisterServer(void)
+{
+ // registers object, typelib and all interfaces in typelib
+ HRESULT hr = _AtlModule.DllRegisterServer();
+ return hr;
+}
+
+// DllUnregisterServer - Removes entries from the system registry.
+STDAPI DllUnregisterServer(void)
+{
+ HRESULT hr = _AtlModule.DllUnregisterServer();
+ return hr;
+}
+
+// DllInstall - Adds/Removes entries to the system registry per user per machine.
+STDAPI DllInstall(BOOL bInstall, _In_opt_ LPCWSTR pszCmdLine)
+{
+ HRESULT hr = E_FAIL;
+ static const wchar_t szUserSwitch[] = L"user";
+
+ if (pszCmdLine != NULL)
+ {
+ if (_wcsnicmp(pszCmdLine, szUserSwitch, _countof(szUserSwitch)) == 0)
+ {
+ ATL::AtlSetPerUserRegistration(true);
+ }
+ }
+
+ if (bInstall)
+ {
+ hr = DllRegisterServer();
+ if (FAILED(hr))
+ {
+ DllUnregisterServer();
+ }
+ }
+ else
+ {
+ hr = DllUnregisterServer();
+ }
+
+ return hr;
+}
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.def
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.def (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.def (revision 96)
@@ -0,0 +1,10 @@
+; Server.def : Declares the module parameters.
+
+LIBRARY
+
+EXPORTS
+ DllCanUnloadNow PRIVATE
+ DllGetClassObject PRIVATE
+ DllRegisterServer PRIVATE
+ DllUnregisterServer PRIVATE
+ DllInstall PRIVATE
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.idl
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.idl (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.idl (revision 96)
@@ -0,0 +1,37 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+import "oaidl.idl";
+import "ocidl.idl";
+
+[
+ object,
+ uuid(3D8A7768-9890-4021-B1AC-5CB913D32146),
+ dual,
+ nonextensible,
+ pointer_default(unique)
+]
+interface IFoo : IDispatch
+{
+ [id(1)] HRESULT Bar([in] VARIANT vInput, [out, retval] VARIANT* pvOutput);
+};
+[
+ uuid(37375E14-A7D6-477D-BE5D-85767DBCE79A),
+ version(1.0),
+]
+library ServerLib
+{
+ importlib("stdole2.tlb");
+ [
+ uuid(B4B8E7FA-D672-487A-9B12-2F8D0B6287B5)
+ ]
+ coclass Foo
+ {
+ [default] interface IFoo;
+ };
+};
+
+import "shobjidl.idl";
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.rgs
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.rgs (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.rgs (revision 96)
@@ -0,0 +1,3 @@
+HKCR
+{
+}
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.vcxproj
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.vcxproj (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.vcxproj (revision 96)
@@ -0,0 +1,165 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {DE750840-259A-48ED-988A-DEA645411957}
+ AtlProj
+
+
+
+ DynamicLibrary
+ true
+ v100
+ Dynamic
+ Unicode
+
+
+ DynamicLibrary
+ false
+ v100
+ Dynamic
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ true
+
+
+ true
+ false
+
+
+
+ Use
+ Level3
+ Disabled
+ WIN32;_WINDOWS;_DEBUG;_USRDLL;%(PreprocessorDefinitions)
+ true
+
+
+ false
+ Win32
+ _DEBUG;%(PreprocessorDefinitions)
+ Server_i.h
+ Server_i.c
+ Server_p.c
+ true
+ $(IntDir)Server.tlb
+
+ true
+
+
+ 0x0409
+ $(IntDir);%(AdditionalIncludeDirectories)
+ _DEBUG;%(PreprocessorDefinitions)
+
+
+ Windows
+ .\Server.def
+ true
+ true
+
+
+
+
+ Use
+ Level3
+ MaxSpeed
+ WIN32;_WINDOWS;NDEBUG;_USRDLL;%(PreprocessorDefinitions)
+ true
+
+
+ false
+ Win32
+ NDEBUG;%(PreprocessorDefinitions)
+ Server_i.h
+ Server_i.c
+ Server_p.c
+ true
+ $(IntDir)Server.tlb
+
+ true
+
+
+ 0x0409
+ $(IntDir);%(AdditionalIncludeDirectories)
+ NDEBUG;%(PreprocessorDefinitions)
+
+
+ Windows
+ .\Server.def
+ true
+ true
+ true
+ true
+
+
+
+
+ false
+
+
+ false
+
+
+
+
+
+
+ false
+
+
+ false
+
+
+
+
+ Create
+ Create
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.vcxproj.filters
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.vcxproj.filters (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server.vcxproj.filters (revision 96)
@@ -0,0 +1,82 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hpp;hxx;hm;inl;inc;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
+
+
+ {21de37c4-b7bb-4bf0-b879-03c4bac6e2ba}
+ False
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+ Source Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Generated Files
+
+
+ Header Files
+
+
+
+
+ Resource Files
+
+
+
+
+
+
+
+ Resource Files
+
+
+ Source Files
+
+
+ Resource Files
+
+
+
+
+ Source Files
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ServerPS.vcxproj
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ServerPS.vcxproj (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ServerPS.vcxproj (revision 96)
@@ -0,0 +1,96 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {EF8A4EF9-1356-463D-BB23-B8318C1A03CD}
+ AtlPSProj
+
+
+
+ DynamicLibrary
+ true
+ v110
+ Unicode
+
+
+ DynamicLibrary
+ false
+ v110
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+ $(Configuration)PS\
+
+
+ $(Configuration)PS\
+
+
+
+ WIN32;REGISTER_PROXY_DLL;_DEBUG;%(PreprocessorDefinitions)
+
+
+ kernel32.lib;rpcns4.lib;rpcrt4.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)
+ ServerPS.def
+ true
+
+
+ if exist dlldata.c goto :END
+echo Error: MIDL will not generate DLLDATA.C unless you have at least 1 interface in the main project.
+Exit 1
+:END
+
+ Checking for required files
+
+
+
+
+ MaxSpeed
+ WIN32;REGISTER_PROXY_DLL;NDEBUG;%(PreprocessorDefinitions)
+
+
+ kernel32.lib;rpcns4.lib;rpcrt4.lib;oleaut32.lib;uuid.lib;%(AdditionalDependencies)
+ ServerPS.def
+ true
+ true
+ true
+
+
+ if exist dlldata.c goto :END
+echo Error: MIDL will not generate DLLDATA.C unless you have at least 1 interface in the main project.
+Exit 1
+:END
+
+ Checking for required files
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ServerPS.vcxproj.filters
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ServerPS.vcxproj.filters (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/ServerPS.vcxproj.filters (revision 96)
@@ -0,0 +1,26 @@
+
+
+
+
+ {dd6b6b07-605a-43ab-97db-ec8ca80c9c43}
+
+
+ {2fdd7350-f8c6-4690-9fe5-c291468ee3f9}
+ False
+
+
+
+
+
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_i.c
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_i.c (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_i.c (revision 96)
@@ -0,0 +1,85 @@
+
+
+/* this ALWAYS GENERATED file contains the IIDs and CLSIDs */
+
+/* link this file in with the server and any clients */
+
+
+ /* File created by MIDL compiler version 7.00.0555 */
+/* at Fri Aug 17 21:46:43 2012
+ */
+/* Compiler settings for Server.idl:
+ Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
+ protocol : dce , ms_ext, c_ext, robust
+ error checks: allocation ref bounds_check enum stub_data
+ VC __declspec() decoration level:
+ __declspec(uuid()), __declspec(selectany), __declspec(novtable)
+ DECLSPEC_UUID(), MIDL_INTERFACE()
+*/
+/* @@MIDL_FILE_HEADING( ) */
+
+#pragma warning( disable: 4049 ) /* more than 64k source lines */
+
+
+#ifdef __cplusplus
+extern "C"{
+#endif
+
+
+#include
+#include
+
+#ifdef _MIDL_USE_GUIDDEF_
+
+#ifndef INITGUID
+#define INITGUID
+#include
+#undef INITGUID
+#else
+#include
+#endif
+
+#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
+ DEFINE_GUID(name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8)
+
+#else // !_MIDL_USE_GUIDDEF_
+
+#ifndef __IID_DEFINED__
+#define __IID_DEFINED__
+
+typedef struct _IID
+{
+ unsigned long x;
+ unsigned short s1;
+ unsigned short s2;
+ unsigned char c[8];
+} IID;
+
+#endif // __IID_DEFINED__
+
+#ifndef CLSID_DEFINED
+#define CLSID_DEFINED
+typedef IID CLSID;
+#endif // CLSID_DEFINED
+
+#define MIDL_DEFINE_GUID(type,name,l,w1,w2,b1,b2,b3,b4,b5,b6,b7,b8) \
+ const type name = {l,w1,w2,{b1,b2,b3,b4,b5,b6,b7,b8}}
+
+#endif !_MIDL_USE_GUIDDEF_
+
+MIDL_DEFINE_GUID(IID, IID_IFoo,0x3D8A7768,0x9890,0x4021,0xB1,0xAC,0x5C,0xB9,0x13,0xD3,0x21,0x46);
+
+
+MIDL_DEFINE_GUID(IID, LIBID_ServerLib,0x37375E14,0xA7D6,0x477D,0xBE,0x5D,0x85,0x76,0x7D,0xBC,0xE7,0x9A);
+
+
+MIDL_DEFINE_GUID(CLSID, CLSID_Foo,0xB4B8E7FA,0xD672,0x487A,0x9B,0x12,0x2F,0x8D,0x0B,0x62,0x87,0xB5);
+
+#undef MIDL_DEFINE_GUID
+
+#ifdef __cplusplus
+}
+#endif
+
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_i.h
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_i.h (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_i.h (revision 96)
@@ -0,0 +1,233 @@
+
+
+/* this ALWAYS GENERATED file contains the definitions for the interfaces */
+
+
+ /* File created by MIDL compiler version 7.00.0555 */
+/* at Fri Aug 17 21:46:43 2012
+ */
+/* Compiler settings for Server.idl:
+ Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
+ protocol : dce , ms_ext, c_ext, robust
+ error checks: allocation ref bounds_check enum stub_data
+ VC __declspec() decoration level:
+ __declspec(uuid()), __declspec(selectany), __declspec(novtable)
+ DECLSPEC_UUID(), MIDL_INTERFACE()
+*/
+/* @@MIDL_FILE_HEADING( ) */
+
+#pragma warning( disable: 4049 ) /* more than 64k source lines */
+
+
+/* verify that the version is high enough to compile this file*/
+#ifndef __REQUIRED_RPCNDR_H_VERSION__
+#define __REQUIRED_RPCNDR_H_VERSION__ 475
+#endif
+
+#include "rpc.h"
+#include "rpcndr.h"
+
+#ifndef __RPCNDR_H_VERSION__
+#error this stub requires an updated version of
+#endif // __RPCNDR_H_VERSION__
+
+#ifndef COM_NO_WINDOWS_H
+#include "windows.h"
+#include "ole2.h"
+#endif /*COM_NO_WINDOWS_H*/
+
+#ifndef __Server_i_h__
+#define __Server_i_h__
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#pragma once
+#endif
+
+/* Forward Declarations */
+
+#ifndef __IFoo_FWD_DEFINED__
+#define __IFoo_FWD_DEFINED__
+typedef interface IFoo IFoo;
+#endif /* __IFoo_FWD_DEFINED__ */
+
+
+#ifndef __Foo_FWD_DEFINED__
+#define __Foo_FWD_DEFINED__
+
+#ifdef __cplusplus
+typedef class Foo Foo;
+#else
+typedef struct Foo Foo;
+#endif /* __cplusplus */
+
+#endif /* __Foo_FWD_DEFINED__ */
+
+
+/* header files for imported files */
+#include "oaidl.h"
+#include "ocidl.h"
+#include "shobjidl.h"
+
+#ifdef __cplusplus
+extern "C"{
+#endif
+
+
+#ifndef __IFoo_INTERFACE_DEFINED__
+#define __IFoo_INTERFACE_DEFINED__
+
+/* interface IFoo */
+/* [unique][nonextensible][dual][uuid][object] */
+
+
+EXTERN_C const IID IID_IFoo;
+
+#if defined(__cplusplus) && !defined(CINTERFACE)
+
+ MIDL_INTERFACE("3D8A7768-9890-4021-B1AC-5CB913D32146")
+ IFoo : public IDispatch
+ {
+ public:
+ virtual /* [id] */ HRESULT STDMETHODCALLTYPE Bar(
+ /* [in] */ VARIANT vInput,
+ /* [retval][out] */ VARIANT *pvOutput) = 0;
+
+ };
+
+#else /* C style interface */
+
+ typedef struct IFooVtbl
+ {
+ BEGIN_INTERFACE
+
+ HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
+ IFoo * This,
+ /* [in] */ REFIID riid,
+ /* [annotation][iid_is][out] */
+ __RPC__deref_out void **ppvObject);
+
+ ULONG ( STDMETHODCALLTYPE *AddRef )(
+ IFoo * This);
+
+ ULONG ( STDMETHODCALLTYPE *Release )(
+ IFoo * This);
+
+ HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
+ IFoo * This,
+ /* [out] */ UINT *pctinfo);
+
+ HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
+ IFoo * This,
+ /* [in] */ UINT iTInfo,
+ /* [in] */ LCID lcid,
+ /* [out] */ ITypeInfo **ppTInfo);
+
+ HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
+ IFoo * This,
+ /* [in] */ REFIID riid,
+ /* [size_is][in] */ LPOLESTR *rgszNames,
+ /* [range][in] */ UINT cNames,
+ /* [in] */ LCID lcid,
+ /* [size_is][out] */ DISPID *rgDispId);
+
+ /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
+ IFoo * This,
+ /* [in] */ DISPID dispIdMember,
+ /* [in] */ REFIID riid,
+ /* [in] */ LCID lcid,
+ /* [in] */ WORD wFlags,
+ /* [out][in] */ DISPPARAMS *pDispParams,
+ /* [out] */ VARIANT *pVarResult,
+ /* [out] */ EXCEPINFO *pExcepInfo,
+ /* [out] */ UINT *puArgErr);
+
+ /* [id] */ HRESULT ( STDMETHODCALLTYPE *Bar )(
+ IFoo * This,
+ /* [in] */ VARIANT vInput,
+ /* [retval][out] */ VARIANT *pvOutput);
+
+ END_INTERFACE
+ } IFooVtbl;
+
+ interface IFoo
+ {
+ CONST_VTBL struct IFooVtbl *lpVtbl;
+ };
+
+
+
+#ifdef COBJMACROS
+
+
+#define IFoo_QueryInterface(This,riid,ppvObject) \
+ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
+
+#define IFoo_AddRef(This) \
+ ( (This)->lpVtbl -> AddRef(This) )
+
+#define IFoo_Release(This) \
+ ( (This)->lpVtbl -> Release(This) )
+
+
+#define IFoo_GetTypeInfoCount(This,pctinfo) \
+ ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
+
+#define IFoo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
+ ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
+
+#define IFoo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
+ ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
+
+#define IFoo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
+ ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
+
+
+#define IFoo_Bar(This,vInput,pvOutput) \
+ ( (This)->lpVtbl -> Bar(This,vInput,pvOutput) )
+
+#endif /* COBJMACROS */
+
+
+#endif /* C style interface */
+
+
+
+
+#endif /* __IFoo_INTERFACE_DEFINED__ */
+
+
+
+#ifndef __ServerLib_LIBRARY_DEFINED__
+#define __ServerLib_LIBRARY_DEFINED__
+
+/* library ServerLib */
+/* [version][uuid] */
+
+
+EXTERN_C const IID LIBID_ServerLib;
+
+EXTERN_C const CLSID CLSID_Foo;
+
+#ifdef __cplusplus
+
+class DECLSPEC_UUID("B4B8E7FA-D672-487A-9B12-2F8D0B6287B5")
+Foo;
+#endif
+#endif /* __ServerLib_LIBRARY_DEFINED__ */
+
+/* Additional Prototypes for ALL interfaces */
+
+unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
+unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
+unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
+void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
+
+/* end of Additional Prototypes */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_p.c
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_p.c (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Server_p.c (revision 96)
@@ -0,0 +1,1043 @@
+
+
+/* this ALWAYS GENERATED file contains the proxy stub code */
+
+
+ /* File created by MIDL compiler version 7.00.0555 */
+/* at Fri Aug 17 21:46:43 2012
+ */
+/* Compiler settings for Server.idl:
+ Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
+ protocol : dce , ms_ext, c_ext, robust
+ error checks: allocation ref bounds_check enum stub_data
+ VC __declspec() decoration level:
+ __declspec(uuid()), __declspec(selectany), __declspec(novtable)
+ DECLSPEC_UUID(), MIDL_INTERFACE()
+*/
+/* @@MIDL_FILE_HEADING( ) */
+
+#if !defined(_M_IA64) && !defined(_M_AMD64)
+
+
+#pragma warning( disable: 4049 ) /* more than 64k source lines */
+#if _MSC_VER >= 1200
+#pragma warning(push)
+#endif
+
+#pragma warning( disable: 4211 ) /* redefine extern to static */
+#pragma warning( disable: 4232 ) /* dllimport identity*/
+#pragma warning( disable: 4024 ) /* array to pointer mapping*/
+#pragma warning( disable: 4152 ) /* function/data pointer conversion in expression */
+#pragma warning( disable: 4100 ) /* unreferenced arguments in x86 call */
+
+#pragma optimize("", off )
+
+#define USE_STUBLESS_PROXY
+
+
+/* verify that the version is high enough to compile this file*/
+#ifndef __REDQ_RPCPROXY_H_VERSION__
+#define __REQUIRED_RPCPROXY_H_VERSION__ 475
+#endif
+
+
+#include "rpcproxy.h"
+#ifndef __RPCPROXY_H_VERSION__
+#error this stub requires an updated version of
+#endif /* __RPCPROXY_H_VERSION__ */
+
+
+#include "Server_i.h"
+
+#define TYPE_FORMAT_STRING_SIZE 1053
+#define PROC_FORMAT_STRING_SIZE 43
+#define EXPR_FORMAT_STRING_SIZE 1
+#define TRANSMIT_AS_TABLE_SIZE 0
+#define WIRE_MARSHAL_TABLE_SIZE 1
+
+typedef struct _Server_MIDL_TYPE_FORMAT_STRING
+ {
+ short Pad;
+ unsigned char Format[ TYPE_FORMAT_STRING_SIZE ];
+ } Server_MIDL_TYPE_FORMAT_STRING;
+
+typedef struct _Server_MIDL_PROC_FORMAT_STRING
+ {
+ short Pad;
+ unsigned char Format[ PROC_FORMAT_STRING_SIZE ];
+ } Server_MIDL_PROC_FORMAT_STRING;
+
+typedef struct _Server_MIDL_EXPR_FORMAT_STRING
+ {
+ long Pad;
+ unsigned char Format[ EXPR_FORMAT_STRING_SIZE ];
+ } Server_MIDL_EXPR_FORMAT_STRING;
+
+
+static const RPC_SYNTAX_IDENTIFIER _RpcTransferSyntax =
+{{0x8A885D04,0x1CEB,0x11C9,{0x9F,0xE8,0x08,0x00,0x2B,0x10,0x48,0x60}},{2,0}};
+
+
+extern const Server_MIDL_TYPE_FORMAT_STRING Server__MIDL_TypeFormatString;
+extern const Server_MIDL_PROC_FORMAT_STRING Server__MIDL_ProcFormatString;
+extern const Server_MIDL_EXPR_FORMAT_STRING Server__MIDL_ExprFormatString;
+
+
+extern const MIDL_STUB_DESC Object_StubDesc;
+
+
+extern const MIDL_SERVER_INFO IFoo_ServerInfo;
+extern const MIDL_STUBLESS_PROXY_INFO IFoo_ProxyInfo;
+
+
+extern const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[ WIRE_MARSHAL_TABLE_SIZE ];
+
+#if !defined(__RPC_WIN32__)
+#error Invalid build platform for this stub.
+#endif
+
+#if !(TARGET_IS_NT50_OR_LATER)
+#error You need Windows 2000 or later to run this stub because it uses these features:
+#error /robust command line switch.
+#error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
+#error This app will fail with the RPC_X_WRONG_STUB_VERSION error.
+#endif
+
+
+static const Server_MIDL_PROC_FORMAT_STRING Server__MIDL_ProcFormatString =
+ {
+ 0,
+ {
+
+ /* Procedure Bar */
+
+ 0x33, /* FC_AUTO_HANDLE */
+ 0x6c, /* Old Flags: object, Oi2 */
+/* 2 */ NdrFcLong( 0x0 ), /* 0 */
+/* 6 */ NdrFcShort( 0x7 ), /* 7 */
+/* 8 */ NdrFcShort( 0x1c ), /* x86 Stack size/offset = 28 */
+/* 10 */ NdrFcShort( 0x0 ), /* 0 */
+/* 12 */ NdrFcShort( 0x8 ), /* 8 */
+/* 14 */ 0x47, /* Oi2 Flags: srv must size, clt must size, has return, has ext, */
+ 0x3, /* 3 */
+/* 16 */ 0x8, /* 8 */
+ 0x7, /* Ext Flags: new corr desc, clt corr check, srv corr check, */
+/* 18 */ NdrFcShort( 0x1 ), /* 1 */
+/* 20 */ NdrFcShort( 0x1 ), /* 1 */
+/* 22 */ NdrFcShort( 0x0 ), /* 0 */
+
+ /* Parameter vInput */
+
+/* 24 */ NdrFcShort( 0x8b ), /* Flags: must size, must free, in, by val, */
+/* 26 */ NdrFcShort( 0x4 ), /* x86 Stack size/offset = 4 */
+/* 28 */ NdrFcShort( 0x400 ), /* Type Offset=1024 */
+
+ /* Parameter pvOutput */
+
+/* 30 */ NdrFcShort( 0x4113 ), /* Flags: must size, must free, out, simple ref, srv alloc size=16 */
+/* 32 */ NdrFcShort( 0x14 ), /* x86 Stack size/offset = 20 */
+/* 34 */ NdrFcShort( 0x412 ), /* Type Offset=1042 */
+
+ /* Return value */
+
+/* 36 */ NdrFcShort( 0x70 ), /* Flags: out, return, base type, */
+/* 38 */ NdrFcShort( 0x18 ), /* x86 Stack size/offset = 24 */
+/* 40 */ 0x8, /* FC_LONG */
+ 0x0, /* 0 */
+
+ 0x0
+ }
+ };
+
+static const Server_MIDL_TYPE_FORMAT_STRING Server__MIDL_TypeFormatString =
+ {
+ 0,
+ {
+ NdrFcShort( 0x0 ), /* 0 */
+/* 2 */
+ 0x12, 0x0, /* FC_UP */
+/* 4 */ NdrFcShort( 0x3e8 ), /* Offset= 1000 (1004) */
+/* 6 */
+ 0x2b, /* FC_NON_ENCAPSULATED_UNION */
+ 0x9, /* FC_ULONG */
+/* 8 */ 0x7, /* Corr desc: FC_USHORT */
+ 0x0, /* */
+/* 10 */ NdrFcShort( 0xfff8 ), /* -8 */
+/* 12 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 14 */ NdrFcShort( 0x2 ), /* Offset= 2 (16) */
+/* 16 */ NdrFcShort( 0x10 ), /* 16 */
+/* 18 */ NdrFcShort( 0x2f ), /* 47 */
+/* 20 */ NdrFcLong( 0x14 ), /* 20 */
+/* 24 */ NdrFcShort( 0x800b ), /* Simple arm type: FC_HYPER */
+/* 26 */ NdrFcLong( 0x3 ), /* 3 */
+/* 30 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */
+/* 32 */ NdrFcLong( 0x11 ), /* 17 */
+/* 36 */ NdrFcShort( 0x8001 ), /* Simple arm type: FC_BYTE */
+/* 38 */ NdrFcLong( 0x2 ), /* 2 */
+/* 42 */ NdrFcShort( 0x8006 ), /* Simple arm type: FC_SHORT */
+/* 44 */ NdrFcLong( 0x4 ), /* 4 */
+/* 48 */ NdrFcShort( 0x800a ), /* Simple arm type: FC_FLOAT */
+/* 50 */ NdrFcLong( 0x5 ), /* 5 */
+/* 54 */ NdrFcShort( 0x800c ), /* Simple arm type: FC_DOUBLE */
+/* 56 */ NdrFcLong( 0xb ), /* 11 */
+/* 60 */ NdrFcShort( 0x8006 ), /* Simple arm type: FC_SHORT */
+/* 62 */ NdrFcLong( 0xa ), /* 10 */
+/* 66 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */
+/* 68 */ NdrFcLong( 0x6 ), /* 6 */
+/* 72 */ NdrFcShort( 0xe8 ), /* Offset= 232 (304) */
+/* 74 */ NdrFcLong( 0x7 ), /* 7 */
+/* 78 */ NdrFcShort( 0x800c ), /* Simple arm type: FC_DOUBLE */
+/* 80 */ NdrFcLong( 0x8 ), /* 8 */
+/* 84 */ NdrFcShort( 0xe2 ), /* Offset= 226 (310) */
+/* 86 */ NdrFcLong( 0xd ), /* 13 */
+/* 90 */ NdrFcShort( 0xf6 ), /* Offset= 246 (336) */
+/* 92 */ NdrFcLong( 0x9 ), /* 9 */
+/* 96 */ NdrFcShort( 0x102 ), /* Offset= 258 (354) */
+/* 98 */ NdrFcLong( 0x2000 ), /* 8192 */
+/* 102 */ NdrFcShort( 0x10e ), /* Offset= 270 (372) */
+/* 104 */ NdrFcLong( 0x24 ), /* 36 */
+/* 108 */ NdrFcShort( 0x336 ), /* Offset= 822 (930) */
+/* 110 */ NdrFcLong( 0x4024 ), /* 16420 */
+/* 114 */ NdrFcShort( 0x330 ), /* Offset= 816 (930) */
+/* 116 */ NdrFcLong( 0x4011 ), /* 16401 */
+/* 120 */ NdrFcShort( 0x32e ), /* Offset= 814 (934) */
+/* 122 */ NdrFcLong( 0x4002 ), /* 16386 */
+/* 126 */ NdrFcShort( 0x32c ), /* Offset= 812 (938) */
+/* 128 */ NdrFcLong( 0x4003 ), /* 16387 */
+/* 132 */ NdrFcShort( 0x32a ), /* Offset= 810 (942) */
+/* 134 */ NdrFcLong( 0x4014 ), /* 16404 */
+/* 138 */ NdrFcShort( 0x328 ), /* Offset= 808 (946) */
+/* 140 */ NdrFcLong( 0x4004 ), /* 16388 */
+/* 144 */ NdrFcShort( 0x326 ), /* Offset= 806 (950) */
+/* 146 */ NdrFcLong( 0x4005 ), /* 16389 */
+/* 150 */ NdrFcShort( 0x324 ), /* Offset= 804 (954) */
+/* 152 */ NdrFcLong( 0x400b ), /* 16395 */
+/* 156 */ NdrFcShort( 0x30e ), /* Offset= 782 (938) */
+/* 158 */ NdrFcLong( 0x400a ), /* 16394 */
+/* 162 */ NdrFcShort( 0x30c ), /* Offset= 780 (942) */
+/* 164 */ NdrFcLong( 0x4006 ), /* 16390 */
+/* 168 */ NdrFcShort( 0x316 ), /* Offset= 790 (958) */
+/* 170 */ NdrFcLong( 0x4007 ), /* 16391 */
+/* 174 */ NdrFcShort( 0x30c ), /* Offset= 780 (954) */
+/* 176 */ NdrFcLong( 0x4008 ), /* 16392 */
+/* 180 */ NdrFcShort( 0x30e ), /* Offset= 782 (962) */
+/* 182 */ NdrFcLong( 0x400d ), /* 16397 */
+/* 186 */ NdrFcShort( 0x30c ), /* Offset= 780 (966) */
+/* 188 */ NdrFcLong( 0x4009 ), /* 16393 */
+/* 192 */ NdrFcShort( 0x30a ), /* Offset= 778 (970) */
+/* 194 */ NdrFcLong( 0x6000 ), /* 24576 */
+/* 198 */ NdrFcShort( 0x308 ), /* Offset= 776 (974) */
+/* 200 */ NdrFcLong( 0x400c ), /* 16396 */
+/* 204 */ NdrFcShort( 0x306 ), /* Offset= 774 (978) */
+/* 206 */ NdrFcLong( 0x10 ), /* 16 */
+/* 210 */ NdrFcShort( 0x8002 ), /* Simple arm type: FC_CHAR */
+/* 212 */ NdrFcLong( 0x12 ), /* 18 */
+/* 216 */ NdrFcShort( 0x8006 ), /* Simple arm type: FC_SHORT */
+/* 218 */ NdrFcLong( 0x13 ), /* 19 */
+/* 222 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */
+/* 224 */ NdrFcLong( 0x15 ), /* 21 */
+/* 228 */ NdrFcShort( 0x800b ), /* Simple arm type: FC_HYPER */
+/* 230 */ NdrFcLong( 0x16 ), /* 22 */
+/* 234 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */
+/* 236 */ NdrFcLong( 0x17 ), /* 23 */
+/* 240 */ NdrFcShort( 0x8008 ), /* Simple arm type: FC_LONG */
+/* 242 */ NdrFcLong( 0xe ), /* 14 */
+/* 246 */ NdrFcShort( 0x2e4 ), /* Offset= 740 (986) */
+/* 248 */ NdrFcLong( 0x400e ), /* 16398 */
+/* 252 */ NdrFcShort( 0x2e8 ), /* Offset= 744 (996) */
+/* 254 */ NdrFcLong( 0x4010 ), /* 16400 */
+/* 258 */ NdrFcShort( 0x2e6 ), /* Offset= 742 (1000) */
+/* 260 */ NdrFcLong( 0x4012 ), /* 16402 */
+/* 264 */ NdrFcShort( 0x2a2 ), /* Offset= 674 (938) */
+/* 266 */ NdrFcLong( 0x4013 ), /* 16403 */
+/* 270 */ NdrFcShort( 0x2a0 ), /* Offset= 672 (942) */
+/* 272 */ NdrFcLong( 0x4015 ), /* 16405 */
+/* 276 */ NdrFcShort( 0x29e ), /* Offset= 670 (946) */
+/* 278 */ NdrFcLong( 0x4016 ), /* 16406 */
+/* 282 */ NdrFcShort( 0x294 ), /* Offset= 660 (942) */
+/* 284 */ NdrFcLong( 0x4017 ), /* 16407 */
+/* 288 */ NdrFcShort( 0x28e ), /* Offset= 654 (942) */
+/* 290 */ NdrFcLong( 0x0 ), /* 0 */
+/* 294 */ NdrFcShort( 0x0 ), /* Offset= 0 (294) */
+/* 296 */ NdrFcLong( 0x1 ), /* 1 */
+/* 300 */ NdrFcShort( 0x0 ), /* Offset= 0 (300) */
+/* 302 */ NdrFcShort( 0xffff ), /* Offset= -1 (301) */
+/* 304 */
+ 0x15, /* FC_STRUCT */
+ 0x7, /* 7 */
+/* 306 */ NdrFcShort( 0x8 ), /* 8 */
+/* 308 */ 0xb, /* FC_HYPER */
+ 0x5b, /* FC_END */
+/* 310 */
+ 0x12, 0x0, /* FC_UP */
+/* 312 */ NdrFcShort( 0xe ), /* Offset= 14 (326) */
+/* 314 */
+ 0x1b, /* FC_CARRAY */
+ 0x1, /* 1 */
+/* 316 */ NdrFcShort( 0x2 ), /* 2 */
+/* 318 */ 0x9, /* Corr desc: FC_ULONG */
+ 0x0, /* */
+/* 320 */ NdrFcShort( 0xfffc ), /* -4 */
+/* 322 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 324 */ 0x6, /* FC_SHORT */
+ 0x5b, /* FC_END */
+/* 326 */
+ 0x17, /* FC_CSTRUCT */
+ 0x3, /* 3 */
+/* 328 */ NdrFcShort( 0x8 ), /* 8 */
+/* 330 */ NdrFcShort( 0xfff0 ), /* Offset= -16 (314) */
+/* 332 */ 0x8, /* FC_LONG */
+ 0x8, /* FC_LONG */
+/* 334 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 336 */
+ 0x2f, /* FC_IP */
+ 0x5a, /* FC_CONSTANT_IID */
+/* 338 */ NdrFcLong( 0x0 ), /* 0 */
+/* 342 */ NdrFcShort( 0x0 ), /* 0 */
+/* 344 */ NdrFcShort( 0x0 ), /* 0 */
+/* 346 */ 0xc0, /* 192 */
+ 0x0, /* 0 */
+/* 348 */ 0x0, /* 0 */
+ 0x0, /* 0 */
+/* 350 */ 0x0, /* 0 */
+ 0x0, /* 0 */
+/* 352 */ 0x0, /* 0 */
+ 0x46, /* 70 */
+/* 354 */
+ 0x2f, /* FC_IP */
+ 0x5a, /* FC_CONSTANT_IID */
+/* 356 */ NdrFcLong( 0x20400 ), /* 132096 */
+/* 360 */ NdrFcShort( 0x0 ), /* 0 */
+/* 362 */ NdrFcShort( 0x0 ), /* 0 */
+/* 364 */ 0xc0, /* 192 */
+ 0x0, /* 0 */
+/* 366 */ 0x0, /* 0 */
+ 0x0, /* 0 */
+/* 368 */ 0x0, /* 0 */
+ 0x0, /* 0 */
+/* 370 */ 0x0, /* 0 */
+ 0x46, /* 70 */
+/* 372 */
+ 0x12, 0x10, /* FC_UP [pointer_deref] */
+/* 374 */ NdrFcShort( 0x2 ), /* Offset= 2 (376) */
+/* 376 */
+ 0x12, 0x0, /* FC_UP */
+/* 378 */ NdrFcShort( 0x216 ), /* Offset= 534 (912) */
+/* 380 */
+ 0x2a, /* FC_ENCAPSULATED_UNION */
+ 0x49, /* 73 */
+/* 382 */ NdrFcShort( 0x18 ), /* 24 */
+/* 384 */ NdrFcShort( 0xa ), /* 10 */
+/* 386 */ NdrFcLong( 0x8 ), /* 8 */
+/* 390 */ NdrFcShort( 0x5a ), /* Offset= 90 (480) */
+/* 392 */ NdrFcLong( 0xd ), /* 13 */
+/* 396 */ NdrFcShort( 0x7e ), /* Offset= 126 (522) */
+/* 398 */ NdrFcLong( 0x9 ), /* 9 */
+/* 402 */ NdrFcShort( 0x9e ), /* Offset= 158 (560) */
+/* 404 */ NdrFcLong( 0xc ), /* 12 */
+/* 408 */ NdrFcShort( 0xc8 ), /* Offset= 200 (608) */
+/* 410 */ NdrFcLong( 0x24 ), /* 36 */
+/* 414 */ NdrFcShort( 0x124 ), /* Offset= 292 (706) */
+/* 416 */ NdrFcLong( 0x800d ), /* 32781 */
+/* 420 */ NdrFcShort( 0x140 ), /* Offset= 320 (740) */
+/* 422 */ NdrFcLong( 0x10 ), /* 16 */
+/* 426 */ NdrFcShort( 0x15a ), /* Offset= 346 (772) */
+/* 428 */ NdrFcLong( 0x2 ), /* 2 */
+/* 432 */ NdrFcShort( 0x174 ), /* Offset= 372 (804) */
+/* 434 */ NdrFcLong( 0x3 ), /* 3 */
+/* 438 */ NdrFcShort( 0x18e ), /* Offset= 398 (836) */
+/* 440 */ NdrFcLong( 0x14 ), /* 20 */
+/* 444 */ NdrFcShort( 0x1a8 ), /* Offset= 424 (868) */
+/* 446 */ NdrFcShort( 0xffff ), /* Offset= -1 (445) */
+/* 448 */
+ 0x1b, /* FC_CARRAY */
+ 0x3, /* 3 */
+/* 450 */ NdrFcShort( 0x4 ), /* 4 */
+/* 452 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 454 */ NdrFcShort( 0x0 ), /* 0 */
+/* 456 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 458 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 460 */
+ 0x48, /* FC_VARIABLE_REPEAT */
+ 0x49, /* FC_FIXED_OFFSET */
+/* 462 */ NdrFcShort( 0x4 ), /* 4 */
+/* 464 */ NdrFcShort( 0x0 ), /* 0 */
+/* 466 */ NdrFcShort( 0x1 ), /* 1 */
+/* 468 */ NdrFcShort( 0x0 ), /* 0 */
+/* 470 */ NdrFcShort( 0x0 ), /* 0 */
+/* 472 */ 0x12, 0x0, /* FC_UP */
+/* 474 */ NdrFcShort( 0xff6c ), /* Offset= -148 (326) */
+/* 476 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 478 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 480 */
+ 0x16, /* FC_PSTRUCT */
+ 0x3, /* 3 */
+/* 482 */ NdrFcShort( 0x8 ), /* 8 */
+/* 484 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 486 */
+ 0x46, /* FC_NO_REPEAT */
+ 0x5c, /* FC_PAD */
+/* 488 */ NdrFcShort( 0x4 ), /* 4 */
+/* 490 */ NdrFcShort( 0x4 ), /* 4 */
+/* 492 */ 0x11, 0x0, /* FC_RP */
+/* 494 */ NdrFcShort( 0xffd2 ), /* Offset= -46 (448) */
+/* 496 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 498 */ 0x8, /* FC_LONG */
+ 0x5b, /* FC_END */
+/* 500 */
+ 0x21, /* FC_BOGUS_ARRAY */
+ 0x3, /* 3 */
+/* 502 */ NdrFcShort( 0x0 ), /* 0 */
+/* 504 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 506 */ NdrFcShort( 0x0 ), /* 0 */
+/* 508 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 510 */ NdrFcLong( 0xffffffff ), /* -1 */
+/* 514 */ NdrFcShort( 0x0 ), /* Corr flags: */
+/* 516 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 518 */ NdrFcShort( 0xff4a ), /* Offset= -182 (336) */
+/* 520 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 522 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 524 */ NdrFcShort( 0x8 ), /* 8 */
+/* 526 */ NdrFcShort( 0x0 ), /* 0 */
+/* 528 */ NdrFcShort( 0x6 ), /* Offset= 6 (534) */
+/* 530 */ 0x8, /* FC_LONG */
+ 0x36, /* FC_POINTER */
+/* 532 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 534 */
+ 0x11, 0x0, /* FC_RP */
+/* 536 */ NdrFcShort( 0xffdc ), /* Offset= -36 (500) */
+/* 538 */
+ 0x21, /* FC_BOGUS_ARRAY */
+ 0x3, /* 3 */
+/* 540 */ NdrFcShort( 0x0 ), /* 0 */
+/* 542 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 544 */ NdrFcShort( 0x0 ), /* 0 */
+/* 546 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 548 */ NdrFcLong( 0xffffffff ), /* -1 */
+/* 552 */ NdrFcShort( 0x0 ), /* Corr flags: */
+/* 554 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 556 */ NdrFcShort( 0xff36 ), /* Offset= -202 (354) */
+/* 558 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 560 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 562 */ NdrFcShort( 0x8 ), /* 8 */
+/* 564 */ NdrFcShort( 0x0 ), /* 0 */
+/* 566 */ NdrFcShort( 0x6 ), /* Offset= 6 (572) */
+/* 568 */ 0x8, /* FC_LONG */
+ 0x36, /* FC_POINTER */
+/* 570 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 572 */
+ 0x11, 0x0, /* FC_RP */
+/* 574 */ NdrFcShort( 0xffdc ), /* Offset= -36 (538) */
+/* 576 */
+ 0x1b, /* FC_CARRAY */
+ 0x3, /* 3 */
+/* 578 */ NdrFcShort( 0x4 ), /* 4 */
+/* 580 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 582 */ NdrFcShort( 0x0 ), /* 0 */
+/* 584 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 586 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 588 */
+ 0x48, /* FC_VARIABLE_REPEAT */
+ 0x49, /* FC_FIXED_OFFSET */
+/* 590 */ NdrFcShort( 0x4 ), /* 4 */
+/* 592 */ NdrFcShort( 0x0 ), /* 0 */
+/* 594 */ NdrFcShort( 0x1 ), /* 1 */
+/* 596 */ NdrFcShort( 0x0 ), /* 0 */
+/* 598 */ NdrFcShort( 0x0 ), /* 0 */
+/* 600 */ 0x12, 0x0, /* FC_UP */
+/* 602 */ NdrFcShort( 0x192 ), /* Offset= 402 (1004) */
+/* 604 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 606 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 608 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 610 */ NdrFcShort( 0x8 ), /* 8 */
+/* 612 */ NdrFcShort( 0x0 ), /* 0 */
+/* 614 */ NdrFcShort( 0x6 ), /* Offset= 6 (620) */
+/* 616 */ 0x8, /* FC_LONG */
+ 0x36, /* FC_POINTER */
+/* 618 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 620 */
+ 0x11, 0x0, /* FC_RP */
+/* 622 */ NdrFcShort( 0xffd2 ), /* Offset= -46 (576) */
+/* 624 */
+ 0x2f, /* FC_IP */
+ 0x5a, /* FC_CONSTANT_IID */
+/* 626 */ NdrFcLong( 0x2f ), /* 47 */
+/* 630 */ NdrFcShort( 0x0 ), /* 0 */
+/* 632 */ NdrFcShort( 0x0 ), /* 0 */
+/* 634 */ 0xc0, /* 192 */
+ 0x0, /* 0 */
+/* 636 */ 0x0, /* 0 */
+ 0x0, /* 0 */
+/* 638 */ 0x0, /* 0 */
+ 0x0, /* 0 */
+/* 640 */ 0x0, /* 0 */
+ 0x46, /* 70 */
+/* 642 */
+ 0x1b, /* FC_CARRAY */
+ 0x0, /* 0 */
+/* 644 */ NdrFcShort( 0x1 ), /* 1 */
+/* 646 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 648 */ NdrFcShort( 0x4 ), /* 4 */
+/* 650 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 652 */ 0x1, /* FC_BYTE */
+ 0x5b, /* FC_END */
+/* 654 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 656 */ NdrFcShort( 0x10 ), /* 16 */
+/* 658 */ NdrFcShort( 0x0 ), /* 0 */
+/* 660 */ NdrFcShort( 0xa ), /* Offset= 10 (670) */
+/* 662 */ 0x8, /* FC_LONG */
+ 0x8, /* FC_LONG */
+/* 664 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 666 */ NdrFcShort( 0xffd6 ), /* Offset= -42 (624) */
+/* 668 */ 0x36, /* FC_POINTER */
+ 0x5b, /* FC_END */
+/* 670 */
+ 0x12, 0x0, /* FC_UP */
+/* 672 */ NdrFcShort( 0xffe2 ), /* Offset= -30 (642) */
+/* 674 */
+ 0x1b, /* FC_CARRAY */
+ 0x3, /* 3 */
+/* 676 */ NdrFcShort( 0x4 ), /* 4 */
+/* 678 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 680 */ NdrFcShort( 0x0 ), /* 0 */
+/* 682 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 684 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 686 */
+ 0x48, /* FC_VARIABLE_REPEAT */
+ 0x49, /* FC_FIXED_OFFSET */
+/* 688 */ NdrFcShort( 0x4 ), /* 4 */
+/* 690 */ NdrFcShort( 0x0 ), /* 0 */
+/* 692 */ NdrFcShort( 0x1 ), /* 1 */
+/* 694 */ NdrFcShort( 0x0 ), /* 0 */
+/* 696 */ NdrFcShort( 0x0 ), /* 0 */
+/* 698 */ 0x12, 0x0, /* FC_UP */
+/* 700 */ NdrFcShort( 0xffd2 ), /* Offset= -46 (654) */
+/* 702 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 704 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 706 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 708 */ NdrFcShort( 0x8 ), /* 8 */
+/* 710 */ NdrFcShort( 0x0 ), /* 0 */
+/* 712 */ NdrFcShort( 0x6 ), /* Offset= 6 (718) */
+/* 714 */ 0x8, /* FC_LONG */
+ 0x36, /* FC_POINTER */
+/* 716 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 718 */
+ 0x11, 0x0, /* FC_RP */
+/* 720 */ NdrFcShort( 0xffd2 ), /* Offset= -46 (674) */
+/* 722 */
+ 0x1d, /* FC_SMFARRAY */
+ 0x0, /* 0 */
+/* 724 */ NdrFcShort( 0x8 ), /* 8 */
+/* 726 */ 0x1, /* FC_BYTE */
+ 0x5b, /* FC_END */
+/* 728 */
+ 0x15, /* FC_STRUCT */
+ 0x3, /* 3 */
+/* 730 */ NdrFcShort( 0x10 ), /* 16 */
+/* 732 */ 0x8, /* FC_LONG */
+ 0x6, /* FC_SHORT */
+/* 734 */ 0x6, /* FC_SHORT */
+ 0x4c, /* FC_EMBEDDED_COMPLEX */
+/* 736 */ 0x0, /* 0 */
+ NdrFcShort( 0xfff1 ), /* Offset= -15 (722) */
+ 0x5b, /* FC_END */
+/* 740 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 742 */ NdrFcShort( 0x18 ), /* 24 */
+/* 744 */ NdrFcShort( 0x0 ), /* 0 */
+/* 746 */ NdrFcShort( 0xa ), /* Offset= 10 (756) */
+/* 748 */ 0x8, /* FC_LONG */
+ 0x36, /* FC_POINTER */
+/* 750 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 752 */ NdrFcShort( 0xffe8 ), /* Offset= -24 (728) */
+/* 754 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 756 */
+ 0x11, 0x0, /* FC_RP */
+/* 758 */ NdrFcShort( 0xfefe ), /* Offset= -258 (500) */
+/* 760 */
+ 0x1b, /* FC_CARRAY */
+ 0x0, /* 0 */
+/* 762 */ NdrFcShort( 0x1 ), /* 1 */
+/* 764 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 766 */ NdrFcShort( 0x0 ), /* 0 */
+/* 768 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 770 */ 0x1, /* FC_BYTE */
+ 0x5b, /* FC_END */
+/* 772 */
+ 0x16, /* FC_PSTRUCT */
+ 0x3, /* 3 */
+/* 774 */ NdrFcShort( 0x8 ), /* 8 */
+/* 776 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 778 */
+ 0x46, /* FC_NO_REPEAT */
+ 0x5c, /* FC_PAD */
+/* 780 */ NdrFcShort( 0x4 ), /* 4 */
+/* 782 */ NdrFcShort( 0x4 ), /* 4 */
+/* 784 */ 0x12, 0x0, /* FC_UP */
+/* 786 */ NdrFcShort( 0xffe6 ), /* Offset= -26 (760) */
+/* 788 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 790 */ 0x8, /* FC_LONG */
+ 0x5b, /* FC_END */
+/* 792 */
+ 0x1b, /* FC_CARRAY */
+ 0x1, /* 1 */
+/* 794 */ NdrFcShort( 0x2 ), /* 2 */
+/* 796 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 798 */ NdrFcShort( 0x0 ), /* 0 */
+/* 800 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 802 */ 0x6, /* FC_SHORT */
+ 0x5b, /* FC_END */
+/* 804 */
+ 0x16, /* FC_PSTRUCT */
+ 0x3, /* 3 */
+/* 806 */ NdrFcShort( 0x8 ), /* 8 */
+/* 808 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 810 */
+ 0x46, /* FC_NO_REPEAT */
+ 0x5c, /* FC_PAD */
+/* 812 */ NdrFcShort( 0x4 ), /* 4 */
+/* 814 */ NdrFcShort( 0x4 ), /* 4 */
+/* 816 */ 0x12, 0x0, /* FC_UP */
+/* 818 */ NdrFcShort( 0xffe6 ), /* Offset= -26 (792) */
+/* 820 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 822 */ 0x8, /* FC_LONG */
+ 0x5b, /* FC_END */
+/* 824 */
+ 0x1b, /* FC_CARRAY */
+ 0x3, /* 3 */
+/* 826 */ NdrFcShort( 0x4 ), /* 4 */
+/* 828 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 830 */ NdrFcShort( 0x0 ), /* 0 */
+/* 832 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 834 */ 0x8, /* FC_LONG */
+ 0x5b, /* FC_END */
+/* 836 */
+ 0x16, /* FC_PSTRUCT */
+ 0x3, /* 3 */
+/* 838 */ NdrFcShort( 0x8 ), /* 8 */
+/* 840 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 842 */
+ 0x46, /* FC_NO_REPEAT */
+ 0x5c, /* FC_PAD */
+/* 844 */ NdrFcShort( 0x4 ), /* 4 */
+/* 846 */ NdrFcShort( 0x4 ), /* 4 */
+/* 848 */ 0x12, 0x0, /* FC_UP */
+/* 850 */ NdrFcShort( 0xffe6 ), /* Offset= -26 (824) */
+/* 852 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 854 */ 0x8, /* FC_LONG */
+ 0x5b, /* FC_END */
+/* 856 */
+ 0x1b, /* FC_CARRAY */
+ 0x7, /* 7 */
+/* 858 */ NdrFcShort( 0x8 ), /* 8 */
+/* 860 */ 0x19, /* Corr desc: field pointer, FC_ULONG */
+ 0x0, /* */
+/* 862 */ NdrFcShort( 0x0 ), /* 0 */
+/* 864 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 866 */ 0xb, /* FC_HYPER */
+ 0x5b, /* FC_END */
+/* 868 */
+ 0x16, /* FC_PSTRUCT */
+ 0x3, /* 3 */
+/* 870 */ NdrFcShort( 0x8 ), /* 8 */
+/* 872 */
+ 0x4b, /* FC_PP */
+ 0x5c, /* FC_PAD */
+/* 874 */
+ 0x46, /* FC_NO_REPEAT */
+ 0x5c, /* FC_PAD */
+/* 876 */ NdrFcShort( 0x4 ), /* 4 */
+/* 878 */ NdrFcShort( 0x4 ), /* 4 */
+/* 880 */ 0x12, 0x0, /* FC_UP */
+/* 882 */ NdrFcShort( 0xffe6 ), /* Offset= -26 (856) */
+/* 884 */
+ 0x5b, /* FC_END */
+
+ 0x8, /* FC_LONG */
+/* 886 */ 0x8, /* FC_LONG */
+ 0x5b, /* FC_END */
+/* 888 */
+ 0x15, /* FC_STRUCT */
+ 0x3, /* 3 */
+/* 890 */ NdrFcShort( 0x8 ), /* 8 */
+/* 892 */ 0x8, /* FC_LONG */
+ 0x8, /* FC_LONG */
+/* 894 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 896 */
+ 0x1b, /* FC_CARRAY */
+ 0x3, /* 3 */
+/* 898 */ NdrFcShort( 0x8 ), /* 8 */
+/* 900 */ 0x7, /* Corr desc: FC_USHORT */
+ 0x0, /* */
+/* 902 */ NdrFcShort( 0xffd8 ), /* -40 */
+/* 904 */ NdrFcShort( 0x1 ), /* Corr flags: early, */
+/* 906 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 908 */ NdrFcShort( 0xffec ), /* Offset= -20 (888) */
+/* 910 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 912 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x3, /* 3 */
+/* 914 */ NdrFcShort( 0x28 ), /* 40 */
+/* 916 */ NdrFcShort( 0xffec ), /* Offset= -20 (896) */
+/* 918 */ NdrFcShort( 0x0 ), /* Offset= 0 (918) */
+/* 920 */ 0x6, /* FC_SHORT */
+ 0x6, /* FC_SHORT */
+/* 922 */ 0x8, /* FC_LONG */
+ 0x8, /* FC_LONG */
+/* 924 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 926 */ NdrFcShort( 0xfdde ), /* Offset= -546 (380) */
+/* 928 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 930 */
+ 0x12, 0x0, /* FC_UP */
+/* 932 */ NdrFcShort( 0xfeea ), /* Offset= -278 (654) */
+/* 934 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 936 */ 0x1, /* FC_BYTE */
+ 0x5c, /* FC_PAD */
+/* 938 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 940 */ 0x6, /* FC_SHORT */
+ 0x5c, /* FC_PAD */
+/* 942 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 944 */ 0x8, /* FC_LONG */
+ 0x5c, /* FC_PAD */
+/* 946 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 948 */ 0xb, /* FC_HYPER */
+ 0x5c, /* FC_PAD */
+/* 950 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 952 */ 0xa, /* FC_FLOAT */
+ 0x5c, /* FC_PAD */
+/* 954 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 956 */ 0xc, /* FC_DOUBLE */
+ 0x5c, /* FC_PAD */
+/* 958 */
+ 0x12, 0x0, /* FC_UP */
+/* 960 */ NdrFcShort( 0xfd70 ), /* Offset= -656 (304) */
+/* 962 */
+ 0x12, 0x10, /* FC_UP [pointer_deref] */
+/* 964 */ NdrFcShort( 0xfd72 ), /* Offset= -654 (310) */
+/* 966 */
+ 0x12, 0x10, /* FC_UP [pointer_deref] */
+/* 968 */ NdrFcShort( 0xfd88 ), /* Offset= -632 (336) */
+/* 970 */
+ 0x12, 0x10, /* FC_UP [pointer_deref] */
+/* 972 */ NdrFcShort( 0xfd96 ), /* Offset= -618 (354) */
+/* 974 */
+ 0x12, 0x10, /* FC_UP [pointer_deref] */
+/* 976 */ NdrFcShort( 0xfda4 ), /* Offset= -604 (372) */
+/* 978 */
+ 0x12, 0x10, /* FC_UP [pointer_deref] */
+/* 980 */ NdrFcShort( 0x2 ), /* Offset= 2 (982) */
+/* 982 */
+ 0x12, 0x0, /* FC_UP */
+/* 984 */ NdrFcShort( 0x14 ), /* Offset= 20 (1004) */
+/* 986 */
+ 0x15, /* FC_STRUCT */
+ 0x7, /* 7 */
+/* 988 */ NdrFcShort( 0x10 ), /* 16 */
+/* 990 */ 0x6, /* FC_SHORT */
+ 0x1, /* FC_BYTE */
+/* 992 */ 0x1, /* FC_BYTE */
+ 0x8, /* FC_LONG */
+/* 994 */ 0xb, /* FC_HYPER */
+ 0x5b, /* FC_END */
+/* 996 */
+ 0x12, 0x0, /* FC_UP */
+/* 998 */ NdrFcShort( 0xfff4 ), /* Offset= -12 (986) */
+/* 1000 */
+ 0x12, 0x8, /* FC_UP [simple_pointer] */
+/* 1002 */ 0x2, /* FC_CHAR */
+ 0x5c, /* FC_PAD */
+/* 1004 */
+ 0x1a, /* FC_BOGUS_STRUCT */
+ 0x7, /* 7 */
+/* 1006 */ NdrFcShort( 0x20 ), /* 32 */
+/* 1008 */ NdrFcShort( 0x0 ), /* 0 */
+/* 1010 */ NdrFcShort( 0x0 ), /* Offset= 0 (1010) */
+/* 1012 */ 0x8, /* FC_LONG */
+ 0x8, /* FC_LONG */
+/* 1014 */ 0x6, /* FC_SHORT */
+ 0x6, /* FC_SHORT */
+/* 1016 */ 0x6, /* FC_SHORT */
+ 0x6, /* FC_SHORT */
+/* 1018 */ 0x4c, /* FC_EMBEDDED_COMPLEX */
+ 0x0, /* 0 */
+/* 1020 */ NdrFcShort( 0xfc0a ), /* Offset= -1014 (6) */
+/* 1022 */ 0x5c, /* FC_PAD */
+ 0x5b, /* FC_END */
+/* 1024 */ 0xb4, /* FC_USER_MARSHAL */
+ 0x83, /* 131 */
+/* 1026 */ NdrFcShort( 0x0 ), /* 0 */
+/* 1028 */ NdrFcShort( 0x10 ), /* 16 */
+/* 1030 */ NdrFcShort( 0x0 ), /* 0 */
+/* 1032 */ NdrFcShort( 0xfbfa ), /* Offset= -1030 (2) */
+/* 1034 */
+ 0x11, 0x4, /* FC_RP [alloced_on_stack] */
+/* 1036 */ NdrFcShort( 0x6 ), /* Offset= 6 (1042) */
+/* 1038 */
+ 0x13, 0x0, /* FC_OP */
+/* 1040 */ NdrFcShort( 0xffdc ), /* Offset= -36 (1004) */
+/* 1042 */ 0xb4, /* FC_USER_MARSHAL */
+ 0x83, /* 131 */
+/* 1044 */ NdrFcShort( 0x0 ), /* 0 */
+/* 1046 */ NdrFcShort( 0x10 ), /* 16 */
+/* 1048 */ NdrFcShort( 0x0 ), /* 0 */
+/* 1050 */ NdrFcShort( 0xfff4 ), /* Offset= -12 (1038) */
+
+ 0x0
+ }
+ };
+
+static const USER_MARSHAL_ROUTINE_QUADRUPLE UserMarshalRoutines[ WIRE_MARSHAL_TABLE_SIZE ] =
+ {
+
+ {
+ VARIANT_UserSize
+ ,VARIANT_UserMarshal
+ ,VARIANT_UserUnmarshal
+ ,VARIANT_UserFree
+ }
+
+ };
+
+
+
+/* Object interface: IUnknown, ver. 0.0,
+ GUID={0x00000000,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
+
+
+/* Object interface: IDispatch, ver. 0.0,
+ GUID={0x00020400,0x0000,0x0000,{0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46}} */
+
+
+/* Object interface: IFoo, ver. 0.0,
+ GUID={0x3D8A7768,0x9890,0x4021,{0xB1,0xAC,0x5C,0xB9,0x13,0xD3,0x21,0x46}} */
+
+#pragma code_seg(".orpc")
+static const unsigned short IFoo_FormatStringOffsetTable[] =
+ {
+ (unsigned short) -1,
+ (unsigned short) -1,
+ (unsigned short) -1,
+ (unsigned short) -1,
+ 0
+ };
+
+static const MIDL_STUBLESS_PROXY_INFO IFoo_ProxyInfo =
+ {
+ &Object_StubDesc,
+ Server__MIDL_ProcFormatString.Format,
+ &IFoo_FormatStringOffsetTable[-3],
+ 0,
+ 0,
+ 0
+ };
+
+
+static const MIDL_SERVER_INFO IFoo_ServerInfo =
+ {
+ &Object_StubDesc,
+ 0,
+ Server__MIDL_ProcFormatString.Format,
+ &IFoo_FormatStringOffsetTable[-3],
+ 0,
+ 0,
+ 0,
+ 0};
+CINTERFACE_PROXY_VTABLE(8) _IFooProxyVtbl =
+{
+ &IFoo_ProxyInfo,
+ &IID_IFoo,
+ IUnknown_QueryInterface_Proxy,
+ IUnknown_AddRef_Proxy,
+ IUnknown_Release_Proxy ,
+ 0 /* IDispatch::GetTypeInfoCount */ ,
+ 0 /* IDispatch::GetTypeInfo */ ,
+ 0 /* IDispatch::GetIDsOfNames */ ,
+ 0 /* IDispatch_Invoke_Proxy */ ,
+ (void *) (INT_PTR) -1 /* IFoo::Bar */
+};
+
+
+static const PRPC_STUB_FUNCTION IFoo_table[] =
+{
+ STUB_FORWARDING_FUNCTION,
+ STUB_FORWARDING_FUNCTION,
+ STUB_FORWARDING_FUNCTION,
+ STUB_FORWARDING_FUNCTION,
+ NdrStubCall2
+};
+
+CInterfaceStubVtbl _IFooStubVtbl =
+{
+ &IID_IFoo,
+ &IFoo_ServerInfo,
+ 8,
+ &IFoo_table[-3],
+ CStdStubBuffer_DELEGATING_METHODS
+};
+
+static const MIDL_STUB_DESC Object_StubDesc =
+ {
+ 0,
+ NdrOleAllocate,
+ NdrOleFree,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ Server__MIDL_TypeFormatString.Format,
+ 1, /* -error bounds_check flag */
+ 0x50002, /* Ndr library version */
+ 0,
+ 0x700022b, /* MIDL Version 7.0.555 */
+ 0,
+ UserMarshalRoutines,
+ 0, /* notify & notify_flag routine table */
+ 0x1, /* MIDL flag */
+ 0, /* cs routines */
+ 0, /* proxy/server info */
+ 0
+ };
+
+const CInterfaceProxyVtbl * const _Server_ProxyVtblList[] =
+{
+ ( CInterfaceProxyVtbl *) &_IFooProxyVtbl,
+ 0
+};
+
+const CInterfaceStubVtbl * const _Server_StubVtblList[] =
+{
+ ( CInterfaceStubVtbl *) &_IFooStubVtbl,
+ 0
+};
+
+PCInterfaceName const _Server_InterfaceNamesList[] =
+{
+ "IFoo",
+ 0
+};
+
+const IID * const _Server_BaseIIDList[] =
+{
+ &IID_IDispatch,
+ 0
+};
+
+
+#define _Server_CHECK_IID(n) IID_GENERIC_CHECK_IID( _Server, pIID, n)
+
+int __stdcall _Server_IID_Lookup( const IID * pIID, int * pIndex )
+{
+
+ if(!_Server_CHECK_IID(0))
+ {
+ *pIndex = 0;
+ return 1;
+ }
+
+ return 0;
+}
+
+const ExtendedProxyFileInfo Server_ProxyFileInfo =
+{
+ (PCInterfaceProxyVtblList *) & _Server_ProxyVtblList,
+ (PCInterfaceStubVtblList *) & _Server_StubVtblList,
+ (const PCInterfaceName * ) & _Server_InterfaceNamesList,
+ (const IID ** ) & _Server_BaseIIDList,
+ & _Server_IID_Lookup,
+ 1,
+ 2,
+ 0, /* table of [async_uuid] interfaces */
+ 0, /* Filler1 */
+ 0, /* Filler2 */
+ 0 /* Filler3 */
+};
+#pragma optimize("", on )
+#if _MSC_VER >= 1200
+#pragma warning(pop)
+#endif
+
+
+#endif /* !defined(_M_IA64) && !defined(_M_AMD64)*/
+
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Serverps.def
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Serverps.def (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/Serverps.def (revision 96)
@@ -0,0 +1,8 @@
+
+LIBRARY
+
+EXPORTS
+ DllGetClassObject PRIVATE
+ DllCanUnloadNow PRIVATE
+ DllRegisterServer PRIVATE
+ DllUnregisterServer PRIVATE
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dlldata.c
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dlldata.c (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dlldata.c (revision 96)
@@ -0,0 +1,38 @@
+/*********************************************************
+ DllData file -- generated by MIDL compiler
+
+ DO NOT ALTER THIS FILE
+
+ This file is regenerated by MIDL on every IDL file compile.
+
+ To completely reconstruct this file, delete it and rerun MIDL
+ on all the IDL files in this DLL, specifying this file for the
+ /dlldata command line option
+
+*********************************************************/
+
+#define PROXY_DELEGATION
+
+#include
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+EXTERN_PROXY_FILE( Server )
+
+
+PROXYFILE_LIST_START
+/* Start of list */
+ REFERENCE_PROXY_FILE( Server ),
+/* End of list */
+PROXYFILE_LIST_END
+
+
+DLLDATA_ROUTINES( aProxyFileList, GET_DLL_CLSID )
+
+#ifdef __cplusplus
+} /*extern "C" */
+#endif
+
+/* end of generated dlldata file */
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dllmain.cpp
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dllmain.cpp (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dllmain.cpp (revision 96)
@@ -0,0 +1,19 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#include "stdafx.h"
+#include "resource.h"
+#include "Server_i.h"
+#include "dllmain.h"
+
+CServerModule _AtlModule;
+
+// DLL Entry Point
+extern "C" BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
+{
+ hInstance;
+ return _AtlModule.DllMain(dwReason, lpReserved);
+}
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dllmain.h
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dllmain.h (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/dllmain.h (revision 96)
@@ -0,0 +1,14 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+class CServerModule : public ATL::CAtlDllModuleT< CServerModule >
+{
+public :
+ DECLARE_LIBID(LIBID_ServerLib)
+ DECLARE_REGISTRY_APPID_RESOURCEID(IDR_SERVER, "{23787BCF-B7F6-4E51-AC06-19C7479A4FB8}")
+};
+
+extern class CServerModule _AtlModule;
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/stdafx.cpp
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/stdafx.cpp (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/stdafx.cpp (revision 96)
@@ -0,0 +1,7 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#include "stdafx.h"
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/stdafx.h
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/stdafx.h (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/stdafx.h (revision 96)
@@ -0,0 +1,27 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#pragma once
+
+#ifndef STRICT
+#define STRICT
+#endif
+
+#include "targetver.h"
+
+#define _ATL_APARTMENT_THREADED
+
+#define _ATL_NO_AUTOMATIC_NAMESPACE
+
+#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // some CString constructors will be explicit
+
+
+#define ATL_NO_ASSERT_ON_DESTROY_NONEXISTENT_WINDOW
+
+#include "resource.h"
+#include
+#include
+#include
Index: /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/targetver.h
===================================================================
--- /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/targetver.h (revision 96)
+++ /trunk/Utilities/Miscellaneous/ByteArrayVariant/Server/targetver.h (revision 96)
@@ -0,0 +1,14 @@
+////////////////////////////////////////////////////////////
+// Copyright (C) Roman Ryltsov, 2012
+// Created by Roman Ryltsov roman@alax.info
+//
+// $Id$
+
+#pragma once
+
+// Including SDKDDKVer.h defines the highest available Windows platform.
+
+// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and
+// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h.
+
+#include