Merged SL5 installer branch
|
@ -56,3 +56,6 @@ glob:ProjectForTemplates/_ReSharper.ProjectForTemplates/
|
|||
glob:Snippets/_ReSharper.Snippets/
|
||||
glob:CleanOldFiles/_ReSharper.CleanOldFiles
|
||||
glob:*.sln.docstates
|
||||
glob:*.ldf
|
||||
glob:*.mdf
|
||||
glob:Installer/Win8Installer/_ReSharper.Installer/
|
||||
|
|
237
GalaSoft.MvvmLight/External/WIN8/Microsoft.Practices.ServiceLocation.XML
поставляемый
Normal file
|
@ -0,0 +1,237 @@
|
|||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>Microsoft.Practices.ServiceLocation</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:Microsoft.Practices.ServiceLocation.ActivationException">
|
||||
<summary>
|
||||
The standard exception thrown when a ServiceLocator has an error in resolving an object.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:System.Exception" /> class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.String)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with a specified error message.
|
||||
</summary>
|
||||
<param name="message">
|
||||
The message that describes the error.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.String,System.Exception)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with a specified error message and a reference to the inner exception that is the cause of this exception.
|
||||
</summary>
|
||||
<param name="message">
|
||||
The error message that explains the reason for the exception.
|
||||
</param>
|
||||
<param name="innerException">
|
||||
The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified.
|
||||
</param>
|
||||
</member>
|
||||
<member name="T:Microsoft.Practices.ServiceLocation.IServiceLocator">
|
||||
<summary>
|
||||
The generic Service Locator interface. This interface is used
|
||||
to retrieve services (instances identified by type and optional
|
||||
name) from a container.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance(System.Type)">
|
||||
<summary>
|
||||
Get an instance of the given <paramref name="serviceType"/>.
|
||||
</summary>
|
||||
<param name="serviceType">Type of object requested.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance(System.Type,System.String)">
|
||||
<summary>
|
||||
Get an instance of the given named <paramref name="serviceType"/>.
|
||||
</summary>
|
||||
<param name="serviceType">Type of object requested.</param>
|
||||
<param name="key">Name the object was registered with.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetAllInstances(System.Type)">
|
||||
<summary>
|
||||
Get all instances of the given <paramref name="serviceType"/> currently
|
||||
registered in the container.
|
||||
</summary>
|
||||
<param name="serviceType">Type of object requested.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>A sequence of instances of the requested <paramref name="serviceType"/>.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance``1">
|
||||
<summary>
|
||||
Get an instance of the given <typeparamref name="TService"/>.
|
||||
</summary>
|
||||
<typeparam name="TService">Type of object requested.</typeparam>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance``1(System.String)">
|
||||
<summary>
|
||||
Get an instance of the given named <typeparamref name="TService"/>.
|
||||
</summary>
|
||||
<typeparam name="TService">Type of object requested.</typeparam>
|
||||
<param name="key">Name the object was registered with.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetAllInstances``1">
|
||||
<summary>
|
||||
Get all instances of the given <typeparamref name="TService"/> currently
|
||||
registered in the container.
|
||||
</summary>
|
||||
<typeparam name="TService">Type of object requested.</typeparam>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>A sequence of instances of the requested <typeparamref name="TService"/>.</returns>
|
||||
</member>
|
||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocator">
|
||||
<summary>
|
||||
This class provides the ambient container for this application. If your
|
||||
framework defines such an ambient container, use ServiceLocator.Current
|
||||
to get it.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocator.SetLocatorProvider(Microsoft.Practices.ServiceLocation.ServiceLocatorProvider)">
|
||||
<summary>
|
||||
Set the delegate that is used to retrieve the current container.
|
||||
</summary>
|
||||
<param name="newProvider">Delegate that, when called, will return
|
||||
the current ambient container.</param>
|
||||
</member>
|
||||
<member name="P:Microsoft.Practices.ServiceLocation.ServiceLocator.Current">
|
||||
<summary>
|
||||
The current ambient container.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase">
|
||||
<summary>
|
||||
This class is a helper that provides a default implementation
|
||||
for most of the methods of <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/>.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetService(System.Type)">
|
||||
<summary>
|
||||
Get an instance of the given <paramref name="serviceType"/>.
|
||||
</summary>
|
||||
<param name="serviceType">The requested service.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error in resolving the service instance.</exception>
|
||||
<returns>The requested object.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(System.Type)">
|
||||
<summary>
|
||||
Get an instance of the given <paramref name="serviceType"/>.
|
||||
</summary>
|
||||
<param name="serviceType">Type of object requested.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(System.Type,System.String)">
|
||||
<summary>
|
||||
Get an instance of the given named <paramref name="serviceType"/>.
|
||||
</summary>
|
||||
<param name="serviceType">Type of object requested.</param>
|
||||
<param name="key">Name the object was registered with.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetAllInstances(System.Type)">
|
||||
<summary>
|
||||
Get all instances of the given <paramref name="serviceType"/> currently
|
||||
registered in the container.
|
||||
</summary>
|
||||
<param name="serviceType">Type of object requested.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>A sequence of instances of the requested <paramref name="serviceType"/>.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance``1">
|
||||
<summary>
|
||||
Get an instance of the given <typeparamref name="TService"/>.
|
||||
</summary>
|
||||
<typeparam name="TService">Type of object requested.</typeparam>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance``1(System.String)">
|
||||
<summary>
|
||||
Get an instance of the given named <typeparamref name="TService"/>.
|
||||
</summary>
|
||||
<typeparam name="TService">Type of object requested.</typeparam>
|
||||
<param name="key">Name the object was registered with.</param>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetAllInstances``1">
|
||||
<summary>
|
||||
Get all instances of the given <typeparamref name="TService"/> currently
|
||||
registered in the container.
|
||||
</summary>
|
||||
<typeparam name="TService">Type of object requested.</typeparam>
|
||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
||||
the service instance.</exception>
|
||||
<returns>A sequence of instances of the requested <typeparamref name="TService"/>.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.DoGetInstance(System.Type,System.String)">
|
||||
<summary>
|
||||
When implemented by inheriting classes, this method will do the actual work of resolving
|
||||
the requested service instance.
|
||||
</summary>
|
||||
<param name="serviceType">Type of instance requested.</param>
|
||||
<param name="key">Name of registered service you want. May be null.</param>
|
||||
<returns>The requested service instance.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.DoGetAllInstances(System.Type)">
|
||||
<summary>
|
||||
When implemented by inheriting classes, this method will do the actual work of
|
||||
resolving all the requested service instances.
|
||||
</summary>
|
||||
<param name="serviceType">Type of service requested.</param>
|
||||
<returns>Sequence of service instance objects.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.FormatActivationExceptionMessage(System.Exception,System.Type,System.String)">
|
||||
<summary>
|
||||
Format the exception message for use in an <see cref="T:Microsoft.Practices.ServiceLocation.ActivationException"/>
|
||||
that occurs while resolving a single service.
|
||||
</summary>
|
||||
<param name="actualException">The actual exception thrown by the implementation.</param>
|
||||
<param name="serviceType">Type of service requested.</param>
|
||||
<param name="key">Name requested.</param>
|
||||
<returns>The formatted exception message string.</returns>
|
||||
</member>
|
||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.FormatActivateAllExceptionMessage(System.Exception,System.Type)">
|
||||
<summary>
|
||||
Format the exception message for use in an <see cref="T:Microsoft.Practices.ServiceLocation.ActivationException"/>
|
||||
that occurs while resolving multiple service instances.
|
||||
</summary>
|
||||
<param name="actualException">The actual exception thrown by the implementation.</param>
|
||||
<param name="serviceType">Type of service requested.</param>
|
||||
<returns>The formatted exception message string.</returns>
|
||||
</member>
|
||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocatorProvider">
|
||||
<summary>
|
||||
This delegate type is used to provide a method that will
|
||||
return the current container. Used with the <see cref="T:Microsoft.Practices.ServiceLocation.ServiceLocator"/>
|
||||
static accessor class.
|
||||
</summary>
|
||||
<returns>An <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/>.</returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
Двоичные данные
GalaSoft.MvvmLight/External/WIN8/Microsoft.Practices.ServiceLocation.dll
поставляемый
Normal file
|
@ -19,7 +19,13 @@
|
|||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
#if WIN8
|
||||
using Windows.UI.Xaml.Input;
|
||||
using EventHandler = Windows.UI.Xaml.EventHandler;
|
||||
#else
|
||||
using System.Windows.Input;
|
||||
#endif
|
||||
|
||||
////using GalaSoft.Utilities.Attributes;
|
||||
|
||||
|
|
|
@ -18,7 +18,13 @@
|
|||
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
#if WIN8
|
||||
using Windows.UI.Xaml.Input;
|
||||
using EventHandler = Windows.UI.Xaml.EventHandler;
|
||||
#else
|
||||
using System.Windows.Input;
|
||||
#endif
|
||||
|
||||
////using GalaSoft.Utilities.Attributes;
|
||||
|
||||
|
|
|
@ -13,8 +13,11 @@
|
|||
// </license>
|
||||
// ****************************************************************************
|
||||
|
||||
// TODO Win8
|
||||
|
||||
#if !WIN8
|
||||
|
||||
using System;
|
||||
using System.Windows;
|
||||
|
||||
////using GalaSoft.Utilities.Attributes;
|
||||
|
||||
|
@ -151,4 +154,6 @@ namespace GalaSoft.MvvmLight.Messaging
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
|
@ -18,6 +18,7 @@ using System;
|
|||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using GalaSoft.MvvmLight.Helpers;
|
||||
|
||||
////using GalaSoft.Utilities.Attributes;
|
||||
|
@ -427,7 +428,12 @@ namespace GalaSoft.MvvmLight.Messaging
|
|||
return false;
|
||||
}
|
||||
|
||||
#if WIN8
|
||||
IEnumerable<Type> interfaces = instanceType.GetTypeInfo().ImplementedInterfaces;
|
||||
#else
|
||||
Type[] interfaces = instanceType.GetInterfaces();
|
||||
#endif
|
||||
|
||||
foreach (Type currentInterface in interfaces)
|
||||
{
|
||||
if (currentInterface == interfaceType)
|
||||
|
@ -553,6 +559,17 @@ namespace GalaSoft.MvvmLight.Messaging
|
|||
{
|
||||
List<WeakActionAndToken> list = null;
|
||||
|
||||
#if WIN8
|
||||
if (messageType == type
|
||||
|| type.GetTypeInfo().IsAssignableFrom(messageType.GetTypeInfo())
|
||||
|| Implements(messageType, type))
|
||||
{
|
||||
lock (_recipientsOfSubclassesAction)
|
||||
{
|
||||
list = _recipientsOfSubclassesAction[type].Take(_recipientsOfSubclassesAction[type].Count()).ToList();
|
||||
}
|
||||
}
|
||||
#else
|
||||
if (messageType == type
|
||||
|| messageType.IsSubclassOf(type)
|
||||
|| Implements(messageType, type))
|
||||
|
@ -562,6 +579,7 @@ namespace GalaSoft.MvvmLight.Messaging
|
|||
list = _recipientsOfSubclassesAction[type].Take(_recipientsOfSubclassesAction[type].Count()).ToList();
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
SendToList(message, list, messageTargetType, token);
|
||||
}
|
||||
|
|
|
@ -15,12 +15,17 @@
|
|||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Diagnostics;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Linq.Expressions;
|
||||
using System.Reflection;
|
||||
|
||||
#if WIN8
|
||||
using Windows.UI.Xaml.Data;
|
||||
#else
|
||||
using System.ComponentModel;
|
||||
#endif
|
||||
|
||||
namespace GalaSoft.MvvmLight
|
||||
{
|
||||
/// <summary>
|
||||
|
@ -58,11 +63,20 @@ namespace GalaSoft.MvvmLight
|
|||
public void VerifyPropertyName(string propertyName)
|
||||
{
|
||||
var myType = this.GetType();
|
||||
|
||||
#if WIN8
|
||||
if (!string.IsNullOrEmpty(propertyName)
|
||||
&& myType.GetTypeInfo().GetDeclaredProperty(propertyName) == null)
|
||||
{
|
||||
throw new ArgumentException("Property not found", propertyName);
|
||||
}
|
||||
#else
|
||||
if (!string.IsNullOrEmpty(propertyName)
|
||||
&& myType.GetProperty(propertyName) == null)
|
||||
{
|
||||
throw new ArgumentException("Property not found", propertyName);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -77,14 +91,26 @@ namespace GalaSoft.MvvmLight
|
|||
Justification = "This cannot be an event")]
|
||||
protected virtual void RaisePropertyChanged(string propertyName)
|
||||
{
|
||||
VerifyPropertyName(propertyName);
|
||||
|
||||
var handler = PropertyChanged;
|
||||
|
||||
if (handler != null)
|
||||
#if WIN8
|
||||
if (string.IsNullOrEmpty(propertyName))
|
||||
{
|
||||
handler(this, new PropertyChangedEventArgs(propertyName));
|
||||
throw new NotSupportedException(
|
||||
"Raising the PropertyChanged event with an empty string or null is not supported in the Windows 8 developer preview");
|
||||
}
|
||||
else
|
||||
{
|
||||
#endif
|
||||
VerifyPropertyName(propertyName);
|
||||
|
||||
var handler = PropertyChanged;
|
||||
|
||||
if (handler != null)
|
||||
{
|
||||
handler(this, new PropertyChangedEventArgs(propertyName));
|
||||
}
|
||||
#if WIN8
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -15,9 +15,9 @@
|
|||
// ****************************************************************************
|
||||
|
||||
using System;
|
||||
using System.Windows.Threading;
|
||||
|
||||
#if SILVERLIGHT
|
||||
#if !WIN8
|
||||
using System.Windows.Threading;
|
||||
using System.Windows;
|
||||
#endif
|
||||
|
||||
|
|
|
@ -20,10 +20,15 @@ using System.ComponentModel;
|
|||
using System.Diagnostics;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Reflection;
|
||||
using System.Windows;
|
||||
using GalaSoft.MvvmLight.Messaging;
|
||||
using System.Linq.Expressions;
|
||||
|
||||
#if WIN8
|
||||
using PropertyChangedEventArgs = Windows.UI.Xaml.Data.PropertyChangedEventArgs;
|
||||
#else
|
||||
using System.Windows;
|
||||
#endif
|
||||
|
||||
////using GalaSoft.Utilities.Attributes;
|
||||
|
||||
namespace GalaSoft.MvvmLight
|
||||
|
@ -98,6 +103,9 @@ namespace GalaSoft.MvvmLight
|
|||
{
|
||||
#if SILVERLIGHT
|
||||
_isInDesignMode = DesignerProperties.IsInDesignTool;
|
||||
#else
|
||||
#if WIN8
|
||||
_isInDesignMode = Windows.ApplicationModel.DesignMode.DesignModeEnabled;
|
||||
#else
|
||||
var prop = DesignerProperties.IsInDesignModeProperty;
|
||||
_isInDesignMode
|
||||
|
@ -111,6 +119,7 @@ namespace GalaSoft.MvvmLight
|
|||
{
|
||||
_isInDesignMode = true;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -303,4 +312,4 @@ namespace GalaSoft.MvvmLight
|
|||
RaisePropertyChanged(propertyName, oldValue, field, broadcast);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -170,7 +170,11 @@ namespace GalaSoft.MvvmLight.Ioc
|
|||
{
|
||||
var classType = typeof (TClass);
|
||||
|
||||
#if WIN8
|
||||
if (classType.GetTypeInfo().IsInterface)
|
||||
#else
|
||||
if (classType.IsInterface)
|
||||
#endif
|
||||
{
|
||||
throw new ArgumentException("An interface cannot be registered alone");
|
||||
}
|
||||
|
@ -448,7 +452,12 @@ namespace GalaSoft.MvvmLight.Ioc
|
|||
private ConstructorInfo GetConstructorInfo(Type serviceType)
|
||||
{
|
||||
var resolveTo = _interfaceToClassMap[serviceType] ?? serviceType;
|
||||
|
||||
#if WIN8
|
||||
var constructorInfos = resolveTo.GetTypeInfo().DeclaredConstructors.ToArray();
|
||||
#else
|
||||
var constructorInfos = resolveTo.GetConstructors();
|
||||
#endif
|
||||
|
||||
if (constructorInfos.Length > 1)
|
||||
{
|
||||
|
@ -456,8 +465,13 @@ namespace GalaSoft.MvvmLight.Ioc
|
|||
|
||||
for (var index = 0; index < constructorInfos.Length; index++)
|
||||
{
|
||||
#if WIN8
|
||||
var attribute = constructorInfos[index].GetCustomAttribute(
|
||||
typeof (PreferredConstructorAttribute));
|
||||
#else
|
||||
var attribute = Attribute.GetCustomAttribute(
|
||||
constructorInfos[index], typeof (PreferredConstructorAttribute));
|
||||
#endif
|
||||
|
||||
if (attribute != null)
|
||||
{
|
||||
|
|
|
@ -2,6 +2,10 @@
|
|||
using GalaSoft.MvvmLight.Command;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
#if WIN8
|
||||
using EventHandler = Windows.UI.Xaml.EventHandler;
|
||||
#endif
|
||||
|
||||
namespace GalaSoft.MvvmLight.Test.Command
|
||||
{
|
||||
[TestClass]
|
||||
|
|
|
@ -2,6 +2,10 @@
|
|||
using GalaSoft.MvvmLight.Command;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
|
||||
#if WIN8
|
||||
using EventHandler = Windows.UI.Xaml.EventHandler;
|
||||
#endif
|
||||
|
||||
namespace GalaSoft.MvvmLight.Test.Command
|
||||
{
|
||||
[TestClass]
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
using System;
|
||||
|
||||
namespace GalaSoft.MvvmLight.Test.Stubs
|
||||
namespace GalaSoft.MvvmLight.Test.ViewModel
|
||||
{
|
||||
public class TestClassWithObservableObject : ObservableObject
|
||||
{
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using GalaSoft.MvvmLight.Messaging;
|
||||
using GalaSoft.MvvmLight.Test.ViewModel;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using GalaSoft.MvvmLight.Helpers;
|
||||
|
||||
#if WIN8
|
||||
using Windows.UI.Xaml.Controls;
|
||||
using Windows.UI.Xaml.Data;
|
||||
using Windows.UI.Xaml;
|
||||
#else
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
#endif
|
||||
|
||||
namespace GalaSoft.MvvmLight.Test
|
||||
{
|
||||
|
@ -242,6 +247,9 @@ namespace GalaSoft.MvvmLight.Test
|
|||
}
|
||||
|
||||
[TestMethod]
|
||||
#if WIN8
|
||||
[ExpectedException(typeof(NotSupportedException))]
|
||||
#endif
|
||||
public void TestRaiseWithEmptyString()
|
||||
{
|
||||
var vm = new TestViewModel();
|
||||
|
@ -252,13 +260,15 @@ namespace GalaSoft.MvvmLight.Test
|
|||
var textBox1 = new TextBox();
|
||||
var textBox2 = new TextBox();
|
||||
|
||||
var binding1 = new Binding("TestProperty1")
|
||||
var binding1 = new Binding()
|
||||
{
|
||||
Path = new PropertyPath("TestProperty1"),
|
||||
Source = vm,
|
||||
};
|
||||
|
||||
var binding2 = new Binding("TestProperty2")
|
||||
var binding2 = new Binding()
|
||||
{
|
||||
Path = new PropertyPath("TestProperty2"),
|
||||
Source = vm,
|
||||
};
|
||||
|
||||
|
|
|
@ -0,0 +1,63 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{AD53D597-6C9F-434D-A21A-BB10626A2784}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>GalaSoft.MvvmLight.Extras</RootNamespace>
|
||||
<AssemblyName>GalaSoft.MvvmLight.Extras.Win8</AssemblyName>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;WIN8</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>bin\Debug\GalaSoft.MvvmLight.Extras.Win8.xml</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;WIN8</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>bin\Release\GalaSoft.MvvmLight.Extras.Win8.XML</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Extras %28NET35%29\Ioc\ISimpleIoc.cs">
|
||||
<Link>Ioc\ISimpleIoc.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Extras %28NET35%29\Ioc\PreferredConstructor.cs">
|
||||
<Link>Ioc\PreferredConstructor.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Extras %28NET35%29\Ioc\SimpleIoc.cs">
|
||||
<Link>Ioc\SimpleIoc.cs</Link>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Practices.ServiceLocation">
|
||||
<HintPath>..\..\External\WIN8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Properties\" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v1.0\Microsoft.Windows.UI.Xaml.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -0,0 +1,199 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>GalaSoft.MvvmLight.Test</RootNamespace>
|
||||
<AssemblyName>GalaSoft.MvvmLight.Test.Win8</AssemblyName>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;WIN8</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;WIN8</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>
|
||||
</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AppXPackage>True</AppXPackage>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!--A reference to the entire .Net Framework and Windows SDK are automatically included-->
|
||||
<SDKReference Include="MSTestFramework, Version=11.0" />
|
||||
<SDKReference Include="TestPlatform, Version=11.0" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Command\RelayCommandGenericTest.cs">
|
||||
<Link>Command\RelayCommandGenericTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Command\RelayCommandTest.cs">
|
||||
<Link>Command\RelayCommandTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestContains.cs">
|
||||
<Link>Ioc\SimpleIocTestContains.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestCreationTime.cs">
|
||||
<Link>Ioc\SimpleIocTestCreationTime.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestIsRegistered.cs">
|
||||
<Link>Ioc\SimpleIocTestIsRegistered.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestMultipleConstructors.cs">
|
||||
<Link>Ioc\SimpleIocTestMultipleConstructors.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestMultipleInstances.cs">
|
||||
<Link>Ioc\SimpleIocTestMultipleInstances.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestSingleInstance.cs">
|
||||
<Link>Ioc\SimpleIocTestSingleInstance.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Ioc\SimpleIocTestUnregistration.cs">
|
||||
<Link>Ioc\SimpleIocTestUnregistration.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerBroadcastToAllTest.cs">
|
||||
<Link>Messaging\MessengerBroadcastToAllTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerCreationDeletionTest.cs">
|
||||
<Link>Messaging\MessengerCreationDeletionTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerMultipleInstancesTest.cs">
|
||||
<Link>Messaging\MessengerMultipleInstancesTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerOverrideDefaultTest.cs">
|
||||
<Link>Messaging\MessengerOverrideDefaultTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerRegisterUnregisterTest.cs">
|
||||
<Link>Messaging\MessengerRegisterUnregisterTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerRegisterWhileSendingTest.cs">
|
||||
<Link>Messaging\MessengerRegisterWhileSendingTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerSendToAllTest.cs">
|
||||
<Link>Messaging\MessengerSendToAllTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerSendToTypeTest.cs">
|
||||
<Link>Messaging\MessengerSendToTypeTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\MessengerSendWithTokenTest.cs">
|
||||
<Link>Messaging\MessengerSendWithTokenTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\NotificationMessageActionTest.cs">
|
||||
<Link>Messaging\NotificationMessageActionTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\NotificationMessageTest.cs">
|
||||
<Link>Messaging\NotificationMessageTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Messaging\PropertyChangedMessageTest.cs">
|
||||
<Link>Messaging\PropertyChangedMessageTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\ObservableObjectTest.cs">
|
||||
<Link>ObservableObjectTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\ITestClass.cs">
|
||||
<Link>Stubs\ITestClass.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClass.cs">
|
||||
<Link>Stubs\TestClass.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClass2.cs">
|
||||
<Link>Stubs\TestClass2.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClass3.cs">
|
||||
<Link>Stubs\TestClass3.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClass4.cs">
|
||||
<Link>Stubs\TestClass4.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClass5.cs">
|
||||
<Link>Stubs\TestClass5.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClass6.cs">
|
||||
<Link>Stubs\TestClass6.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClassForCreationTime.cs">
|
||||
<Link>Stubs\TestClassForCreationTime.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\Stubs\TestClassWithMultiConstructors.cs">
|
||||
<Link>Stubs\TestClassWithMultiConstructors.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\ViewModelBaseTest.cs">
|
||||
<Link>ViewModelBaseTest.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\ViewModel\TestClassWithObservableObject.cs">
|
||||
<Link>ViewModel\TestClassWithObservableObject.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\ViewModel\TestViewModel.cs">
|
||||
<Link>ViewModel\TestViewModel.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\ViewModel\TestViewModelNoMagicString.cs">
|
||||
<Link>ViewModel\TestViewModelNoMagicString.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight.Test %28NET35%29\ViewModel\ViewModelStub.cs">
|
||||
<Link>ViewModel\ViewModelStub.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<AppxManifest Include="Package.appxmanifest" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Images\UnitTestLogo.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
<Visible>false</Visible>
|
||||
</Content>
|
||||
<Content Include="Images\UnitTestSmallLogo.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
<Visible>false</Visible>
|
||||
</Content>
|
||||
<Content Include="Images\UnitTestSplashScreen.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
<Visible>false</Visible>
|
||||
</Content>
|
||||
<Content Include="Images\UnitTestStoreLogo.png">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
<Visible>false</Visible>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\GalaSoft.MvvmLight.Extras.Win8\GalaSoft.MvvmLight.Extras.Win8.csproj">
|
||||
<Project>{ad53d597-6c9f-434d-a21a-bb10626a2784}</Project>
|
||||
<Name>GalaSoft.MvvmLight.Extras.Win8</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8.csproj">
|
||||
<Project>{81362ad5-e139-4889-b140-73c3924b2d63}</Project>
|
||||
<Name>GalaSoft.MvvmLight.Win8</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.Practices.ServiceLocation">
|
||||
<HintPath>..\..\External\WIN8\Microsoft.Practices.ServiceLocation.dll</HintPath>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v1.0\Microsoft.Windows.UI.Xaml.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
Двоичные данные
GalaSoft.MvvmLight/GalaSoft.MvvmLight.Win8/GalaSoft.MvvmLight.Test.Win8/Images/UnitTestLogo.png
Normal file
После Ширина: | Высота: | Размер: 4.6 KiB |
Двоичные данные
GalaSoft.MvvmLight/GalaSoft.MvvmLight.Win8/GalaSoft.MvvmLight.Test.Win8/Images/UnitTestSmallLogo.png
Normal file
После Ширина: | Высота: | Размер: 1.1 KiB |
Двоичные данные
GalaSoft.MvvmLight/GalaSoft.MvvmLight.Win8/GalaSoft.MvvmLight.Test.Win8/Images/UnitTestSplashScreen.png
Normal file
После Ширина: | Высота: | Размер: 5.8 KiB |
Двоичные данные
GalaSoft.MvvmLight/GalaSoft.MvvmLight.Win8/GalaSoft.MvvmLight.Test.Win8/Images/UnitTestStoreLogo.png
Normal file
После Ширина: | Высота: | Размер: 1.6 KiB |
|
@ -0,0 +1,40 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest">
|
||||
|
||||
<Identity Name="unittestproject1"
|
||||
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"
|
||||
Version="1.0.0.0" />
|
||||
|
||||
<Properties>
|
||||
<DisplayName>UnitTestProject1</DisplayName>
|
||||
<PublisherDisplayName>laurent</PublisherDisplayName>
|
||||
<Logo>Images\UnitTestStoreLogo.png</Logo>
|
||||
<Description>UnitTestProject1</Description>
|
||||
</Properties>
|
||||
|
||||
<Prerequisites>
|
||||
<OSMinVersion>6.2</OSMinVersion>
|
||||
<OSMaxVersionTested>6.2</OSMaxVersionTested>
|
||||
</Prerequisites>
|
||||
|
||||
<Resources>
|
||||
<Resource Language="en-us"/>
|
||||
</Resources>
|
||||
|
||||
<Applications>
|
||||
<Application Id="MSTestExecutor.App"
|
||||
Executable="MSTestExecutor.Appx.exe"
|
||||
EntryPoint="MSTestExecutor.App">
|
||||
<VisualElements
|
||||
DisplayName="NoTiles"
|
||||
Logo="Images\UnitTestLogo.png"
|
||||
SmallLogo="Images\UnitTestSmallLogo.png"
|
||||
Description="MSTestExecutor.App"
|
||||
ForegroundText="light"
|
||||
BackgroundColor="#0084FF">
|
||||
<SplashScreen Image="Images\UnitTestSplashScreen.png" />
|
||||
</VisualElements>
|
||||
</Application>
|
||||
</Applications>
|
||||
|
||||
</Package>
|
|
@ -0,0 +1,28 @@
|
|||
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("UnitTestProject1")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Microsoft")]
|
||||
[assembly: AssemblyProduct("UnitTestProject1")]
|
||||
[assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// 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")]
|
|
@ -0,0 +1,34 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 11
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GalaSoft.MvvmLight.Win8", "GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8.csproj", "{81362AD5-E139-4889-B140-73C3924B2D63}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GalaSoft.MvvmLight.Test.Win8", "GalaSoft.MvvmLight.Test.Win8\GalaSoft.MvvmLight.Test.Win8.csproj", "{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GalaSoft.MvvmLight.Extras.Win8", "GalaSoft.MvvmLight.Extras.Win8\GalaSoft.MvvmLight.Extras.Win8.csproj", "{AD53D597-6C9F-434D-A21A-BB10626A2784}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{81362AD5-E139-4889-B140-73C3924B2D63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{81362AD5-E139-4889-B140-73C3924B2D63}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{81362AD5-E139-4889-B140-73C3924B2D63}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{81362AD5-E139-4889-B140-73C3924B2D63}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{AD53D597-6C9F-434D-A21A-BB10626A2784}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{AD53D597-6C9F-434D-A21A-BB10626A2784}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{AD53D597-6C9F-434D-A21A-BB10626A2784}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{AD53D597-6C9F-434D-A21A-BB10626A2784}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
|
||||
{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B9A94A60-5A7C-4742-8C3D-7DF0D7E334F4}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,112 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{81362AD5-E139-4889-B140-73C3924B2D63}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>GalaSoft.MvvmLight</RootNamespace>
|
||||
<AssemblyName>GalaSoft.MvvmLight.Win8</AssemblyName>
|
||||
<DefaultLanguage>en-US</DefaultLanguage>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<ProjectTypeGuids>{BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG;WIN8</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>bin\Debug\GalaSoft.MvvmLight.Win8.XML</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE;WIN8</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<DocumentationFile>bin\Release\GalaSoft.MvvmLight.Win8.XML</DocumentationFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<!-- A reference to the entire .Net Framework and Windows SDK are automatically included -->
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Command\RelayCommand.cs">
|
||||
<Link>Command\RelayCommand.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Command\RelayCommandGeneric.cs">
|
||||
<Link>Command\RelayCommandGeneric.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Helpers\IExecuteWithObject.cs">
|
||||
<Link>Helpers\IExecuteWithObject.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Helpers\WeakAction.cs">
|
||||
<Link>Helpers\WeakAction.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Helpers\WeakActionGeneric.cs">
|
||||
<Link>Helpers\WeakActionGeneric.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\ICleanup.cs">
|
||||
<Link>ICleanup.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\DialogMessage.cs">
|
||||
<Link>Messaging\DialogMessage.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\GenericMessage.cs">
|
||||
<Link>Messaging\GenericMessage.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\IMessenger.cs">
|
||||
<Link>Messaging\IMessenger.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\MessageBase.cs">
|
||||
<Link>Messaging\MessageBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\Messenger.cs">
|
||||
<Link>Messaging\Messenger.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\NotificationMessage.cs">
|
||||
<Link>Messaging\NotificationMessage.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\NotificationMessageAction.cs">
|
||||
<Link>Messaging\NotificationMessageAction.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\NotificationMessageActionGeneric.cs">
|
||||
<Link>Messaging\NotificationMessageActionGeneric.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\NotificationMessageGeneric.cs">
|
||||
<Link>Messaging\NotificationMessageGeneric.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\NotificationMessageWithCallback.cs">
|
||||
<Link>Messaging\NotificationMessageWithCallback.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\PropertyChangedMessage.cs">
|
||||
<Link>Messaging\PropertyChangedMessage.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Messaging\PropertyChangedMessageBase.cs">
|
||||
<Link>Messaging\PropertyChangedMessageBase.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\ObservableObject.cs">
|
||||
<Link>ObservableObject.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\Properties\AssemblyInfo.cs">
|
||||
<Link>Properties\AssemblyInfo.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="..\..\GalaSoft.MvvmLight %28NET35%29\ViewModelBase.cs">
|
||||
<Link>ViewModelBase.cs</Link>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v1.0\Microsoft.Windows.UI.Xaml.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -10,6 +10,7 @@ md _Binaries\Debug\WP7
|
|||
md _Binaries\Debug\WP71
|
||||
md _Binaries\Debug\WPF4
|
||||
md _Binaries\Debug\WPF35SP1
|
||||
md _Binaries\Debug\Win8
|
||||
md _Binaries\Release
|
||||
md _Binaries\Release\Silverlight3
|
||||
md _Binaries\Release\Silverlight4
|
||||
|
@ -18,6 +19,7 @@ md _Binaries\Release\WP7
|
|||
md _Binaries\Release\WP71
|
||||
md _Binaries\Release\WPF4
|
||||
md _Binaries\Release\WPF35SP1
|
||||
md _Binaries\Release\Win8
|
||||
|
||||
if exist ".\GalaSoft.MvvmLight (NET4)\bin\Debug\GalaSoft.MvvmLight.WPF4.dll" copy ".\GalaSoft.MvvmLight (NET4)\bin\Debug\GalaSoft.MvvmLight.WPF4.dll" .\_Binaries\Debug\WPF4\GalaSoft.MvvmLight.WPF4.dll
|
||||
if exist ".\GalaSoft.MvvmLight (NET4)\bin\Debug\GalaSoft.MvvmLight.WPF4.pdb" copy ".\GalaSoft.MvvmLight (NET4)\bin\Debug\GalaSoft.MvvmLight.WPF4.pdb" .\_Binaries\Debug\WPF4\GalaSoft.MvvmLight.WPF4.pdb
|
||||
|
@ -68,6 +70,13 @@ if exist ".\GalaSoft.MvvmLight (WP71)\bin\Release\GalaSoft.MvvmLight.WP71.dll" c
|
|||
if exist ".\GalaSoft.MvvmLight (WP71)\bin\Release\GalaSoft.MvvmLight.WP71.pdb" copy ".\GalaSoft.MvvmLight (WP71)\bin\Release\GalaSoft.MvvmLight.WP71.pdb" .\_Binaries\Release\WP71\GalaSoft.MvvmLight.WP71.pdb
|
||||
if exist ".\GalaSoft.MvvmLight (WP71)\bin\Release\GalaSoft.MvvmLight.WP71.xml" copy ".\GalaSoft.MvvmLight (WP71)\bin\Release\GalaSoft.MvvmLight.WP71.xml" .\_Binaries\Release\WP71\GalaSoft.MvvmLight.WP71.xml
|
||||
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Debug\GalaSoft.MvvmLight.Win8.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Debug\GalaSoft.MvvmLight.Win8.dll" .\_Binaries\Debug\Win8\GalaSoft.MvvmLight.Win8.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Debug\GalaSoft.MvvmLight.Win8.pdb" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Debug\GalaSoft.MvvmLight.Win8.pdb" .\_Binaries\Debug\Win8\GalaSoft.MvvmLight.Win8.pdb
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Debug\GalaSoft.MvvmLight.Win8.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Debug\GalaSoft.MvvmLight.Win8.xml" .\_Binaries\Debug\Win8\GalaSoft.MvvmLight.Win8.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Release\GalaSoft.MvvmLight.Win8.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Release\GalaSoft.MvvmLight.Win8.dll" .\_Binaries\Release\Win8\GalaSoft.MvvmLight.Win8.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Release\GalaSoft.MvvmLight.Win8.pdb" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Release\GalaSoft.MvvmLight.Win8.pdb" .\_Binaries\Release\Win8\GalaSoft.MvvmLight.Win8.pdb
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Release\GalaSoft.MvvmLight.Win8.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Win8\bin\Release\GalaSoft.MvvmLight.Win8.xml" .\_Binaries\Release\Win8\GalaSoft.MvvmLight.Win8.xml
|
||||
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\GalaSoft.MvvmLight.Extras.WPF4.dll" copy ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\GalaSoft.MvvmLight.Extras.WPF4.dll" .\_Binaries\Debug\WPF4\GalaSoft.MvvmLight.Extras.WPF4.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\GalaSoft.MvvmLight.Extras.WPF4.pdb" copy ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\GalaSoft.MvvmLight.Extras.WPF4.pdb" .\_Binaries\Debug\WPF4\GalaSoft.MvvmLight.Extras.WPF4.pdb
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\GalaSoft.MvvmLight.Extras.WPF4.xml" copy ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\GalaSoft.MvvmLight.Extras.WPF4.xml" .\_Binaries\Debug\WPF4\GalaSoft.MvvmLight.Extras.WPF4.xml
|
||||
|
@ -117,6 +126,13 @@ if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\GalaSoft.MvvmLight.Extr
|
|||
if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\GalaSoft.MvvmLight.Extras.WP71.pdb" copy ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\GalaSoft.MvvmLight.Extras.WP71.pdb" .\_Binaries\Release\WP71\GalaSoft.MvvmLight.Extras.WP71.pdb
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\GalaSoft.MvvmLight.Extras.WP71.xml" copy ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\GalaSoft.MvvmLight.Extras.WP71.xml" .\_Binaries\Release\WP71\GalaSoft.MvvmLight.Extras.WP71.xml
|
||||
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\GalaSoft.MvvmLight.Extras.Win8.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\GalaSoft.MvvmLight.Extras.Win8.dll" .\_Binaries\Debug\Win8\GalaSoft.MvvmLight.Extras.Win8.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\GalaSoft.MvvmLight.Extras.Win8.pdb" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\GalaSoft.MvvmLight.Extras.Win8.pdb" .\_Binaries\Debug\Win8\GalaSoft.MvvmLight.Extras.Win8.pdb
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\GalaSoft.MvvmLight.Extras.Win8.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\GalaSoft.MvvmLight.Extras.Win8.xml" .\_Binaries\Debug\Win8\GalaSoft.MvvmLight.Extras.Win8.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\GalaSoft.MvvmLight.Extras.Win8.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\GalaSoft.MvvmLight.Extras.Win8.dll" .\_Binaries\Release\Win8\GalaSoft.MvvmLight.Extras.Win8.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\GalaSoft.MvvmLight.Extras.Win8.pdb" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\GalaSoft.MvvmLight.Extras.Win8.pdb" .\_Binaries\Release\Win8\GalaSoft.MvvmLight.Extras.Win8.pdb
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\GalaSoft.MvvmLight.Extras.Win8.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\GalaSoft.MvvmLight.Extras.Win8.xml" .\_Binaries\Release\Win8\GalaSoft.MvvmLight.Extras.Win8.xml
|
||||
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\Microsoft.Practices.ServiceLocation.dll" copy ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\Microsoft.Practices.ServiceLocation.dll" .\_Binaries\Debug\WPF4\Microsoft.Practices.ServiceLocation.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\Microsoft.Practices.ServiceLocation.xml" copy ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\Microsoft.Practices.ServiceLocation.xml" .\_Binaries\Debug\WPF4\Microsoft.Practices.ServiceLocation.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\System.Windows.Interactivity.dll" copy ".\GalaSoft.MvvmLight.Extras (NET4)\bin\Debug\System.Windows.Interactivity.dll" .\_Binaries\Debug\WPF4\System.Windows.Interactivity.dll
|
||||
|
@ -179,3 +195,12 @@ if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\Microsoft.Practices.Ser
|
|||
if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\Microsoft.Practices.ServiceLocation.xml" copy ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\Microsoft.Practices.ServiceLocation.xml" .\_Binaries\Release\WP71\Microsoft.Practices.ServiceLocation.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\System.Windows.Interactivity.dll" copy ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\System.Windows.Interactivity.dll" .\_Binaries\Release\WP71\System.Windows.Interactivity.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\System.Windows.Interactivity.xml" copy ".\GalaSoft.MvvmLight.Extras (WP71)\bin\Release\System.Windows.Interactivity.xml" .\_Binaries\Release\WP71\System.Windows.Interactivity.xml
|
||||
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\Microsoft.Practices.ServiceLocation.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\Microsoft.Practices.ServiceLocation.dll" .\_Binaries\Debug\Win8\Microsoft.Practices.ServiceLocation.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\Microsoft.Practices.ServiceLocation.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\Microsoft.Practices.ServiceLocation.xml" .\_Binaries\Debug\Win8\Microsoft.Practices.ServiceLocation.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\System.Windows.Interactivity.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\System.Windows.Interactivity.dll" .\_Binaries\Debug\Win8\System.Windows.Interactivity.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\System.Windows.Interactivity.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Debug\System.Windows.Interactivity.xml" .\_Binaries\Debug\Win8\System.Windows.Interactivity.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\Microsoft.Practices.ServiceLocation.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\Microsoft.Practices.ServiceLocation.dll" .\_Binaries\Release\Win8\Microsoft.Practices.ServiceLocation.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\Microsoft.Practices.ServiceLocation.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\Microsoft.Practices.ServiceLocation.xml" .\_Binaries\Release\Win8\Microsoft.Practices.ServiceLocation.xml
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\System.Windows.Interactivity.dll" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\System.Windows.Interactivity.dll" .\_Binaries\Release\Win8\System.Windows.Interactivity.dll
|
||||
if exist ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\System.Windows.Interactivity.xml" copy ".\GalaSoft.MvvmLight.Win8\GalaSoft.MvvmLight.Extras.Win8\bin\Release\System.Windows.Interactivity.xml" .\_Binaries\Release\Win8\System.Windows.Interactivity.xml
|
||||
|
|
Двоичные данные
Installer/Standard/InstallItems/GalaSoft.MvvmLight.Templates/ProjectTemplates/Silverlight/MvvmLight.SL4.zip
Normal file
До Ширина: | Высота: | Размер: 31 KiB После Ширина: | Высота: | Размер: 31 KiB |
До Ширина: | Высота: | Размер: 84 KiB После Ширина: | Высота: | Размер: 84 KiB |
До Ширина: | Высота: | Размер: 451 KiB После Ширина: | Высота: | Размер: 451 KiB |
|
@ -35,7 +35,7 @@
|
|||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<DefineConstants>TRACE;DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
|
@ -9,6 +9,8 @@ namespace ModifyRegistryKey
|
|||
{
|
||||
class Program
|
||||
{
|
||||
private const string InstallActionVs11User = "-i11u";
|
||||
private const string InstallActionVs11Machine = "-i11m";
|
||||
private const string InstallActionVs10User = "-i10u";
|
||||
private const string InstallActionVs10Machine = "-i10m";
|
||||
private const string InstallActionVs08User = "-i08u";
|
||||
|
@ -17,7 +19,7 @@ namespace ModifyRegistryKey
|
|||
private const string UninstallActionUser = "-uu";
|
||||
private const string UninstallActionMachine = "-um";
|
||||
|
||||
private const string PersonalFolderSnippetsPath = "Visual Studio 2010\\Code Snippets\\Visual C#";
|
||||
private const string PersonalFolderVs10SnippetsPath = "Visual Studio 2010\\Code Snippets\\Visual C#";
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs08Machine = new PathInfo
|
||||
{
|
||||
|
@ -33,6 +35,13 @@ namespace ModifyRegistryKey
|
|||
KeyName = "Microsoft Visual CSharp"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs11Machine = new PathInfo
|
||||
{
|
||||
RootKey = Registry.LocalMachine,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\11.0\Languages\CodeExpansions\CSharp\Paths",
|
||||
KeyName = "Microsoft Visual CSharp"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs08User = new PathInfo
|
||||
{
|
||||
RootKey = Registry.CurrentUser,
|
||||
|
@ -47,14 +56,23 @@ namespace ModifyRegistryKey
|
|||
KeyName = "path"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs11User = new PathInfo
|
||||
{
|
||||
RootKey = Registry.CurrentUser,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\11.0\Languages\CodeExpansions\Visual C#",
|
||||
KeyName = "path"
|
||||
};
|
||||
|
||||
static void Main(string[] args)
|
||||
{
|
||||
// Console.WriteLine("008: " + args[0]);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("001: " + args[0]);
|
||||
//Console.ReadLine();
|
||||
|
||||
if (args.Length < 2
|
||||
|| string.IsNullOrEmpty(args[1])
|
||||
|| (args[0] != InstallActionVs10User
|
||||
|| (args[0] != InstallActionVs11User
|
||||
&& args[0] != InstallActionVs11Machine
|
||||
&& args[0] != InstallActionVs10User
|
||||
&& args[0] != InstallActionVs10Machine
|
||||
&& args[0] != InstallActionVs08User
|
||||
&& args[0] != InstallActionVs08Machine
|
||||
|
@ -62,13 +80,13 @@ namespace ModifyRegistryKey
|
|||
&& args[0] != UninstallActionUser
|
||||
&& args[0] != UninstallActionMachine))
|
||||
{
|
||||
Console.WriteLine("Syntax: ModifyRegistryKey [-i10u|-i10m|-i10x|-i08u|-i08m|-uu|-um] [pathOfSnippetsFolder];[pathOfVs10Express]");
|
||||
Console.WriteLine("Syntax: ModifyRegistryKey [-i11u|-i11m|-i10u|-i10m|-i10x|-i08u|-i08m|-uu|-um] [pathOfSnippetsFolder];[pathOfVs10Express]");
|
||||
Console.ReadLine();
|
||||
return;
|
||||
}
|
||||
|
||||
// Console.WriteLine("Arg 1: " + args[1]);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Arg 1: " + args[1]);
|
||||
//Console.ReadLine();
|
||||
|
||||
var parsedArgs = args[1].Split(
|
||||
new[]
|
||||
|
@ -98,27 +116,27 @@ namespace ModifyRegistryKey
|
|||
|
||||
private static void RunUninstallVs10X()
|
||||
{
|
||||
// Console.WriteLine("RunInstallVs10x");
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("RunInstallVs10x");
|
||||
//Console.ReadLine();
|
||||
|
||||
try
|
||||
{
|
||||
var personalFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
|
||||
var destinationSnippetsRootFolder = Path.Combine(personalFolderPath, PersonalFolderSnippetsPath);
|
||||
var destinationSnippetsRootFolder = Path.Combine(personalFolderPath, PersonalFolderVs10SnippetsPath);
|
||||
|
||||
var allLanguages = Directory.GetDirectories(destinationSnippetsRootFolder);
|
||||
|
||||
foreach (var language in allLanguages)
|
||||
{
|
||||
// Console.WriteLine("In " + language);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("In " + language);
|
||||
//Console.ReadLine();
|
||||
|
||||
var mvvmLightFolderPath = Path.Combine(language, MvvmLightFolderName);
|
||||
|
||||
if (Directory.Exists(mvvmLightFolderPath))
|
||||
{
|
||||
// Console.WriteLine("Deleting " + mvvmLightFolderPath);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Deleting " + mvvmLightFolderPath);
|
||||
//Console.ReadLine();
|
||||
Directory.Delete(mvvmLightFolderPath, true);
|
||||
}
|
||||
}
|
||||
|
@ -134,13 +152,13 @@ namespace ModifyRegistryKey
|
|||
|
||||
private static void RunInstallVs10X(string snippetsPath)
|
||||
{
|
||||
// Console.WriteLine("RunInstallVs10x");
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("RunInstallVs10x");
|
||||
//Console.ReadLine();
|
||||
|
||||
try
|
||||
{
|
||||
var personalFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
|
||||
var destinationSnippetsRootFolder = Path.Combine(personalFolderPath, PersonalFolderSnippetsPath);
|
||||
var destinationSnippetsRootFolder = Path.Combine(personalFolderPath, PersonalFolderVs10SnippetsPath);
|
||||
|
||||
var allLanguages = Directory.GetDirectories(destinationSnippetsRootFolder);
|
||||
|
||||
|
@ -148,31 +166,31 @@ namespace ModifyRegistryKey
|
|||
{
|
||||
var languageFolder = new DirectoryInfo(Path.Combine(language, MvvmLightFolderName));
|
||||
|
||||
// Console.WriteLine("In " + languageFolder.FullName);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("In " + languageFolder.FullName);
|
||||
//Console.ReadLine();
|
||||
|
||||
var sourceSnippetsFolders = Directory.GetDirectories(snippetsPath);
|
||||
|
||||
// Console.WriteLine("Found {0} folders in {1}", sourceSnippetsFolders.Length, snippetsPath);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Found {0} folders in {1}", sourceSnippetsFolders.Length, snippetsPath);
|
||||
//Console.ReadLine();
|
||||
|
||||
if (!languageFolder.Exists)
|
||||
{
|
||||
// Console.WriteLine("Creating {0}", languageFolder.FullName);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Creating {0}", languageFolder.FullName);
|
||||
//Console.ReadLine();
|
||||
languageFolder.Create();
|
||||
}
|
||||
|
||||
foreach (var sourceSnippetsFolder in sourceSnippetsFolders)
|
||||
{
|
||||
var snippets = Directory.GetFiles(sourceSnippetsFolder, "*.snippet");
|
||||
// Console.WriteLine("{0} files found in {1}", snippets.Length, snippetsPath);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("{0} files found in {1}", snippets.Length, snippetsPath);
|
||||
//Console.ReadLine();
|
||||
|
||||
foreach (var snippet in snippets)
|
||||
{
|
||||
// Console.WriteLine("Copying " + snippet + " to " + language);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Copying " + snippet + " to " + language);
|
||||
//Console.ReadLine();
|
||||
|
||||
var file = new FileInfo(snippet);
|
||||
file.CopyTo(Path.Combine(languageFolder.FullName, file.Name), true);
|
||||
|
@ -193,13 +211,19 @@ namespace ModifyRegistryKey
|
|||
{
|
||||
try
|
||||
{
|
||||
// Console.WriteLine("RunInstall");
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("RunInstall");
|
||||
//Console.ReadLine();
|
||||
|
||||
PathInfo pathInfo = null;
|
||||
|
||||
switch (command)
|
||||
{
|
||||
case InstallActionVs11User:
|
||||
pathInfo = SnippetsRegistryPathInfoVs11User;
|
||||
break;
|
||||
case InstallActionVs11Machine:
|
||||
pathInfo = SnippetsRegistryPathInfoVs11Machine;
|
||||
break;
|
||||
case InstallActionVs10User:
|
||||
pathInfo = SnippetsRegistryPathInfoVs10User;
|
||||
break;
|
||||
|
@ -235,8 +259,8 @@ namespace ModifyRegistryKey
|
|||
|
||||
if (!snippetsPaths.Contains(snippetsPath))
|
||||
{
|
||||
// Console.WriteLine("New path: " + snippetsPaths + snippetsPath + ";");
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("New path: " + snippetsPaths + snippetsPath + ";");
|
||||
//Console.ReadLine();
|
||||
subKey.SetValue(pathInfo.KeyName, snippetsPaths + snippetsPath + ";");
|
||||
}
|
||||
}
|
||||
|
@ -251,18 +275,18 @@ namespace ModifyRegistryKey
|
|||
|
||||
private static string GetPath(PathInfo pathInfo, out RegistryKey subKey)
|
||||
{
|
||||
// Console.WriteLine(
|
||||
//"Checking subKey {0} in {1}",
|
||||
//pathInfo.KeyPath,
|
||||
//pathInfo.RootKey.Name);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine(
|
||||
// "Checking subKey {0} in {1}",
|
||||
// pathInfo.KeyPath,
|
||||
// pathInfo.RootKey.Name);
|
||||
//Console.ReadLine();
|
||||
|
||||
subKey = pathInfo.RootKey.OpenSubKey(pathInfo.KeyPath, true);
|
||||
|
||||
if (subKey == null)
|
||||
{
|
||||
// Console.WriteLine("subKey == null ({0})", pathInfo.KeyPath);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("subKey == null ({0})", pathInfo.KeyPath);
|
||||
//Console.ReadLine();
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -273,8 +297,8 @@ namespace ModifyRegistryKey
|
|||
return null;
|
||||
}
|
||||
|
||||
// Console.WriteLine("Old path: " + path);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Old path: " + path);
|
||||
//Console.ReadLine();
|
||||
return path.ToString();
|
||||
}
|
||||
|
||||
|
@ -282,8 +306,8 @@ namespace ModifyRegistryKey
|
|||
{
|
||||
try
|
||||
{
|
||||
// Console.WriteLine("RunUninstall");
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("RunUninstall");
|
||||
//Console.ReadLine();
|
||||
|
||||
var allPathsInfo = new List<PathInfo>();
|
||||
|
||||
|
@ -292,10 +316,12 @@ namespace ModifyRegistryKey
|
|||
case UninstallActionUser:
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs08User);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs10User);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs11User);
|
||||
break;
|
||||
case UninstallActionMachine:
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs08Machine);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs10Machine);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs11Machine);
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -303,8 +329,8 @@ namespace ModifyRegistryKey
|
|||
|
||||
foreach (var info in allPathsInfo)
|
||||
{
|
||||
// Console.WriteLine("Checking {0}", info.KeyName);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Checking {0}", info.KeyName);
|
||||
//Console.ReadLine();
|
||||
|
||||
RegistryKey subKey;
|
||||
var snippetsPaths = GetPath(info, out subKey);
|
||||
|
@ -312,16 +338,16 @@ namespace ModifyRegistryKey
|
|||
if (string.IsNullOrEmpty(snippetsPaths)
|
||||
|| subKey == null)
|
||||
{
|
||||
// Console.WriteLine("Null");
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("Null");
|
||||
//Console.ReadLine();
|
||||
continue;
|
||||
}
|
||||
|
||||
if (snippetsPaths.Contains(snippetsPath))
|
||||
{
|
||||
snippetsPaths = snippetsPaths.Replace(snippetsPath, "");
|
||||
// Console.WriteLine("New path: " + snippetsPaths);
|
||||
// Console.ReadLine();
|
||||
//Console.WriteLine("New path: " + snippetsPaths);
|
||||
//Console.ReadLine();
|
||||
subKey.SetValue(info.KeyName, snippetsPaths);
|
||||
}
|
||||
}
|
Двоичные данные
Installer/Win8Installer/InstallItems/GalaSoft.MvvmLight.Templates/ProjectTemplates/Win8/MvvmLight.Win8.zip
Normal file
|
@ -0,0 +1,20 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "Installer", "Installer\Installer.wixproj", "{9A2E2077-E1E9-491E-9306-DD8A172B5E19}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{9A2E2077-E1E9-491E-9306-DD8A172B5E19}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{9A2E2077-E1E9-491E-9306-DD8A172B5E19}.Debug|x86.Build.0 = Debug|x86
|
||||
{9A2E2077-E1E9-491E-9306-DD8A172B5E19}.Release|x86.ActiveCfg = Release|x86
|
||||
{9A2E2077-E1E9-491E-9306-DD8A172B5E19}.Release|x86.Build.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<ProductVersion>3.5</ProductVersion>
|
||||
<ProjectGuid>{9a2e2077-e1e9-491e-9306-dd8a172b5e19}</ProjectGuid>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<OutputName>GalaSoft.MvvmLight.V4beta1Win8</OutputName>
|
||||
<OutputType>Package</OutputType>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<OutputPath>bin\$(Configuration)\</OutputPath>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
<DefineConstants>Debug</DefineConstants>
|
||||
<LinkerAdditionalOptions>-ext WixUIExtension -ext WixVSExtension</LinkerAdditionalOptions>
|
||||
<CompilerAdditionalOptions>-ext WixUIExtension -ext WixUtilExtension -ext WixVSExtension</CompilerAdditionalOptions>
|
||||
<SuppressIces>ICE30;ICE38;ICE64;ICE91</SuppressIces>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<OutputPath>bin\$(Configuration)\</OutputPath>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
<CompilerAdditionalOptions>-ext WixUIExtension -ext WixUtilExtension</CompilerAdditionalOptions>
|
||||
<LinkerAdditionalOptions>-ext WixUIExtension</LinkerAdditionalOptions>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Product.wxs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="License.rtf" />
|
||||
<Content Include="MVVM_Original_195x100.png" />
|
||||
<Content Include="WixUIBannerBmp.bmp" />
|
||||
<Content Include="WixUIDialogBmp.bmp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(WixTargetsPath)" />
|
||||
<!--
|
||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Wix.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -0,0 +1,170 @@
|
|||
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch31505\stshfloch31506\stshfhich31506\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
|
||||
{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
|
||||
{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}
|
||||
{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}
|
||||
{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
|
||||
{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f40\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f41\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
||||
{\f43\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f44\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f45\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f46\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
|
||||
{\f47\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f48\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f40\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f41\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
||||
{\f43\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f44\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f45\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f46\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
|
||||
{\f47\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f48\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f410\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f411\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}
|
||||
{\f413\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f414\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f417\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f418\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}
|
||||
{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
|
||||
{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
|
||||
{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
|
||||
{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
|
||||
{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
|
||||
{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \froman\fcharset238\fprq2 Cambria CE;}{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}
|
||||
{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}
|
||||
{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
||||
{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
|
||||
{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
|
||||
{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}
|
||||
{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}
|
||||
{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}
|
||||
{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}
|
||||
{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}
|
||||
{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}
|
||||
{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}
|
||||
{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}
|
||||
{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}
|
||||
{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}}
|
||||
{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;
|
||||
\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\*\defchp \fs22\loch\af31506\hich\af31506\dbch\af31505 }{\*\defpap \ql \li0\ri0\sa200\sl276\slmult1
|
||||
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
|
||||
\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\s1\ql \li0\ri0\sb240\sa60\sl276\slmult1
|
||||
\keepn\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af0\afs32\alang1025 \ltrch\fcs0 \b\fs32\lang1033\langfe1033\kerning32\loch\f31502\hich\af31502\dbch\af31501\cgrid\langnp1033\langfenp1033
|
||||
\sbasedon0 \snext0 \slink15 \sqformat \spriority9 \styrsid2451337 heading 1;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
|
||||
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa200\sl276\slmult1
|
||||
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused
|
||||
Normal Table;}{\*\cs15 \additive \rtlch\fcs1 \ab\af0\afs32 \ltrch\fcs0 \b\fs32\kerning32\loch\f31502\hich\af31502\dbch\af31501 \sbasedon10 \slink1 \slocked \spriority9 \styrsid2451337 Heading 1 Char;}}{\*\rsidtbl \rsid2451337\rsid7538768\rsid7811264
|
||||
\rsid11165562}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1}{\info{\operator Morten Nielsen}{\creatim\yr2009\mo9\dy9\hr12\min57}{\revtim\yr2011\mo4\dy16\hr21\min52}
|
||||
{\version4}{\edmins0}{\nofpages1}{\nofwords159}{\nofchars907}{\nofcharsws1064}{\vern49255}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect
|
||||
\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120\dghorigin1701
|
||||
\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\rsidroot2451337 \fet0{\*\wgrffmtfilter 2450}\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sectrsid7811264\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}
|
||||
{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}
|
||||
{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9
|
||||
\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid11165562 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
|
||||
\fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab\af0\afs20 \ltrch\fcs0 \b\f0\fs20\insrsid11165562\charrsid11165562 \hich\af0\dbch\af31505\loch\f0 Copyright (c) 2009 - 2011 Laurent Bugnion
|
||||
|
||||
\par
|
||||
\par \hich\af0\dbch\af31505\loch\f0
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, m
|
||||
\hich\af0\dbch\af31505\loch\f0 e\hich\af0\dbch\af31505\loch\f0 rge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
\par
|
||||
\par \hich\af0\dbch\af31505\loch\f0 The above copyright notice and this permission notice shall be included in all\hich\af0\dbch\af31505\loch\f0 copies or substantial portions of the Software.
|
||||
\par
|
||||
\par \hich\af0\dbch\af31505\loch\f0 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN N
|
||||
\hich\af0\dbch\af31505\loch\f0
|
||||
O EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.}
|
||||
{\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid2451337\charrsid11165562
|
||||
\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
|
||||
9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad
|
||||
5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6
|
||||
b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0
|
||||
0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6
|
||||
a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f
|
||||
c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512
|
||||
0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462
|
||||
a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865
|
||||
6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b
|
||||
4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b
|
||||
4757e8d3f729e245eb2b260a0238fd010000ffff0300504b03041400060008000000210096b5ade296060000501b0000160000007468656d652f7468656d652f
|
||||
7468656d65312e786d6cec594f6fdb3614bf0fd87720746f6327761a07758ad8b19b2d4d1bc46e871e698996d850a240d2497d1bdae38001c3ba618715d86d87
|
||||
615b8116d8a5fb34d93a6c1dd0afb0475292c5585e9236d88aad3e2412f9e3fbff1e1fa9abd7eec70c1d1221294fda5efd72cd4324f1794093b0eddd1ef62fad
|
||||
79482a9c0498f184b4bd2991deb58df7dfbb8ad755446282607d22d771db8b944ad79796a40fc3585ee62949606ecc458c15bc8a702910f808e8c66c69b9565b
|
||||
5d8a314d3c94e018c8de1a8fa94fd05093f43672e23d06af89927ac06762a049136785c10607758d9053d965021d62d6f6804fc08f86e4bef210c352c144dbab
|
||||
999fb7b4717509af678b985ab0b6b4ae6f7ed9ba6c4170b06c788a705430adf71bad2b5b057d03606a1ed7ebf5babd7a41cf00b0ef83a6569632cd467faddec9
|
||||
699640f6719e76b7d6ac355c7c89feca9cccad4ea7d36c65b258a206641f1b73f8b5da6a6373d9c11b90c537e7f08dce66b7bbeae00dc8e257e7f0fd2badd586
|
||||
8b37a088d1e4600ead1ddaef67d40bc898b3ed4af81ac0d76a197c86826828a24bb318f3442d8ab518dfe3a20f000d6458d104a9694ac6d88728eee2782428d6
|
||||
0cf03ac1a5193be4cbb921cd0b495fd054b5bd0f530c1931a3f7eaf9f7af9e3f45c70f9e1d3ff8e9f8e1c3e3073f5a42ceaa6d9c84e5552fbffdeccfc71fa33f
|
||||
9e7ef3f2d117d57859c6fffac327bffcfc793510d26726ce8b2f9ffcf6ecc98baf3efdfdbb4715f04d814765f890c644a29be408edf3181433567125272371be
|
||||
15c308d3f28acd249438c19a4b05fd9e8a1cf4cd296699771c393ac4b5e01d01e5a30a787d72cf1178108989a2159c77a2d801ee72ce3a5c545a6147f32a9979
|
||||
3849c26ae66252c6ed637c58c5bb8b13c7bfbd490a75330f4b47f16e441c31f7184e140e494214d273fc80900aedee52ead87597fa824b3e56e82e451d4c2b4d
|
||||
32a423279a668bb6690c7e9956e90cfe766cb37b077538abd27a8b1cba48c80acc2a841f12e698f13a9e281c57911ce298950d7e03aba84ac8c154f8655c4f2a
|
||||
f074481847bd804859b5e696007d4b4edfc150b12addbecba6b18b148a1e54d1bc81392f23b7f84137c2715a851dd0242a633f900710a218ed715505dfe56e86
|
||||
e877f0034e16bafb0e258ebb4faf06b769e888340b103d3311da9750aa9d0a1cd3e4efca31a3508f6d0c5c5c398602f8e2ebc71591f5b616e24dd893aa3261fb
|
||||
44f95d843b5974bb5c04f4edafb95b7892ec1108f3f98de75dc97d5772bdff7cc95d94cf672db4b3da0a6557f70db629362d72bcb0431e53c6066acac80d699a
|
||||
6409fb44d08741bdce9c0e4971624a2378cceaba830b05366b90e0ea23aaa241845368b0eb9e2612ca8c742851ca251ceccc70256d8d87265dd96361531f186c
|
||||
3d9058edf2c00eafe8e1fc5c509031bb4d680e9f39a3154de0accc56ae644441edd76156d7429d995bdd88664a9dc3ad50197c38af1a0c16d684060441db0256
|
||||
5e85f3b9660d0713cc48a0ed6ef7dedc2dc60b17e92219e180643ed27acffba86e9c94c78ab90980d8a9f0913ee49d62b512b79626fb06dccee2a432bbc60276
|
||||
b9f7dec44b7904cfbca4f3f6443ab2a49c9c2c41476dafd55c6e7ac8c769db1bc399161ee314bc2e75cf8759081743be1236ec4f4d6693e5336fb672c5dc24a8
|
||||
c33585b5fb9cc24e1d4885545b58463634cc5416022cd19cacfccb4d30eb45296023fd35a458598360f8d7a4003bbaae25e331f155d9d9a5116d3bfb9a95523e
|
||||
51440ca2e0088dd844ec6370bf0e55d027a012ae264c45d02f708fa6ad6da6dce29c255df9f6cae0ec38666984b372ab5334cf640b37795cc860de4ae2816e95
|
||||
b21be5ceaf8a49f90b52a51cc6ff3355f47e0237052b81f6800fd7b802239daf6d8f0b1571a8426944fdbe80c6c1d40e8816b88b8569082ab84c36ff0539d4ff
|
||||
6dce591a26ade1c0a7f669880485fd484582903d284b26fa4e2156cff62e4b9265844c4495c495a9157b440e091bea1ab8aaf7760f4510eaa69a6465c0e04ec6
|
||||
9ffb9e65d028d44d4e39df9c1a52ecbd3607fee9cec7263328e5d661d3d0e4f62f44acd855ed7ab33cdf7bcb8ae889599bd5c8b3029895b6825696f6af29c239
|
||||
b75a5bb1e6345e6ee6c28117e73586c1a2214ae1be07e93fb0ff51e133fb65426fa843be0fb515c187064d0cc206a2fa926d3c902e907670048d931db4c1a449
|
||||
59d366ad93b65abe595f70a75bf03d616c2dd959fc7d4e6317cd99cbcec9c58b34766661c7d6766ca1a9c1b327531486c6f941c638c67cd22a7f75e2a37be0e8
|
||||
2db8df9f30254d30c1372581a1f51c983c80e4b71ccdd28dbf000000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468
|
||||
656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4
|
||||
350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d2624
|
||||
52282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe5141
|
||||
73d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c020000130000000000000000
|
||||
0000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000
|
||||
000000000000300100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c0000000000000000000000000019
|
||||
0200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d001400060008000000210096b5ade296060000501b00001600000000
|
||||
000000000000000000d60200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b01000027
|
||||
00000000000000000000000000a00900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d0100009b0a00000000}
|
||||
{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
|
||||
617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
|
||||
6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
|
||||
656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
|
||||
{\*\latentstyles\lsdstimax267\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4;
|
||||
\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;
|
||||
\lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7;
|
||||
\lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdpriority1 \lsdlocked0 Default Paragraph Font;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;
|
||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography;\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010500000200000018000000
|
||||
4d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000060000
|
||||
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
||||
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000007049
|
||||
3752bbfccb01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
|
||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
|
||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
|
||||
0000000000000000000000000000000000000000000000000105000000000000}}
|
После Ширина: | Высота: | Размер: 32 KiB |
|
@ -0,0 +1,433 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
|
||||
<Product Id="09663D3C-DEC5-4AB2-9EB2-43AE8805B158"
|
||||
Name="MVVM Light Toolkit for Win8"
|
||||
Language="1033"
|
||||
Version="4.0.0.171"
|
||||
Manufacturer="Laurent Bugnion (GalaSoft)"
|
||||
UpgradeCode="0C724662-43C5-43F0-9727-2A1027AF07A4">
|
||||
|
||||
<Package InstallerVersion="200"
|
||||
Compressed="yes"
|
||||
Id="*"
|
||||
Keywords="Installer"
|
||||
Description="MVVM Light Toolkit Installer for Windows 8 (V4 beta 1)"
|
||||
Comments="The MVVM Light Toolkit is a set of components helping people to get started in the Model - View - ViewModel pattern in Silverlight, WPF and Windows Phone. It is a light and pragmatic framework that contains only the essential components needed. This is the Windows 8 version only (preview)."
|
||||
Manufacturer="Laurent Bugnion (GalaSoft)"
|
||||
Languages="1033"
|
||||
SummaryCodepage="1252"
|
||||
Platform="x86" />
|
||||
|
||||
<Media Id="1"
|
||||
Cabinet="media1.cab"
|
||||
EmbedCab="yes" />
|
||||
|
||||
<Property Id="ARPHELPLINK">http://mvvmlight.codeplex.com/</Property>
|
||||
|
||||
<Property Id="ARPURLINFOABOUT">http://mvvmlight.codeplex.com/</Property>
|
||||
|
||||
<!--Registry key variables-->
|
||||
<Property Id="VS11XINSTALL">
|
||||
<RegistrySearch Id="VS11XRegistry"
|
||||
Type="raw"
|
||||
Root="HKLM"
|
||||
Key="SOFTWARE\Microsoft\VSWinExpress\11.0"
|
||||
Name="ShellFolder" />
|
||||
</Property>
|
||||
|
||||
<Property Id="VS11INSTALL">
|
||||
<RegistrySearch Id="VS11Registry"
|
||||
Type="raw"
|
||||
Root="HKLM"
|
||||
Key="SOFTWARE\Microsoft\VisualStudio\11.0"
|
||||
Name="ShellFolder" />
|
||||
</Property>
|
||||
|
||||
<!--Product installed variables-->
|
||||
<Property Id="VS11XEXISTS">
|
||||
<DirectorySearch Id="CheckFileDirVS11X"
|
||||
Path="[VS11XINSTALL]\Common7\IDE"
|
||||
Depth="0">
|
||||
<FileSearch Name="VSWinExpress.exe"/>
|
||||
</DirectorySearch>
|
||||
</Property>
|
||||
|
||||
<Property Id="VS11EXISTS">
|
||||
<DirectorySearch Id="CheckFileDirVS11"
|
||||
Path="[VS11INSTALL]\Common7\IDE"
|
||||
Depth="0">
|
||||
<FileSearch Name="devenv.exe"/>
|
||||
</DirectorySearch>
|
||||
</Property>
|
||||
|
||||
<!--Files to install-->
|
||||
<Directory Id="TARGETDIR"
|
||||
Name="SourceDir">
|
||||
<Directory Id="AppDataFolder">
|
||||
<Directory Id="AppDataMvvm"
|
||||
Name="MvvmLight">
|
||||
<Component Id="PostSetup"
|
||||
Guid="5B01F718-5639-4E33-B1FE-2E4441BCEE17">
|
||||
<File Id="ModifyRegistryKey.exe"
|
||||
Name="ModifyRegistryKey.exe"
|
||||
DiskId="1"
|
||||
Source="../ModifyRegistryKey/bin/Debug/ModifyRegistryKey.exe" />
|
||||
</Component>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<Directory Id="ProgramFilesFolder">
|
||||
<Directory Id="INSTALLLOCATION"
|
||||
Name="Laurent Bugnion (GalaSoft)">
|
||||
<Directory Id="PRODUCTDIR"
|
||||
Name="Mvvm Light Toolkit">
|
||||
<Directory Id="SNIPPETS"
|
||||
Name="SnippetsWin8">
|
||||
<Directory Id="SNIPPETSCS"
|
||||
Name="CSharp">
|
||||
<Component Id="SnippetsCsComp"
|
||||
DiskId="1"
|
||||
Guid="DF69467C-FB36-46A6-ADDC-82C97E13E5AA">
|
||||
<File Id="mvvmInpc.snippet.cs"
|
||||
Name="mvvmInpc.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpc.snippet" />
|
||||
<File Id="mvvmInpcLambda.snippet.cs"
|
||||
Name="mvvmInpcLambda.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcLambda.snippet" />
|
||||
<File Id="mvvmInpcLambdaMsg.snippet.cs"
|
||||
Name="mvvmInpcLambdaMsg.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcLambdaMsg.snippet" />
|
||||
<File Id="mvvmInpcMsg.snippet.cs"
|
||||
Name="mvvmInpcMsg.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcMsg.snippet" />
|
||||
<File Id="mvvmInpcSet.snippet.cs"
|
||||
Name="mvvmInpcSet.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcSet.snippet" />
|
||||
<File Id="mvvmInpcSetLambda.snippet.cs"
|
||||
Name="mvvmInpcSetLambda.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcSetLambda.snippet" />
|
||||
<File Id="mvvmInpcSetLambdaMsg.snippet.cs"
|
||||
Name="mvvmInpcSetLambdaMsg.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcSetLambdaMsg.snippet" />
|
||||
<File Id="mvvmInpcSetMsg.snippet.cs"
|
||||
Name="mvvmInpcSetMsg.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmInpcSetMsg.snippet" />
|
||||
<File Id="mvvmPropA.snippet.cs"
|
||||
Name="mvvmPropA.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmPropA.snippet" />
|
||||
<File Id="mvvmPropDP.snippet.cs"
|
||||
Name="mvvmPropDP.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmPropDP.snippet" />
|
||||
<File Id="mvvmRelay.snippet.cs"
|
||||
Name="mvvmRelay.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelay.snippet" />
|
||||
<File Id="mvvmRelayCanExecute.snippet.cs"
|
||||
Name="mvvmRelayCanExecute.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayCanExecute.snippet" />
|
||||
<File Id="mvvmRelayGeneric.snippet.cs"
|
||||
Name="mvvmRelayGeneric.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayGeneric.snippet" />
|
||||
<File Id="mvvmRelayGenericCanExecute.snippet.cs"
|
||||
Name="mvvmRelayGenericCanExecute.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayGenericCanExecute.snippet" />
|
||||
<File Id="mvvmRelayMethod.snippet.cs"
|
||||
Name="mvvmRelayMethod.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayMethod.snippet" />
|
||||
<File Id="mvvmRelayMethodCanExecute.snippet.cs"
|
||||
Name="mvvmRelayMethodCanExecute.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayMethodCanExecute.snippet" />
|
||||
<File Id="mvvmRelayMethodGeneric.snippet.cs"
|
||||
Name="mvvmRelayMethodGeneric.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayMethodGeneric.snippet" />
|
||||
<File Id="mvvmRelayMethodGenericCanExecute.snippet.cs"
|
||||
Name="mvvmRelayMethodGenericCanExecute.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmRelayMethodGenericCanExecute.snippet" />
|
||||
<File Id="mvvmSLPropA.snippet.cs"
|
||||
Name="mvvmSLPropA.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmSLPropA.snippet" />
|
||||
<File Id="mvvmSLPropDP.snippet.cs"
|
||||
Name="mvvmSLPropDP.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmSLPropDP.snippet" />
|
||||
<File Id="mvvmViewModelLocatorProperty.snippet.cs"
|
||||
Name="mvvmViewModelLocatorProperty.snippet"
|
||||
Source="../../Standard/InstallItems/GalaSoft.MvvmLight.Snippets/CSharp/mvvmViewModelLocatorProperty.snippet" />
|
||||
</Component>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<Directory Id="BINARIES"
|
||||
Name="Binaries">
|
||||
<Directory Id="WIN8BINARIES"
|
||||
Name="Win8">
|
||||
<Component Id="Win8BinariesComp"
|
||||
Guid="13566130-A20C-4AF2-9986-89197ADA6980">
|
||||
<File Id="GalaSoft.MvvmLight.dll.Win8"
|
||||
Name="GalaSoft.MvvmLight.Win8.dll"
|
||||
DiskId="1"
|
||||
Source="../../../GalaSoft.MvvmLight/_Binaries/Release/Win8/GalaSoft.MvvmLight.Win8.dll" />
|
||||
<File Id="GalaSoft.MvvmLight.xml.Win8"
|
||||
Name="GalaSoft.MvvmLight.Win8.xml"
|
||||
DiskId="1"
|
||||
Source="../../../GalaSoft.MvvmLight/_Binaries/Release/Win8/GalaSoft.MvvmLight.Win8.xml" />
|
||||
<File Id="GalaSoft.MvvmLight.Extras.dll.Win8"
|
||||
Name="GalaSoft.MvvmLight.Extras.Win8.dll"
|
||||
DiskId="1"
|
||||
Source="../../../GalaSoft.MvvmLight/_Binaries/Release/Win8/GalaSoft.MvvmLight.Extras.Win8.dll" />
|
||||
<File Id="GalaSoft.MvvmLight.Extras.xml.Win8"
|
||||
Name="GalaSoft.MvvmLight.Extras.Win8.xml"
|
||||
DiskId="1"
|
||||
Source="../../../GalaSoft.MvvmLight/_Binaries/Release/Win8/GalaSoft.MvvmLight.Extras.Win8.xml" />
|
||||
<File Id="Microsoft.Practices.ServiceLocation.dll.Win8"
|
||||
Name="Microsoft.Practices.ServiceLocation.dll"
|
||||
DiskId="1"
|
||||
Source="../../../GalaSoft.MvvmLight/_Binaries/Release/Win8/Microsoft.Practices.ServiceLocation.dll" />
|
||||
<File Id="Microsoft.Practices.ServiceLocation.xml.Win8"
|
||||
Name="Microsoft.Practices.ServiceLocation.xml"
|
||||
DiskId="1"
|
||||
Source="../../../GalaSoft.MvvmLight/_Binaries/Release/Win8/Microsoft.Practices.ServiceLocation.xml" />
|
||||
</Component>
|
||||
|
||||
<!--<Component Id="AssemblyFoldersExRegistry.Win8"
|
||||
Guid="{2CEB2FB3-C19F-453C-A467-250FBB65FD41}">
|
||||
<RegistryKey Id="AssemblyRegistryKeyBinaries.Win8"
|
||||
Action="createAndRemoveOnUninstall"
|
||||
Key="SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0\AssemblyFoldersEx\MVVM Light Toolkit"
|
||||
Root="HKLM" />
|
||||
<RegistryValue Id="reg2CEB2FB3C19F453CA467250FBB65FD41"
|
||||
Root="HKLM"
|
||||
Key="SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0\AssemblyFoldersEx\MVVM Light Toolkit"
|
||||
Value="[WIN8BINARIES]"
|
||||
Type="string"
|
||||
KeyPath="yes" />
|
||||
</Component>-->
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<!--VS2011 Templates-->
|
||||
<Directory Id="VS11INSTALL">
|
||||
<Directory Id="Vs11Common7"
|
||||
Name="Common7">
|
||||
<Directory Id="Vs11Common7Ide"
|
||||
Name="IDE">
|
||||
<Directory Id="Vs11ProjectTemplates"
|
||||
Name="ProjectTemplates">
|
||||
<Directory Id="Vs11ProjectTemplatesCs"
|
||||
Name="CSharp">
|
||||
<Directory Id="Vs11ProjectTemplatesCsMetro"
|
||||
Name="Windows Metro style">
|
||||
<Directory Id="Vs11ProjectTemplatesCsMetroMvvm"
|
||||
Name="Mvvm">
|
||||
<Component Id="Vs11ProjectTemplatesCsMetroMvvmWin8Comp"
|
||||
Guid="{583FD4C1-2F75-40FF-B7CC-D6F8979A6A02}">
|
||||
<File Id="MvvmLight.Win8.zip.VS11"
|
||||
Name="MvvmLight.Win8.zip"
|
||||
DiskId="1"
|
||||
Source="../InstallItems/GalaSoft.MvvmLight.Templates/ProjectTemplates/Win8/MvvmLight.Win8.zip" />
|
||||
</Component>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<!--VS2011Express Templates-->
|
||||
<Directory Id="VS11XINSTALL">
|
||||
<Directory Id="Vs11xCommon7"
|
||||
Name="Common7">
|
||||
<Directory Id="Vs11xCommon7Ide"
|
||||
Name="IDE">
|
||||
<Directory Id="Vs11xVsWinx"
|
||||
Name="VSWinExpress">
|
||||
<Directory Id="Vs11xProjectTemplates"
|
||||
Name="ProjectTemplates">
|
||||
<Directory Id="Vs11xProjectTemplatesMvvm"
|
||||
Name="Mvvm">
|
||||
<Component Id="Vs11xProjectTemplatesMvvmComp"
|
||||
Guid="{71dbb618-7b65-4f28-9cb2-458d953e0ff3}">
|
||||
<File Id="MvvmLight.Win8.zip.VS11x"
|
||||
Name="MvvmLight.Win8.zip"
|
||||
DiskId="1"
|
||||
Source="../InstallItems/GalaSoft.MvvmLight.Templates/ProjectTemplates/Win8/MvvmLight.Win8.zip" />
|
||||
</Component>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<Directory Id="ProgramMenuFolder">
|
||||
<Directory Id="ApplicationProgramsFolder"
|
||||
Name="MvvmLight"/>
|
||||
</Directory>
|
||||
</Directory>
|
||||
|
||||
<DirectoryRef Id="ApplicationProgramsFolder">
|
||||
<Component Id="ApplicationShortcut"
|
||||
Guid="{4BB94CF9-DCBC-470B-A8EB-5C6DECC666BD}">
|
||||
<Shortcut Id="BinariesFolderShortcut"
|
||||
Name="Binaries"
|
||||
Description="Go to the Binaries folder"
|
||||
Target="[BINARIES]"
|
||||
WorkingDirectory="BINARIES" />
|
||||
|
||||
<Shortcut Id="UninstallProduct"
|
||||
Name="Uninstall Mvvm Light for Windows 8"
|
||||
Description="Uninstalls MvvmLight (Windows 8 preview edition)"
|
||||
Target="[System64Folder]msiexec.exe"
|
||||
Arguments="/x [ProductCode]"/>
|
||||
|
||||
<RemoveFolder Id="ApplicationProgramsFolder"
|
||||
On="uninstall"/>
|
||||
|
||||
<RegistryValue Root="HKCU"
|
||||
Key="Software\GalaSoft\MvvmLightWin8"
|
||||
Name="installed"
|
||||
Type="integer"
|
||||
Value="1"
|
||||
KeyPath="yes"/>
|
||||
</Component>
|
||||
</DirectoryRef>
|
||||
|
||||
<Feature Id="ProductFeature"
|
||||
Title="MVVM Light Toolkit for Windows 8 (preview)"
|
||||
Level="1"
|
||||
Description="The complete package."
|
||||
Display="expand">
|
||||
|
||||
<ComponentRef Id="ApplicationShortcut" />
|
||||
<ComponentRef Id="PostSetup" />
|
||||
|
||||
<Feature Id="Binaries"
|
||||
Title="Binaries"
|
||||
Level="1"
|
||||
Description="MVVM Light binaries for Windows 8">
|
||||
<ComponentRef Id="Win8BinariesComp" />
|
||||
<!--<ComponentRef Id="AssemblyFoldersExRegistry.SL4" />-->
|
||||
<Condition Level="0">NOT VS11EXISTS AND NOT VS11XEXISTS</Condition>
|
||||
</Feature>
|
||||
|
||||
<Feature Id="TemplatesVS11"
|
||||
Title="VS11 Templates"
|
||||
Level="1"
|
||||
Description="Project Templates for Visual Studio 11 (full version).">
|
||||
<Condition Level="0">NOT VS11EXISTS</Condition>
|
||||
<ComponentRef Id="Vs11ProjectTemplatesCsMetroMvvmWin8Comp" />
|
||||
</Feature>
|
||||
|
||||
<Feature Id="TemplatesVS11x"
|
||||
Level="1"
|
||||
Title="VS11 Express templates"
|
||||
Description="Project Templates for Visual Studio 2011">
|
||||
<Condition Level="0">NOT VS11XEXISTS OR VS11EXISTS</Condition>
|
||||
<ComponentRef Id="Vs11xProjectTemplatesMvvmComp" />
|
||||
</Feature>
|
||||
|
||||
<Feature Id="VSSnippets"
|
||||
Title="Snippets"
|
||||
Level="1"
|
||||
Description="Code snippets for Visual Studio 11"
|
||||
Display="collapse">
|
||||
<ComponentRef Id="SnippetsCsComp" />
|
||||
<Condition Level="0">NOT VS11XEXISTS AND NOT VS11EXISTS</Condition>
|
||||
</Feature>
|
||||
|
||||
<!-- Note: The following ComponentGroupRef is required to pull in generated authoring from project references. -->
|
||||
<ComponentGroupRef Id="Product.Generated" />
|
||||
</Feature>
|
||||
|
||||
<!--Dialog settings-->
|
||||
<UIRef Id="WixUI_FeatureTree" />
|
||||
|
||||
<!--WixUI_FeatureTree is similar to the full set but it doesn't allow the user to chose between setup types. It always assumes Custom and goes directly to the feature customization dialog after the user has accepted the license agreement.-->
|
||||
<UIRef Id="WixUI_ErrorProgressText" />
|
||||
|
||||
<WixVariable Id="WixUILicenseRtf"
|
||||
Value="License.rtf" />
|
||||
|
||||
<!--See http://www.tramontana.co.hu/wix/lesson2.php#2.1-->
|
||||
<WixVariable Id="WixUIBannerBmp"
|
||||
Value="WixUIBannerBmp.bmp" />
|
||||
|
||||
<WixVariable Id="WixUIDialogBmp"
|
||||
Value="WixUIDialogBmp.bmp" />
|
||||
|
||||
<UI>
|
||||
<ProgressText Action="VS11xInstallVSTemplates">Updating VS11 Express Templates</ProgressText>
|
||||
<ProgressText Action="VS11InstallVSTemplates">Updating VS11 Templates</ProgressText>
|
||||
</UI>
|
||||
|
||||
<CustomAction Id='VS11InstallVSTemplates'
|
||||
Execute='deferred'
|
||||
Impersonate='no'
|
||||
ExeCommand='"[VS11INSTALL]\Common7\IDE\devenv.exe" /setup'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<CustomAction Id='VS11xInstallVSTemplates'
|
||||
Execute='deferred'
|
||||
Impersonate='no'
|
||||
ExeCommand='"[VS11XINSTALL]\Common7\IDE\VSWinExpress.exe" /setup'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<CustomAction Id='PostSetupActionVS11User'
|
||||
Execute='deferred'
|
||||
Impersonate='yes'
|
||||
ExeCommand='"[AppDataFolder]\MvvmLight\ModifyRegistryKey.exe" -i11u "[SNIPPETS];'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<CustomAction Id='PostSetupActionVS11Machine'
|
||||
Execute='deferred'
|
||||
Impersonate='no'
|
||||
ExeCommand='"[AppDataFolder]\MvvmLight\ModifyRegistryKey.exe" -i11m "[SNIPPETS];'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<CustomAction Id='PostSetupActionVs11x'
|
||||
Execute='deferred'
|
||||
Impersonate='no'
|
||||
ExeCommand='"[AppDataFolder]\MvvmLight\ModifyRegistryKey.exe" -i11x "[SNIPPETS];[VS11XINSTALL]'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<CustomAction Id='PostRemoveActionUser'
|
||||
Execute='deferred'
|
||||
Impersonate='yes'
|
||||
ExeCommand='"[AppDataFolder]\MvvmLight\ModifyRegistryKey.exe" -uu "[SNIPPETS];'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<CustomAction Id='PostRemoveActionMachine'
|
||||
Execute='deferred'
|
||||
Impersonate='no'
|
||||
ExeCommand='"[AppDataFolder]\MvvmLight\ModifyRegistryKey.exe" -um "[SNIPPETS];'
|
||||
Directory='TARGETDIR' />
|
||||
|
||||
<InstallExecuteSequence>
|
||||
<Custom Action="VS11InstallVSTemplates"
|
||||
After="InstallFiles">VS11EXISTS</Custom>
|
||||
|
||||
<Custom Action="VS11xInstallVSTemplates"
|
||||
After="InstallFiles">VS11XEXISTS AND NOT VS11EXISTS</Custom>
|
||||
|
||||
<Custom Action="PostSetupActionVS11User"
|
||||
After="InstallFiles">(NOT REMOVE) AND (NOT VS11EXISTS)</Custom>
|
||||
|
||||
<Custom Action="PostSetupActionVS11Machine"
|
||||
After="InstallFiles">(NOT REMOVE) AND (NOT VS11EXISTS)</Custom>
|
||||
|
||||
<Custom Action="PostSetupActionVs11x"
|
||||
After="InstallFiles">(NOT REMOVE) AND VS11XEXISTS AND (NOT VS11EXISTS)</Custom>
|
||||
|
||||
<Custom Action="PostRemoveActionUser"
|
||||
Before="RemoveFiles">REMOVE="ALL"</Custom>
|
||||
|
||||
<Custom Action="PostRemoveActionMachine"
|
||||
Before="RemoveFiles">REMOVE="ALL"</Custom>
|
||||
</InstallExecuteSequence>
|
||||
|
||||
<UI />
|
||||
</Product>
|
||||
</Wix>
|
После Ширина: | Высота: | Размер: 84 KiB |
После Ширина: | Высота: | Размер: 451 KiB |
|
@ -0,0 +1,20 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 11
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ModifyRegistryKey", "ModifyRegistryKey\ModifyRegistryKey.csproj", "{4CA15089-2685-498E-B0E1-1B020A63C3E7}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x86 = Debug|x86
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{4CA15089-2685-498E-B0E1-1B020A63C3E7}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{4CA15089-2685-498E-B0E1-1B020A63C3E7}.Debug|x86.Build.0 = Debug|x86
|
||||
{4CA15089-2685-498E-B0E1-1B020A63C3E7}.Release|x86.ActiveCfg = Release|x86
|
||||
{4CA15089-2685-498E-B0E1-1B020A63C3E7}.Release|x86.Build.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,95 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||
<ProductVersion>8.0.30703</ProductVersion>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{4CA15089-2685-498E-B0E1-1B020A63C3E7}</ProjectGuid>
|
||||
<OutputType>Exe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>ModifyRegistryKey</RootNamespace>
|
||||
<AssemblyName>ModifyRegistryKey</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<PublishUrl>publish\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
<InstallFrom>Disk</InstallFrom>
|
||||
<UpdateEnabled>false</UpdateEnabled>
|
||||
<UpdateMode>Foreground</UpdateMode>
|
||||
<UpdateInterval>7</UpdateInterval>
|
||||
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
||||
<UpdatePeriodically>false</UpdatePeriodically>
|
||||
<UpdateRequired>false</UpdateRequired>
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>TRACE;DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Microsoft .NET Framework 4 Client Profile %28x86 and x64%29</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Windows Installer 3.1</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
|
@ -0,0 +1,610 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using Microsoft.Win32;
|
||||
|
||||
namespace ModifyRegistryKey
|
||||
{
|
||||
class Program
|
||||
{
|
||||
#if LOG
|
||||
private static StringBuilder _report = new StringBuilder();
|
||||
#endif
|
||||
|
||||
private const string InstallActionVs11User = "-i11u";
|
||||
private const string InstallActionVs11Machine = "-i11m";
|
||||
private const string InstallActionVs10User = "-i10u";
|
||||
private const string InstallActionVs10Machine = "-i10m";
|
||||
private const string InstallActionVs08User = "-i08u";
|
||||
private const string InstallActionVs08Machine = "-i08m";
|
||||
private const string InstallActionVs10X = "-i10x";
|
||||
private const string InstallActionVs11X = "-i11x";
|
||||
private const string UninstallActionUser = "-uu";
|
||||
private const string UninstallActionMachine = "-um";
|
||||
|
||||
private const string PersonalFolderVs10SnippetsPath = "Visual Studio 2010\\Code Snippets\\Visual C#";
|
||||
private const string PersonalFolderVs11SnippetsPath = "Visual Studio 11\\Code Snippets\\Visual C#";
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs08Machine = new PathInfo
|
||||
{
|
||||
RootKey = Registry.LocalMachine,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\9.0\Languages\CodeExpansions\CSharp\Paths",
|
||||
KeyName = "Microsoft Visual CSharp"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs10Machine = new PathInfo
|
||||
{
|
||||
RootKey = Registry.LocalMachine,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\10.0\Languages\CodeExpansions\CSharp\Paths",
|
||||
KeyName = "Microsoft Visual CSharp"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs11Machine = new PathInfo
|
||||
{
|
||||
RootKey = Registry.LocalMachine,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\11.0\Languages\CodeExpansions\CSharp\Paths",
|
||||
KeyName = "Microsoft Visual CSharp"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs08User = new PathInfo
|
||||
{
|
||||
RootKey = Registry.CurrentUser,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\9.0\Languages\CodeExpansions\csharp",
|
||||
KeyName = "path"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs10User = new PathInfo
|
||||
{
|
||||
RootKey = Registry.CurrentUser,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\10.0\Languages\CodeExpansions\csharp",
|
||||
KeyName = "path"
|
||||
};
|
||||
|
||||
private static readonly PathInfo SnippetsRegistryPathInfoVs11User = new PathInfo
|
||||
{
|
||||
RootKey = Registry.CurrentUser,
|
||||
KeyPath = @"Software\Microsoft\VisualStudio\11.0\Languages\CodeExpansions\Visual C#",
|
||||
KeyName = "path"
|
||||
};
|
||||
|
||||
static void Main(string[] args)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Starting install at ");
|
||||
_report.Append(DateTime.Now.ToShortDateString());
|
||||
_report.Append(DateTime.Now.ToLongTimeString());
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("001: " + args[0]);
|
||||
//Console.ReadLine();
|
||||
|
||||
if (args.Length < 2
|
||||
|| string.IsNullOrEmpty(args[1])
|
||||
|| (args[0] != InstallActionVs11User
|
||||
&& args[0] != InstallActionVs11Machine
|
||||
&& args[0] != InstallActionVs10User
|
||||
&& args[0] != InstallActionVs10Machine
|
||||
&& args[0] != InstallActionVs08User
|
||||
&& args[0] != InstallActionVs08Machine
|
||||
&& args[0] != InstallActionVs10X
|
||||
&& args[0] != InstallActionVs11X
|
||||
&& args[0] != UninstallActionUser
|
||||
&& args[0] != UninstallActionMachine))
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Error when installing");
|
||||
_report.Append(Environment.NewLine);
|
||||
WriteReport();
|
||||
#endif
|
||||
Console.WriteLine("Syntax: ModifyRegistryKey [-i11u|-i11m|-i10u|-i10m|-i10x|-i11x|-i08u|-i08m|-uu|-um] [pathOfSnippetsFolder];[pathOfVsExpress]");
|
||||
Console.ReadLine();
|
||||
return;
|
||||
}
|
||||
|
||||
#if LOG
|
||||
_report.Append(string.Format("Args[0]: {0}", args[0]));
|
||||
_report.Append(Environment.NewLine);
|
||||
_report.Append(string.Format("Args[1]: {0}", args[1]));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Arg 1: " + args[1]);
|
||||
//Console.ReadLine();
|
||||
|
||||
var parsedArgs = args[1].Split(
|
||||
new[]
|
||||
{
|
||||
';'
|
||||
});
|
||||
|
||||
if (args[0] == InstallActionVs10X)
|
||||
{
|
||||
RunInstallVs10X(parsedArgs[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (args[0] == InstallActionVs11X)
|
||||
{
|
||||
RunInstallVs11X(parsedArgs[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (args[0] == UninstallActionUser
|
||||
|| args[0] == UninstallActionMachine)
|
||||
{
|
||||
RunUninstall(args[0], parsedArgs[0]);
|
||||
}
|
||||
else
|
||||
{
|
||||
RunInstall(args[0], parsedArgs[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#if LOG
|
||||
_report.Append("Ending install at ");
|
||||
_report.Append(DateTime.Now.ToShortDateString());
|
||||
_report.Append(DateTime.Now.ToLongTimeString());
|
||||
_report.Append(Environment.NewLine);
|
||||
WriteReport();
|
||||
#endif
|
||||
}
|
||||
|
||||
#if LOG
|
||||
private static void WriteReport()
|
||||
{
|
||||
if (!Directory.Exists("c:\\temp"))
|
||||
{
|
||||
Directory.CreateDirectory("c:\\temp");
|
||||
}
|
||||
|
||||
var appFolder = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
|
||||
|
||||
var logFile = new FileInfo("c:\\temp\\mvvmlightinstall.txt");
|
||||
|
||||
if (logFile.Exists
|
||||
&& logFile.Length > 5000)
|
||||
{
|
||||
logFile.Delete();
|
||||
}
|
||||
|
||||
using (var stream = File.Open("c:\\temp\\mvvmlightinstall.txt", FileMode.Append))
|
||||
{
|
||||
using (var writer = new StreamWriter(stream))
|
||||
{
|
||||
writer.Write(_report.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
private const string MvvmLightFolderName = "MvvmLight";
|
||||
|
||||
private static void RunUninstallVs10X()
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunUninstallVs10X");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunUninstallVs10X");
|
||||
//Console.ReadLine();
|
||||
|
||||
RunUninstallVs10XVs11X(PersonalFolderVs10SnippetsPath);
|
||||
}
|
||||
|
||||
private static void RunUninstallVs11X()
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunUninstallVs11X");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunUninstallVs11X");
|
||||
//Console.ReadLine();
|
||||
|
||||
RunUninstallVs10XVs11X(PersonalFolderVs11SnippetsPath);
|
||||
}
|
||||
|
||||
private static void RunUninstallVs10XVs11X(string personalFolderSnippetsPath)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunUninstallVs10XVS11X");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunInstallVs10x");
|
||||
//Console.ReadLine();
|
||||
|
||||
try
|
||||
{
|
||||
var personalFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
|
||||
var destinationSnippetsRootFolder = Path.Combine(personalFolderPath, personalFolderSnippetsPath);
|
||||
|
||||
if (!Directory.Exists(destinationSnippetsRootFolder))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var allLanguages = Directory.GetDirectories(destinationSnippetsRootFolder);
|
||||
|
||||
foreach (var language in allLanguages)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("In " + language);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("In " + language);
|
||||
//Console.ReadLine();
|
||||
|
||||
var mvvmLightFolderPath = Path.Combine(language, MvvmLightFolderName);
|
||||
|
||||
if (Directory.Exists(mvvmLightFolderPath))
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Deleting " + mvvmLightFolderPath);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Deleting " + mvvmLightFolderPath);
|
||||
//Console.ReadLine();
|
||||
Directory.Delete(mvvmLightFolderPath, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Error when uninstalling snippets for VS Express. Please contact laurent@galasoft.ch. Sorry...");
|
||||
_report.Append(ex.Message);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
Console.WriteLine(
|
||||
"Error when uninstalling snippets for VS Express. Please contact laurent@galasoft.ch. Sorry...");
|
||||
Console.WriteLine(ex.Message);
|
||||
Console.ReadLine();
|
||||
}
|
||||
}
|
||||
|
||||
private static void RunInstallVs10X(string snippetsPath)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunInstallVs10X");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunInstallVs10X");
|
||||
//Console.ReadLine();
|
||||
|
||||
RunInstallVs10XVs11x(snippetsPath, PersonalFolderVs10SnippetsPath);
|
||||
}
|
||||
|
||||
private static void RunInstallVs11X(string snippetsPath)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunInstallVs11X");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunInstallVs11X");
|
||||
//Console.ReadLine();
|
||||
|
||||
RunInstallVs10XVs11x(snippetsPath, PersonalFolderVs11SnippetsPath);
|
||||
}
|
||||
|
||||
private static void RunInstallVs10XVs11x(string snippetsPath, string personalFolderSnippetsPath)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunInstallVs10XVs11x");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunInstallVs10XVs11x");
|
||||
//Console.ReadLine();
|
||||
|
||||
try
|
||||
{
|
||||
var personalFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
|
||||
var destinationSnippetsRootFolder = Path.Combine(personalFolderPath, personalFolderSnippetsPath);
|
||||
|
||||
if (!Directory.Exists(destinationSnippetsRootFolder))
|
||||
{
|
||||
Console.WriteLine("Snippets folder not found. If you have Visual Studio 11 express installed,");
|
||||
Console.WriteLine("you must run it at least once and then re-run this installer.");
|
||||
Console.ReadLine();
|
||||
return;
|
||||
}
|
||||
|
||||
var allLanguages = Directory.GetDirectories(destinationSnippetsRootFolder);
|
||||
|
||||
foreach (var language in allLanguages)
|
||||
{
|
||||
var languageFolder = new DirectoryInfo(Path.Combine(language, MvvmLightFolderName));
|
||||
|
||||
#if LOG
|
||||
_report.Append("In " + languageFolder.FullName);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("In " + languageFolder.FullName);
|
||||
//Console.ReadLine();
|
||||
|
||||
var sourceSnippetsFolders = Directory.GetDirectories(snippetsPath);
|
||||
|
||||
#if LOG
|
||||
_report.Append(string.Format("Found {0} folders in {1}", sourceSnippetsFolders.Length, snippetsPath));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Found {0} folders in {1}", sourceSnippetsFolders.Length, snippetsPath);
|
||||
//Console.ReadLine();
|
||||
|
||||
if (!languageFolder.Exists)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append(string.Format("Creating {0}", languageFolder.FullName));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Creating {0}", languageFolder.FullName);
|
||||
//Console.ReadLine();
|
||||
languageFolder.Create();
|
||||
}
|
||||
|
||||
foreach (var sourceSnippetsFolder in sourceSnippetsFolders)
|
||||
{
|
||||
var snippets = Directory.GetFiles(sourceSnippetsFolder, "*.snippet");
|
||||
#if LOG
|
||||
_report.Append(string.Format("{0} files found in {1}", snippets.Length, snippetsPath));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("{0} files found in {1}", snippets.Length, snippetsPath);
|
||||
//Console.ReadLine();
|
||||
|
||||
foreach (var snippet in snippets)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Copying " + snippet + " to " + language);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Copying " + snippet + " to " + language);
|
||||
//Console.ReadLine();
|
||||
|
||||
var file = new FileInfo(snippet);
|
||||
file.CopyTo(Path.Combine(languageFolder.FullName, file.Name), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Error when installing snippets for VS Express. Please contact laurent@galasoft.ch. Sorry...");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
Console.WriteLine(
|
||||
"Error when installing snippets for VS Express. Please contact laurent@galasoft.ch. Sorry...");
|
||||
Console.WriteLine(ex.Message);
|
||||
Console.ReadLine();
|
||||
}
|
||||
}
|
||||
|
||||
private static void RunInstall(string command, string snippetsPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunInstall");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunInstall");
|
||||
//Console.ReadLine();
|
||||
|
||||
PathInfo pathInfo = null;
|
||||
|
||||
switch (command)
|
||||
{
|
||||
case InstallActionVs11User:
|
||||
pathInfo = SnippetsRegistryPathInfoVs11User;
|
||||
break;
|
||||
case InstallActionVs11Machine:
|
||||
pathInfo = SnippetsRegistryPathInfoVs11Machine;
|
||||
break;
|
||||
case InstallActionVs10User:
|
||||
pathInfo = SnippetsRegistryPathInfoVs10User;
|
||||
break;
|
||||
case InstallActionVs10Machine:
|
||||
pathInfo = SnippetsRegistryPathInfoVs10Machine;
|
||||
break;
|
||||
case InstallActionVs08User:
|
||||
pathInfo = SnippetsRegistryPathInfoVs08User;
|
||||
break;
|
||||
case InstallActionVs08Machine:
|
||||
pathInfo = SnippetsRegistryPathInfoVs08Machine;
|
||||
break;
|
||||
}
|
||||
|
||||
if (pathInfo == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
RegistryKey subKey;
|
||||
var snippetsPaths = GetPath(pathInfo, out subKey);
|
||||
|
||||
if (string.IsNullOrEmpty(snippetsPaths)
|
||||
|| subKey == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (!snippetsPaths.EndsWith(";"))
|
||||
{
|
||||
snippetsPaths = snippetsPaths + ";";
|
||||
}
|
||||
|
||||
if (!snippetsPaths.Contains(snippetsPath))
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("New path: " + snippetsPaths + snippetsPath + ";");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("New path: " + snippetsPaths + snippetsPath + ";");
|
||||
//Console.ReadLine();
|
||||
subKey.SetValue(pathInfo.KeyName, snippetsPaths + snippetsPath + ";");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Error when installing snippets. Please contact laurent@galasoft.ch. Sorry...");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
Console.WriteLine(
|
||||
"Error when installing snippets. Please contact laurent@galasoft.ch. Sorry...");
|
||||
Console.WriteLine(ex.Message);
|
||||
Console.ReadLine();
|
||||
}
|
||||
}
|
||||
|
||||
private static string GetPath(PathInfo pathInfo, out RegistryKey subKey)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append(string.Format(
|
||||
"Checking subKey {0} in {1}",
|
||||
pathInfo.KeyPath,
|
||||
pathInfo.RootKey.Name));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine(
|
||||
// "Checking subKey {0} in {1}",
|
||||
// pathInfo.KeyPath,
|
||||
// pathInfo.RootKey.Name);
|
||||
//Console.ReadLine();
|
||||
|
||||
subKey = pathInfo.RootKey.OpenSubKey(pathInfo.KeyPath, true);
|
||||
|
||||
if (subKey == null)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append(string.Format("subKey == null ({0})", pathInfo.KeyPath));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("subKey == null ({0})", pathInfo.KeyPath);
|
||||
//Console.ReadLine();
|
||||
return null;
|
||||
}
|
||||
|
||||
var path = subKey.GetValue(pathInfo.KeyName);
|
||||
|
||||
if (path == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
#if LOG
|
||||
_report.Append("Old path: " + path);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Old path: " + path);
|
||||
//Console.ReadLine();
|
||||
return path.ToString();
|
||||
}
|
||||
|
||||
private static void RunUninstall(string command, string snippetsPath)
|
||||
{
|
||||
try
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("RunUninstall");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("RunUninstall");
|
||||
//Console.ReadLine();
|
||||
|
||||
var allPathsInfo = new List<PathInfo>();
|
||||
|
||||
switch (command)
|
||||
{
|
||||
case UninstallActionUser:
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs08User);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs10User);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs11User);
|
||||
break;
|
||||
case UninstallActionMachine:
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs08Machine);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs10Machine);
|
||||
allPathsInfo.Add(SnippetsRegistryPathInfoVs11Machine);
|
||||
break;
|
||||
}
|
||||
|
||||
snippetsPath = snippetsPath + ";";
|
||||
|
||||
foreach (var info in allPathsInfo)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append(string.Format("Checking {0}", info.KeyName));
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Checking {0}", info.KeyName);
|
||||
//Console.ReadLine();
|
||||
|
||||
RegistryKey subKey;
|
||||
var snippetsPaths = GetPath(info, out subKey);
|
||||
|
||||
if (string.IsNullOrEmpty(snippetsPaths)
|
||||
|| subKey == null)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Null");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("Null");
|
||||
//Console.ReadLine();
|
||||
continue;
|
||||
}
|
||||
|
||||
if (snippetsPaths.Contains(snippetsPath))
|
||||
{
|
||||
snippetsPaths = snippetsPaths.Replace(snippetsPath, "");
|
||||
#if LOG
|
||||
_report.Append("New path: " + snippetsPaths);
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
//Console.WriteLine("New path: " + snippetsPaths);
|
||||
//Console.ReadLine();
|
||||
subKey.SetValue(info.KeyName, snippetsPaths);
|
||||
}
|
||||
}
|
||||
|
||||
if (command == UninstallActionUser)
|
||||
{
|
||||
RunUninstallVs10X();
|
||||
RunUninstallVs11X();
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
#if LOG
|
||||
_report.Append("Error when installing snippets. Please contact laurent@galasoft.ch. Sorry...");
|
||||
_report.Append(Environment.NewLine);
|
||||
#endif
|
||||
Console.WriteLine(
|
||||
"Error when installing snippets. Please contact laurent@galasoft.ch. Sorry...");
|
||||
Console.WriteLine(ex.Message);
|
||||
Console.ReadLine();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
internal class PathInfo
|
||||
{
|
||||
public RegistryKey RootKey
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
public string KeyPath
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
public string KeyName
|
||||
{
|
||||
get;
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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("ModifyRegistryKey")]
|
||||
[assembly: AssemblyDescription("Post setup action for MVVM Light Toolkit")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("Laurent Bugnion (GalaSoft) laurent@galasoft.ch")]
|
||||
[assembly: AssemblyProduct("ModifyRegistryKey")]
|
||||
[assembly: AssemblyCopyright("Copyright © Laurent Bugnion (GalaSoft) 2011")]
|
||||
[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("af7cef0a-0a37-4f29-b1d0-458ffebf2330")]
|
||||
|
||||
// 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("4.0.0.17")]
|
||||
[assembly: AssemblyFileVersion("4.0.0.17")]
|
|
@ -0,0 +1,3 @@
|
|||
<?xml version="1.0"?>
|
||||
<configuration>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5,Profile=Client"/></startup></configuration>
|
|
@ -0,0 +1,18 @@
|
|||
del /s /ah /f *.suo
|
||||
del /s /f *.user
|
||||
del /s /f *.cache
|
||||
del /s /f *.keep
|
||||
del /s /ah StyleCop.Cache
|
||||
|
||||
rd /s /q bin obj ClientBin _Resharper.* _Upgrade* TestResults
|
||||
|
||||
del dirs.txt
|
||||
dir /s /b /ad bin > dirs.txt
|
||||
dir /s /b /ad obj >> dirs.txt
|
||||
dir /s /b /ad ClientBin >> dirs.txt
|
||||
dir /s /b /ad _Resharper.* >> dirs.txt
|
||||
dir /s /b /ad _Upgrade* >> dirs.txt
|
||||
dir /s /b /ad TestResults >> dirs.txt
|
||||
|
||||
for /f "delims=;" %%i in (dirs.txt) DO rd /s /q "%%i"
|
||||
del dirs.txt
|
|
@ -0,0 +1,22 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 11
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProjectForTemplates.Win8", "ProjectForTemplates.Win8\ProjectForTemplates.Win8.csproj", "{75CCCE90-11AA-405D-A128-FEA952708D15}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{75CCCE90-11AA-405D-A128-FEA952708D15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{75CCCE90-11AA-405D-A128-FEA952708D15}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{75CCCE90-11AA-405D-A128-FEA952708D15}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
|
||||
{75CCCE90-11AA-405D-A128-FEA952708D15}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{75CCCE90-11AA-405D-A128-FEA952708D15}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{75CCCE90-11AA-405D-A128-FEA952708D15}.Release|Any CPU.Deploy.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,19 @@
|
|||
<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
x:Class="ProjectForTemplates.Win8.App"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:vm="using:ProjectForTemplates.ViewModel"
|
||||
mc:Ignorable="d">
|
||||
<Application.Resources>
|
||||
<!--Global View Model Locator-->
|
||||
<vm:ViewModelLocator x:Key="Locator"
|
||||
d:IsDataSource="True" />
|
||||
|
||||
<!--<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="Skins/MainSkin.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>-->
|
||||
</Application.Resources>
|
||||
</Application>
|
|
@ -0,0 +1,21 @@
|
|||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using Windows.ApplicationModel.Activation;
|
||||
using Windows.UI.Xaml;
|
||||
|
||||
namespace ProjectForTemplates.Win8
|
||||
{
|
||||
partial class App
|
||||
{
|
||||
public App()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
protected override void OnLaunched(LaunchActivatedEventArgs args)
|
||||
{
|
||||
Window.Current.Content = new MainPage();
|
||||
Window.Current.Activate();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
using System;
|
||||
using ProjectForTemplates.Model;
|
||||
|
||||
namespace ProjectForTemplates.Design
|
||||
{
|
||||
public class DesignDataService : IDataService
|
||||
{
|
||||
public void GetData(Action<DataItem, Exception> callback)
|
||||
{
|
||||
// Use this to create design time data
|
||||
|
||||
var item = new DataItem("Welcome to MVVM Light [design]");
|
||||
callback(item, null);
|
||||
}
|
||||
}
|
||||
}
|
Двоичные данные
ProjectForTemplates/ProjectForTemplates.Win8/ProjectForTemplates.Win8/Images/Logo.png
Normal file
После Ширина: | Высота: | Размер: 5.7 KiB |
Двоичные данные
ProjectForTemplates/ProjectForTemplates.Win8/ProjectForTemplates.Win8/Images/SmallLogo.png
Normal file
После Ширина: | Высота: | Размер: 745 B |
Двоичные данные
ProjectForTemplates/ProjectForTemplates.Win8/ProjectForTemplates.Win8/Images/SplashScreen.png
Normal file
После Ширина: | Высота: | Размер: 7.0 KiB |
Двоичные данные
ProjectForTemplates/ProjectForTemplates.Win8/ProjectForTemplates.Win8/Images/StoreLogo.png
Normal file
После Ширина: | Высота: | Размер: 1.9 KiB |
|
@ -0,0 +1,22 @@
|
|||
<UserControl x:Class="ProjectForTemplates.Win8.MainPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="768"
|
||||
d:DesignWidth="1366"
|
||||
DataContext="{Binding Main, Source={StaticResource Locator}}">
|
||||
|
||||
<Grid x:Name="LayoutRoot"
|
||||
Background="#FF0C0C0C">
|
||||
|
||||
<TextBlock FontSize="100"
|
||||
Text="{Binding WelcomeTitle}"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Center"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
</Grid>
|
||||
|
||||
</UserControl>
|
|
@ -0,0 +1,19 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Windows.Foundation;
|
||||
using Windows.UI.Xaml;
|
||||
using Windows.UI.Xaml.Controls;
|
||||
using Windows.UI.Xaml.Data;
|
||||
|
||||
namespace ProjectForTemplates.Win8
|
||||
{
|
||||
partial class MainPage
|
||||
{
|
||||
public MainPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace ProjectForTemplates.Model
|
||||
{
|
||||
public class DataItem
|
||||
{
|
||||
public DataItem(string title)
|
||||
{
|
||||
Title = title;
|
||||
}
|
||||
|
||||
public string Title
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
}
|
||||
}
|