зеркало из
1
0
Форкнуть 0
This commit is contained in:
Charlie Poole 2016-09-26 18:15:49 -07:00
Родитель 03c79b9da2
Коммит 976754fc51
49 изменённых файлов: 4547 добавлений и 0 удалений

181
.gitignore поставляемый Normal file
Просмотреть файл

@ -0,0 +1,181 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.sln.docstates
# Build results
[Dd]ebug/
[Rr]elease/
x64/
build/
[Bb]in/
[Oo]bj/
.vs/
tools/Cake
# Enable "build/" folder in the NuGet Packages folder since NuGet packages use it for MSBuild targets
!packages/*/build/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.log
*.scc
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile
# Visual Studio profiler
*.psess
*.vsp
*.vspx
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
*.ncrunch*
.*crunch*.local.xml
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.Publish.xml
# NuGet Packages Directory
packages/
# Windows Azure Build Output
csx
*.build.csdef
# Windows Store app package directory
AppPackages/
# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.[Pp]ublish.xml
*.pfx
*.publishsettings
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
App_Data/*.mdf
App_Data/*.ldf
#LightSwitch generated files
GeneratedArtifacts/
_Pvt_Extensions/
ModelManifest.xml
# =========================
# Windows detritus
# =========================
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Mac desktop service store files
.DS_Store
# =========================
# NUnit Specific
# =========================
.~
*.userprefs
*.StyleCop
*.sdf
GeneratedAssemblyInfo.cs
StyleCop.Cache
local.settings.include
InternalTrace.txt
TestResult.xml
testCaseCollection.xml
deploy
lib
test-results
package
images
MockAssemblyResult.xml
PortabilityAnalysis*.html
tools
!tools/packages.config

20
LICENSE.txt Normal file
Просмотреть файл

@ -0,0 +1,20 @@
Copyright (c) 2016 Charlie Poole
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, merge, 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:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
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 NO 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.

8
NuGet.config Normal file
Просмотреть файл

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="NUNit MyGet Feed" value="https://www.myget.org/F/nunit/api/v2" />
<add key="nuget.org" value="https://www.nuget.org/api/v2/" />
<add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>
</configuration>

12
appveyor.yml Normal file
Просмотреть файл

@ -0,0 +1,12 @@
version: 3.5.{build}
image: Visual Studio 2015
build_script:
- ps: .\build.ps1 -Target "Appveyor"
# disable built-in tests.
test: off
artifacts:
- path: package\*.nupkg
- path: package\*.zip

2
build Normal file
Просмотреть файл

@ -0,0 +1,2 @@
#!/bin/bash
./build.sh $CAKE_ARGS "$@"

162
build.cake Normal file
Просмотреть файл

@ -0,0 +1,162 @@
#tool nuget:?package=NUnit.ConsoleRunner&version=3.4.1
//////////////////////////////////////////////////////////////////////
// ARGUMENTS
//////////////////////////////////////////////////////////////////////
var target = Argument("target", "Default");
var configuration = Argument("configuration", "Debug");
//////////////////////////////////////////////////////////////////////
// SET PACKAGE VERSION
//////////////////////////////////////////////////////////////////////
var version = "3.5.0";
var modifier = "";
var dbgSuffix = configuration == "Debug" ? "-dbg" : "";
var packageVersion = version + modifier + dbgSuffix;
if (BuildSystem.IsRunningOnAppVeyor)
{
var tag = AppVeyor.Environment.Repository.Tag;
if (tag.IsTag)
{
packageVersion = tag.Name;
}
else
{
var buildNumber = AppVeyor.Environment.Build.Number.ToString("00000");
var branch = AppVeyor.Environment.Repository.Branch;
var isPullRequest = AppVeyor.Environment.PullRequest.IsPullRequest;
if (branch == "master" && !isPullRequest)
{
packageVersion = version + "-dev-" + buildNumber + dbgSuffix;
}
else
{
var suffix = "-ci-" + buildNumber + dbgSuffix;
if (isPullRequest)
suffix += "-pr-" + AppVeyor.Environment.PullRequest.Number;
else
suffix += "-" + branch;
// Nuget limits "special version part" to 20 chars. Add one for the hyphen.
if (suffix.Length > 21)
suffix = suffix.Substring(0, 21);
suffix = suffix.Replace(".", "");
packageVersion = version + suffix;
}
}
AppVeyor.UpdateBuildVersion(packageVersion);
}
var packageName = "NUnitV2Driver-" + packageVersion;
//////////////////////////////////////////////////////////////////////
// DEFINE RUN CONSTANTS
//////////////////////////////////////////////////////////////////////
// Directories
var PROJECT_DIR = Context.Environment.WorkingDirectory.FullPath + "/";
var PACKAGE_DIR = PROJECT_DIR + "package/";
var BIN_DIR = PROJECT_DIR + "bin/" + configuration + "/";
// Files
var SOLUTION_FILE = PROJECT_DIR + "vs-project-loader.sln";
var UNIT_TESTS = BIN_DIR + "vs-project-loader.tests.dll";
//var INTEGRATION_TESTS = BIN_DIR + "v2-tests/v2-test-assembly.dll";
//////////////////////////////////////////////////////////////////////
// CLEAN
//////////////////////////////////////////////////////////////////////
Task("Clean")
.Does(() =>
{
CleanDirectory(BIN_DIR);
});
//////////////////////////////////////////////////////////////////////
// INITIALIZE FOR BUILD
//////////////////////////////////////////////////////////////////////
Task("NuGetRestore")
.Does(() =>
{
NuGetRestore(SOLUTION_FILE);
});
//////////////////////////////////////////////////////////////////////
// BUILD
//////////////////////////////////////////////////////////////////////
Task("Build")
.IsDependentOn("NuGetRestore")
.Does(() =>
{
DotNetBuild(SOLUTION_FILE, settings => settings
.WithTarget("Build")
.SetConfiguration(configuration)
.SetVerbosity(Verbosity.Minimal)
);
});
//////////////////////////////////////////////////////////////////////
// TEST
//////////////////////////////////////////////////////////////////////
Task("Test")
.IsDependentOn("Build")
.Does(() =>
{
NUnit3(UNIT_TESTS);
//NUnit3(INTEGRATION_TESTS);
});
//////////////////////////////////////////////////////////////////////
// PACKAGE
//////////////////////////////////////////////////////////////////////
Task("Package")
.IsDependentOn("Build")
.Does(() =>
{
CreateDirectory(PACKAGE_DIR);
NuGetPack("nunit.v2.driver.nuspec", new NuGetPackSettings()
{
Version = packageVersion,
BasePath = BIN_DIR,
OutputDirectory = PACKAGE_DIR
});
});
//////////////////////////////////////////////////////////////////////
// TASK TARGETS
//////////////////////////////////////////////////////////////////////
Task("Rebuild")
.IsDependentOn("Clean")
.IsDependentOn("Build");
Task("Appveyor")
.IsDependentOn("Build")
.IsDependentOn("Test")
.IsDependentOn("Package");
Task("Default")
.IsDependentOn("Build");
//////////////////////////////////////////////////////////////////////
// EXECUTION
//////////////////////////////////////////////////////////////////////
RunTarget(target);

2
build.cmd Normal file
Просмотреть файл

@ -0,0 +1,2 @@
@echo off
powershell ./build.ps1 %CAKE_ARGS% %*

145
build.ps1 Normal file
Просмотреть файл

@ -0,0 +1,145 @@
##########################################################################
# This is the Cake bootstrapper script for PowerShell.
# This file was downloaded from https://github.com/cake-build/resources
# Feel free to change this file to fit your needs.
##########################################################################
<#
.SYNOPSIS
This is a Powershell script to bootstrap a Cake build.
.DESCRIPTION
This Powershell script will download NuGet if missing, restore NuGet tools (including Cake)
and execute your Cake build script with the parameters you provide.
.PARAMETER Script
The build script to execute.
.PARAMETER Target
The build script target to run.
.PARAMETER Configuration
The build configuration to use.
.PARAMETER Verbosity
Specifies the amount of information to be displayed.
.PARAMETER Experimental
Tells Cake to use the latest Roslyn release.
.PARAMETER WhatIf
Performs a dry run of the build script.
No tasks will be executed.
.PARAMETER Mono
Tells Cake to use the Mono scripting engine.
.PARAMETER SkipToolPackageRestore
Skips restoring of packages.
.PARAMETER ScriptArgs
Remaining arguments are added here.
.LINK
http://cakebuild.net
#>
[CmdletBinding()]
Param(
[string]$Script = "build.cake",
[string]$Target = "Default",
[string]$Configuration = "Release",
[ValidateSet("Quiet", "Minimal", "Normal", "Verbose", "Diagnostic")]
[string]$Verbosity = "Verbose",
[switch]$Experimental,
[Alias("DryRun","Noop")]
[switch]$WhatIf,
[switch]$Mono,
[switch]$SkipToolPackageRestore,
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
[string[]]$ScriptArgs
)
Write-Host "Preparing to run build script..."
$PSScriptRoot = split-path -parent $MyInvocation.MyCommand.Definition;
$TOOLS_DIR = Join-Path $PSScriptRoot "tools"
$NUGET_EXE = Join-Path $TOOLS_DIR "nuget.exe"
$NUGET_URL = "http://dist.nuget.org/win-x86-commandline/latest/nuget.exe"
$CAKE_EXE = Join-Path $TOOLS_DIR "Cake/Cake.exe"
$PACKAGES_CONFIG = Join-Path $TOOLS_DIR "packages.config"
# Should we use mono?
$UseMono = "";
if($Mono.IsPresent) {
Write-Verbose -Message "Using the Mono based scripting engine."
$UseMono = "-mono"
}
# Should we use the new Roslyn?
$UseExperimental = "";
if($Experimental.IsPresent -and !($Mono.IsPresent)) {
Write-Verbose -Message "Using experimental version of Roslyn."
$UseExperimental = "-experimental"
}
# Is this a dry run?
$UseDryRun = "";
if($WhatIf.IsPresent) {
$UseDryRun = "-dryrun"
}
# Make sure tools folder exists
if ((Test-Path $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) {
Write-Verbose -Message "Creating tools directory..."
New-Item -Path $TOOLS_DIR -Type directory | out-null
}
# Make sure that packages.config exist.
if (!(Test-Path $PACKAGES_CONFIG)) {
Write-Verbose -Message "Downloading packages.config..."
try { Invoke-WebRequest -Uri http://cakebuild.net/download/bootstrapper/packages -OutFile $PACKAGES_CONFIG } catch {
Throw "Could not download packages.config."
}
}
# Try find NuGet.exe in path if not exists
if (!(Test-Path $NUGET_EXE)) {
Write-Verbose -Message "Trying to find nuget.exe in PATH..."
$existingPaths = $Env:Path -Split ';' | Where-Object { (![string]::IsNullOrEmpty($_)) -and (Test-Path $_) }
$NUGET_EXE_IN_PATH = Get-ChildItem -Path $existingPaths -Filter "nuget.exe" | Select -First 1
if ($NUGET_EXE_IN_PATH -ne $null -and (Test-Path $NUGET_EXE_IN_PATH.FullName)) {
Write-Verbose -Message "Found in PATH at $($NUGET_EXE_IN_PATH.FullName)."
$NUGET_EXE = $NUGET_EXE_IN_PATH.FullName
}
}
# Try download NuGet.exe if not exists
if (!(Test-Path $NUGET_EXE)) {
Write-Verbose -Message "Downloading NuGet.exe..."
try {
(New-Object System.Net.WebClient).DownloadFile($NUGET_URL, $NUGET_EXE)
} catch {
Throw "Could not download NuGet.exe."
}
}
# Save nuget.exe path to environment to be available to child processed
$ENV:NUGET_EXE = $NUGET_EXE
# Restore tools from NuGet?
if(-Not $SkipToolPackageRestore.IsPresent) {
Push-Location
Set-Location $TOOLS_DIR
Write-Verbose -Message "Restoring tools from NuGet..."
$NuGetOutput = Invoke-Expression "&`"$NUGET_EXE`" install -ExcludeVersion -OutputDirectory `"$TOOLS_DIR`""
if ($LASTEXITCODE -ne 0) {
Throw "An error occured while restoring NuGet tools."
}
Write-Verbose -Message ($NuGetOutput | out-string)
Pop-Location
}
# Make sure that Cake has been installed.
if (!(Test-Path $CAKE_EXE)) {
Throw "Could not find Cake.exe at $CAKE_EXE"
}
# Start Cake
Write-Host "Running build script..."
Invoke-Expression "& `"$CAKE_EXE`" `"$Script`" -target=`"$Target`" -configuration=`"$Configuration`" -verbosity=`"$Verbosity`" $UseMono $UseDryRun $UseExperimental $ScriptArgs"
exit $LASTEXITCODE

73
build.sh Normal file
Просмотреть файл

@ -0,0 +1,73 @@
#!/bin/bash
###############################################################
# This is the Cake bootstrapper script that is responsible for
# downloading Cake and all specified tools from NuGet.
###############################################################
# Define directories.
SCRIPT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
TOOLS_DIR=$SCRIPT_DIR/tools
NUGET_EXE=$TOOLS_DIR/nuget.exe
CAKE_EXE=$TOOLS_DIR/Cake/Cake.exe
NUNIT_CONSOLE_EXE=$TOOLS_DIR/NUnit.ConsoleRunner/tools/nunit3-console.exe
NUNIT_AGENT_EXE=$TOOLS_DIR/NUnit.ConsoleRunner/tools/nunit-agent.exe
NUNIT_AGENT_X86_EXE=$TOOLS_DIR/NUnit.ConsoleRunner/tools/nunit-agent-x86.exe
# Define default arguments.
SCRIPT="build.cake"
TARGET="Default"
CONFIGURATION="Release"
VERBOSITY="verbose"
DRYRUN=false
SHOW_VERSION=false
# Parse arguments.
for i in "$@"; do
case $1 in
-s|--script) SCRIPT="$2"; shift ;;
-t|--target) TARGET="$2"; shift ;;
-c|--configuration) CONFIGURATION="$2"; shift ;;
-v|--verbosity) VERBOSITY="$2"; shift ;;
-d|--dryrun) DRYRUN=true ;;
--version) SHOW_VERSION=true ;;
esac
shift
done
chmod +x $NUNIT_CONSOLE_EXE
chmod +x $NUNIT_AGENT_EXE
chmod +x $NUNIT_AGENT_X86_EXE
# Download NuGet if it does not exist.
if [ ! -f $NUGET_EXE ]; then
echo "Downloading NuGet..."
curl -Lsfo $NUGET_EXE https://www.nuget.org/nuget.exe
chmod +x $NUGET_EXE
if [ $? -ne 0 ]; then
echo "An error occured while downloading nuget.exe."
exit 1
fi
fi
# Restore tools from NuGet.
pushd $TOOLS_DIR >/dev/null
mono $NUGET_EXE install -ExcludeVersion
popd >/dev/null
# Make sure that Cake has been installed.
if [ ! -f $CAKE_EXE ]; then
echo "Could not find Cake.exe."
exit 1
fi
# Start Cake
if $SHOW_VERSION; then
mono $CAKE_EXE -version
elif $DRYRUN; then
mono $CAKE_EXE $SCRIPT -verbosity=$VERBOSITY -configuration=$CONFIGURATION -target=$TARGET -dryrun
else
mono $CAKE_EXE $SCRIPT -verbosity=$VERBOSITY -configuration=$CONFIGURATION -target=$TARGET
fi
exit $?

Просмотреть файл

@ -0,0 +1,27 @@
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("vs-project-loader")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("vs-project-loader")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[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("202d01de-2164-40a2-8dda-693d6c9b8395")]
// Set the version of the extension
[assembly: AssemblyVersion("3.5.0.0")]
[assembly: AssemblyFileVersion("3.5.0.0")]

447
src/extension/VSProject.cs Normal file
Просмотреть файл

@ -0,0 +1,447 @@
// ***********************************************************************
// Copyright (c) 2002-2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
using System;
using System.Collections.Generic;
using System.IO;
using System.Xml;
using System.Text.RegularExpressions;
using NUnit.Engine.Extensibility;
namespace NUnit.Engine.Services.ProjectLoaders
{
/// <summary>
/// This class allows loading information about
/// configurations and assemblies in a Visual
/// Studio project file and inspecting them.
/// Only the most common project types are
/// supported and an exception is thrown if
/// an attempt is made to load an invalid
/// file or one of an unknown type.
/// </summary>
public class VSProject : IProject
{
#region Static and Instance Variables
/// <summary>
/// VS Project extentions
/// </summary>
private static readonly string[] PROJECT_EXTENSIONS = { ".csproj", ".vbproj", ".vjsproj", ".vcproj", ".fsproj" };
/// <summary>
/// VS Solution extension
/// </summary>
private const string SOLUTION_EXTENSION = ".sln";
/// <summary>
/// The XML representation of the project
/// </summary>
private XmlDocument _doc;
/// <summary>
/// The list of all our configs
/// </summary>
private IDictionary<string, ProjectConfig> _configs = new Dictionary<string, ProjectConfig>();
#endregion
#region Constructor
public VSProject( string projectPath )
{
ProjectPath = Path.GetFullPath( projectPath );
Load();
}
#endregion
#region IProject Members
/// <summary>
/// The path to the project
/// </summary>
public string ProjectPath { get; private set; }
public XmlDocument MsBuildDocument { get; private set; }
/// <summary>
/// Gets the active configuration, as defined
/// by the particular project. For a VS
/// project, we use the first config found.
/// </summary>
public string ActiveConfigName
{
get
{
var names = ConfigNames;
return names.Count > 0 ? names[0] : null;
}
}
public IList<string> ConfigNames
{
get
{
var names = new List<string>();
foreach (var name in _configs.Keys)
names.Add(name);
return names;
}
}
public TestPackage GetTestPackage()
{
return GetTestPackage(null);
}
public TestPackage GetTestPackage(string configName)
{
TestPackage package = new TestPackage(ProjectPath);
string appbase = null;
foreach (var name in _configs.Keys)
{
if (configName == null || configName == name)
{
var config = _configs[name];
package.AddSubPackage(new TestPackage(config.AssemblyPath));
appbase = config.OutputDirectory;
break;
}
}
if (appbase != null)
package.AddSetting("BasePath", appbase);
return package;
}
#endregion
#region Other Properties
/// <summary>
/// The name of the project.
/// </summary>
public string Name
{
get { return Path.GetFileNameWithoutExtension( ProjectPath ); }
}
#endregion
#region Public Methods
public static bool IsProjectFile( string path )
{
if (path.IndexOfAny(Path.GetInvalidPathChars()) >= 0)
return false;
if ( path.ToLower().IndexOf( "http:" ) >= 0 )
return false;
string extension = Path.GetExtension( path );
foreach( string validExtension in PROJECT_EXTENSIONS )
if ( extension == validExtension )
return true;
return false;
}
public static bool IsSolutionFile( string path )
{
return Path.GetExtension( path ) == SOLUTION_EXTENSION;
}
#endregion
#region Helper Methods
/// <summary>
/// Load a project in various ways, depending on the extension.
/// </summary>
private void Load()
{
if ( !IsProjectFile( ProjectPath ) )
ThrowInvalidFileType( ProjectPath );
StreamReader rdr = new StreamReader(ProjectPath, System.Text.Encoding.UTF8);
try
{
_doc = new XmlDocument();
_doc.Load( rdr );
string extension = Path.GetExtension( ProjectPath );
switch ( extension )
{
case ".csproj":
case ".vbproj":
case ".vjsproj":
case ".fsproj":
// We try legacy projects first, as the initial check is simplest
if (!TryLoadLegacyProject())
LoadMSBuildProject();
break;
case ".vcproj":
LoadLegacyCppProject();
break;
default:
break;
}
}
catch (FileNotFoundException)
{
throw;
}
catch (Exception e)
{
ThrowInvalidFormat(ProjectPath, e);
}
finally
{
rdr.Close();
}
}
/// <summary>
/// Load a project in the legacy VS2003 format. Note that this method is not
/// called for C++ projects using the same format, because the details differ.
/// </summary>
/// <returns>True if this project is in the VS2003 format, otherwise false.</returns>
private bool TryLoadLegacyProject()
{
XmlNode settingsNode = _doc.SelectSingleNode("/VisualStudioProject/*/Build/Settings");
if (settingsNode == null)
return false;
string assemblyName = RequiredAttributeValue(settingsNode, "AssemblyName");
string outputType = RequiredAttributeValue(settingsNode, "OutputType");
if (outputType == "Exe" || outputType == "WinExe")
assemblyName = assemblyName + ".exe";
else
assemblyName = assemblyName + ".dll";
XmlNodeList nodes = settingsNode.SelectNodes("Config");
if (nodes != null)
foreach (XmlNode configNode in nodes)
{
string name = RequiredAttributeValue(configNode, "Name");
string outputPath = RequiredAttributeValue(configNode, "OutputPath");
_configs.Add(name, new ProjectConfig(this, name, outputPath, assemblyName));
}
return true;
}
/// <summary>
/// Load a non-C++ project in the MsBuild format introduced with VS2005
/// </summary>
private void LoadMSBuildProject()
{
XmlNamespaceManager namespaceManager = new XmlNamespaceManager(_doc.NameTable);
namespaceManager.AddNamespace("msbuild", "http://schemas.microsoft.com/developer/msbuild/2003");
XmlNodeList nodes = _doc.SelectNodes("/msbuild:Project/msbuild:PropertyGroup", namespaceManager);
if (nodes == null) return;
MsBuildDocument = _doc;
XmlElement assemblyNameElement = (XmlElement)_doc.SelectSingleNode("/msbuild:Project/msbuild:PropertyGroup/msbuild:AssemblyName", namespaceManager);
string assemblyName = assemblyNameElement.InnerText;
XmlElement outputTypeElement = (XmlElement)_doc.SelectSingleNode("/msbuild:Project/msbuild:PropertyGroup/msbuild:OutputType", namespaceManager);
string outputType = outputTypeElement.InnerText;
if (outputType == "Exe" || outputType == "WinExe")
assemblyName = assemblyName + ".exe";
else
assemblyName = assemblyName + ".dll";
string commonOutputPath = null;
foreach (XmlElement configNode in nodes)
{
string name = GetConfigNameFromCondition(configNode);
XmlElement outputPathElement = (XmlElement)configNode.SelectSingleNode("msbuild:OutputPath", namespaceManager);
string outputPath = null;
if (outputPathElement != null)
outputPath = outputPathElement.InnerText;
if (name == null)
{
commonOutputPath = outputPath;
continue;
}
if (outputPath == null)
outputPath = commonOutputPath;
if (outputPath != null)
_configs.Add(name, new ProjectConfig(this, name, outputPath, assemblyName));
}
}
/// <summary>
/// Load a C++ project in the legacy format, which was used for C++
/// much longer than it was used for the other languages supported.
/// </summary>
private void LoadLegacyCppProject()
{
string[] extensionsByConfigType = { "", ".exe", ".dll", ".lib", "" };
// TODO: This is all very hacked up... replace it.
foreach (XmlNode configNode in _doc.SelectNodes("/VisualStudioProject/Configurations/Configuration"))
{
string name = RequiredAttributeValue(configNode, "Name");
int config_type = System.Convert.ToInt32(RequiredAttributeValue(configNode, "ConfigurationType"));
string dirName = name;
int bar = dirName.IndexOf('|');
if (bar >= 0)
dirName = dirName.Substring(0, bar);
string outputPath = RequiredAttributeValue(configNode, "OutputDirectory");
outputPath = outputPath.Replace("$(SolutionDir)", Path.GetFullPath(Path.GetDirectoryName(ProjectPath)) + Path.DirectorySeparatorChar);
outputPath = outputPath.Replace("$(ConfigurationName)", dirName);
XmlNode toolNode = configNode.SelectSingleNode("Tool[@Name='VCLinkerTool']");
string assemblyName = null;
if (toolNode != null)
{
assemblyName = SafeAttributeValue(toolNode, "OutputFile");
if (assemblyName != null)
assemblyName = Path.GetFileName(assemblyName);
else
assemblyName = Path.GetFileNameWithoutExtension(ProjectPath) + extensionsByConfigType[config_type];
}
else
{
toolNode = configNode.SelectSingleNode("Tool[@Name='VCNMakeTool']");
if (toolNode != null)
assemblyName = Path.GetFileName(RequiredAttributeValue(toolNode, "Output"));
}
assemblyName = assemblyName.Replace("$(OutDir)", outputPath);
assemblyName = assemblyName.Replace("$(ProjectName)", Name);
_configs.Add(name, new ProjectConfig(this, name, outputPath, assemblyName));
}
}
private void ThrowInvalidFileType(string projectPath)
{
throw new ArgumentException(
string.Format("Invalid project file type: {0}",
Path.GetFileName(projectPath)));
}
private void ThrowInvalidFormat(string projectPath, Exception e)
{
throw new ArgumentException(
string.Format("Invalid project file format: {0}",
Path.GetFileName(projectPath)), e);
}
private string SafeAttributeValue(XmlNode node, string attrName)
{
XmlNode attrNode = node.Attributes[attrName];
return attrNode == null ? null : attrNode.Value;
}
private string RequiredAttributeValue(XmlNode node, string name)
{
string result = SafeAttributeValue(node, name);
if (result != null)
return result;
throw new ApplicationException("Missing required attribute " + name);
}
private static string GetConfigNameFromCondition(XmlElement configNode)
{
string configurationName = null;
XmlAttribute conditionAttribute = configNode.Attributes["Condition"];
if (conditionAttribute != null)
{
string condition = conditionAttribute.Value;
if (condition.IndexOf("$(Configuration)") >= 0)
{
int start = condition.IndexOf("==");
if (start >= 0)
{
configurationName = condition.Substring(start + 2).Trim(new char[] { ' ', '\'' });
if (configurationName.EndsWith("|AnyCPU"))
configurationName = configurationName.Substring(0, configurationName.Length - 7);
}
}
}
return configurationName;
}
#endregion
#region Nested ProjectConfig Class
private class ProjectConfig
{
private IProject _project;
private string _outputPath;
private string _assemblyName;
public ProjectConfig(IProject project, string name, string outputPath, string assemblyName)
{
_project = project;
_outputPath = outputPath;
_assemblyName = assemblyName;
}
public string OutputDirectory
{
get { return Normalize(Path.Combine(Path.GetDirectoryName(_project.ProjectPath), _outputPath)); }
}
public string AssemblyPath
{
get { return Normalize(Path.Combine(OutputDirectory, _assemblyName)); }
}
private static string Normalize(string path)
{
char sep = Path.DirectorySeparatorChar;
if (sep != '\\')
path = path.Replace('\\', sep);
return path;
}
}
#endregion
}
}

229
src/extension/VSSolution.cs Normal file
Просмотреть файл

@ -0,0 +1,229 @@
// ***********************************************************************
// Copyright (c) 2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Xml;
using NUnit.Engine.Extensibility;
namespace NUnit.Engine.Services.ProjectLoaders
{
public class VSSolution : IProject
{
static readonly char[] DELIMS = { '=', ',' };
static readonly char[] TRIM_CHARS = { ' ', '"' };
const string BUILD_MARKER = ".Build.0 =";
IDictionary<string, VSProject> _projectLookup = new Dictionary<string, VSProject>();
IDictionary<string, SolutionConfig> _configs = new Dictionary<string, SolutionConfig>();
#region Constructor
public VSSolution(string projectPath)
{
ProjectPath = Path.GetFullPath(projectPath);
Load();
}
#endregion
#region IProject Members
/// <summary>
/// The path to the project
/// </summary>
public string ProjectPath { get; private set; }
public string ActiveConfigName
{
get
{
var names = ConfigNames;
return names.Count > 0 ? names[0] : null;
}
}
public IList<string> ConfigNames
{
get
{
var names = new List<string>();
foreach (var name in _configs.Keys)
names.Add(name);
return names;
}
}
public TestPackage GetTestPackage()
{
return GetTestPackage(null);
}
public TestPackage GetTestPackage(string configName)
{
var package = new TestPackage(ProjectPath);
foreach (var name in _configs.Keys)
{
if (configName == null || configName == name)
{
var config = _configs[name];
foreach (string assembly in config.Assemblies)
{
package.AddSubPackage(new TestPackage(assembly));
}
break;
}
}
return package;
}
#endregion
#region HelperMethods
private void Load()
{
string solutionDirectory = Path.GetDirectoryName(ProjectPath);
using (StreamReader reader = new StreamReader(ProjectPath))
{
string line = reader.ReadLine();
while (line != null)
{
if (line.StartsWith("Project("))
{
string[] parts = line.Split(DELIMS);
string vsProjectPath = parts[2].Trim(TRIM_CHARS);
string vsProjectGuid = parts[3].Trim(TRIM_CHARS);
if (VSProject.IsProjectFile(vsProjectPath))
{
var vsProject = new VSProject(Path.Combine(solutionDirectory, vsProjectPath));
if (CheckProjectReferencesNunit(vsProject))
_projectLookup[vsProjectGuid] = vsProject;
}
}
else if (line.IndexOf(BUILD_MARKER) >= 0)
{
line = line.Trim();
int endBrace = line.IndexOf('}');
string vsProjectGuid = line.Substring(0, endBrace + 1);
VSProject vsProject;
if (_projectLookup.TryGetValue(vsProjectGuid, out vsProject))
{
line = line.Substring(endBrace + 2);
int split = line.IndexOf(BUILD_MARKER) + 1;
string solutionConfig = line.Substring(0, split - 1);
int bar = solutionConfig.IndexOf('|');
if (bar >= 0)
solutionConfig = solutionConfig.Substring(0, bar);
string projectConfig = line.Substring(split + BUILD_MARKER.Length);
if (!vsProject.ConfigNames.Contains(projectConfig))
{
bar = projectConfig.IndexOf('|');
if (bar >= 0)
projectConfig = projectConfig.Substring(0, bar);
}
SolutionConfig config = null;
if (_configs.ContainsKey(solutionConfig))
config = _configs[solutionConfig];
else
{
config = new SolutionConfig(solutionConfig);
_configs.Add(solutionConfig, config);
}
foreach (var subPackage in vsProject.GetTestPackage(projectConfig).SubPackages)
if (!config.Assemblies.Contains(subPackage.FullName))
config.Assemblies.Add(subPackage.FullName);
//if (VSProject.IsProjectFile(vsProjectPath))
// project.Add(new VSProject(Path.Combine(solutionDirectory, vsProjectPath)));
}
}
line = reader.ReadLine();
}
}
}
private bool CheckProjectReferencesNunit(VSProject vsProject)
{
if (vsProject.MsBuildDocument == null)
return true;
var doc = vsProject.MsBuildDocument;
var namespaceManager = new XmlNamespaceManager(doc.NameTable);
namespaceManager.AddNamespace("msbuild", "http://schemas.microsoft.com/developer/msbuild/2003");
var hasNunitReference =
doc.SelectNodes("/msbuild:Project/msbuild:ItemGroup/msbuild:Reference[@Include]", namespaceManager);
if (hasNunitReference == null)
return false;
foreach (XmlNode reference in hasNunitReference)
{
if (reference.Attributes != null)
{
var value = reference.Attributes["Include"].Value.ToUpper();
if (value.StartsWith("NUNIT.FRAMEWORK"))
return true;
}
}
return false;
}
#endregion
#region Nested SolutionConfig Class
private class SolutionConfig
{
public SolutionConfig(string name)
{
Name = name;
Assemblies = new List<string>();
}
public string Name { get; private set; }
public IList<string> Assemblies { get; private set; }
}
#endregion
}
}

Просмотреть файл

@ -0,0 +1,63 @@
// ***********************************************************************
// Copyright (c) 2008-2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
using System;
using System.Collections;
using System.IO;
using NUnit.Engine.Extensibility;
namespace NUnit.Engine.Services.ProjectLoaders
{
/// <summary>
/// Summary description for VSProjectLoader.
/// </summary>
[Extension]
[ExtensionProperty("FileExtension", ".sln")]
[ExtensionProperty("FileExtension", ".csproj")]
[ExtensionProperty("FileExtension", ".vbproj")]
[ExtensionProperty("FileExtension", ".vjsproj")]
[ExtensionProperty("FileExtension", ".vcproj")]
[ExtensionProperty("FileExtension", ".fsproj")]
public class VisualStudioProjectLoader : IProjectLoader
{
#region IProjectLoader Members
public bool CanLoadFrom(string path)
{
return VSProject.IsProjectFile(path)|| VSProject.IsSolutionFile(path);
}
public IProject LoadFrom(string path)
{
if (VSProject.IsProjectFile(path))
return new VSProject(path);
if (VSProject.IsSolutionFile(path))
return new VSSolution(path);
return null;
}
#endregion
}
}

Просмотреть файл

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NUnit.Engine.Api" version="3.5.0-dev-03211" targetFramework="net20" />
</packages>

Просмотреть файл

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{96181317-7B6F-49F0-B283-6E804D41C8AF}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>NUnit.Engine.Services.ProjectLoaders</RootNamespace>
<AssemblyName>vs-project-loader</AssemblyName>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>..\..\bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.engine.api, Version=3.0.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnit.Engine.Api.3.5.0-dev-03211\lib\nunit.engine.api.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="VisualStudioProjectLoader.cs" />
<Compile Include="VSProject.cs" />
<Compile Include="VSSolution.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.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,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("tests")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("tests")]
[assembly: AssemblyCopyright("Copyright © 2016")]
[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("ea3cb73c-bd18-4274-943e-67cf1dae8b9e")]
// 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,85 @@
// ***********************************************************************
// Copyright (c) 2007-2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
namespace NUnit.Engine.Tests
{
using System;
using System.IO;
public class TempResourceFile : IDisposable
{
static readonly string TEMP_PATH = System.IO.Path.GetTempPath();
public string Path { get; private set; }
public bool IsRelativeToTempPath { get; private set; }
public TempResourceFile(Type type, string name) : this(type, name, null) {}
public TempResourceFile(Type type, string name, string filePath)
{
if (filePath == null)
filePath = name;
IsRelativeToTempPath = !System.IO.Path.IsPathRooted(filePath);
if (IsRelativeToTempPath)
filePath = System.IO.Path.Combine(TEMP_PATH, filePath);
Path = filePath;
Stream stream = type.Assembly.GetManifestResourceStream(type, name);
byte[] buffer = new byte[(int)stream.Length];
stream.Read(buffer, 0, buffer.Length);
string dir = System.IO.Path.GetDirectoryName(Path);
if(dir != null && dir.Length != 0)
{
Directory.CreateDirectory(dir);
}
using(FileStream fileStream = new FileStream(Path, FileMode.Create))
{
fileStream.Write(buffer, 0, buffer.Length);
}
}
public void Dispose()
{
File.Delete(Path);
string path = Path;
while(true)
{
path = System.IO.Path.GetDirectoryName(path);
if(path == null || path.Length == 0)
break;
if(IsRelativeToTempPath && path.Length <= TEMP_PATH.Length)
break;
if(Directory.GetFiles(path).Length > 0)
break;
Directory.Delete(path);
}
}
}
}

Просмотреть файл

@ -0,0 +1,86 @@
// ***********************************************************************
// Copyright (c) 2008-2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
using System;
using System.IO;
using System.Collections;
using NUnit.Engine.Tests.resources;
using NUnit.Framework;
namespace NUnit.Engine.Services.ProjectLoaders.Tests
{
[TestFixture]
public class VSProjectTests
{
private string invalidFile = Path.Combine(Path.GetTempPath(), "invalid.csproj");
private void WriteInvalidFile( string text )
{
StreamWriter writer = new StreamWriter( invalidFile );
writer.WriteLine( text );
writer.Close();
}
[TearDown]
public void EraseInvalidFile()
{
if ( File.Exists( invalidFile ) )
File.Delete( invalidFile );
}
[Test]
public void NotWebProject()
{
Assert.IsFalse(VSProject.IsProjectFile(@"http://localhost/web.csproj"));
Assert.IsFalse(VSProject.IsProjectFile(@"\MyProject\http://localhost/web.csproj"));
}
[Test]
public void LoadInvalidFileType()
{
Assert.Throws<ArgumentException>(() => new VSProject(@"/test.junk"));
}
[Test]
public void FileNotFoundError()
{
Assert.Throws<FileNotFoundException>(() => new VSProject(@"/junk.csproj"));
}
[TestCase("<VisualStudioProject><junk></VisualStudioProject>")]
[TestCase("<VisualStudioProject><junk></junk></VisualStudioProject>")]
public void InvalidXmlFormat(string invalidXml)
{
WriteInvalidFile(invalidXml);
Assert.Throws<ArgumentException>(() => new VSProject(Path.Combine(Path.GetTempPath(), "invalid.csproj")));
}
[Test]
public void NoConfigurations()
{
WriteInvalidFile("<VisualStudioProject><CSharp><Build><Settings AssemblyName=\"invalid\" OutputType=\"Library\"></Settings></Build></CSharp></VisualStudioProject>");
VSProject project = new VSProject(Path.Combine(Path.GetTempPath(), "invalid.csproj"));
Assert.AreEqual(0, project.ConfigNames.Count);
}
}
}

Просмотреть файл

@ -0,0 +1,233 @@
// ***********************************************************************
// Copyright (c) 2008-2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
using System;
using System.IO;
using NUnit.Engine.Extensibility;
using NUnit.Engine.Tests.resources;
using NUnit.Framework;
namespace NUnit.Engine.Services.ProjectLoaders.Tests
{
[TestFixture]
public class VisualStudioProjectLoaderTests
{
private VisualStudioProjectLoader _loader;
[SetUp]
public void CreateLoader()
{
_loader = new VisualStudioProjectLoader();
}
[TestCase("project.csproj", true)]
[TestCase("project.vbproj", true)]
[TestCase("project.vjsproj", true)]
[TestCase("project.fsproj", true)]
[TestCase("project.vcproj", true)]
[TestCase("project.sln", true)]
[TestCase("project.xyproj", false)]
public void ValidExtensions(string project, bool isGood)
{
if (isGood)
Assert.That(_loader.CanLoadFrom(project), "Should be loadable: {0}", project);
else
Assert.False(_loader.CanLoadFrom(project), "Should not be loadable: {0}", project);
}
[Test]
public void CheckExtensionAttribute()
{
Assert.That(typeof(VisualStudioProjectLoader),
Has.Attribute<ExtensionAttribute>());
}
// Note for review:
// The following test doesn't pass because AttributeConstraint always uses the
// first attribute it finds. Should we fix the syntax or just document it?
//[TestCase(".sln")]
//[TestCase(".csproj")]
//[TestCase(".vbproj")]
//[TestCase(".vjsproj")]
//[TestCase(".vcproj")]
//[TestCase(".fsproj")]
//public void CheckExtensionPropertyAttributes(string ext)
//{
// Assert.That(typeof(VisualStudioProjectLoader),
// Has.Attribute<ExtensionPropertyAttribute>()
// .With.Property("Name").EqualTo("FileExtension").And.Property("Value").EqualTo(ext));
//}
[TestCase(".sln")]
[TestCase(".csproj")]
[TestCase(".vbproj")]
[TestCase(".vjsproj")]
[TestCase(".vcproj")]
[TestCase(".fsproj")]
public void CheckExtensionPropertyAttributes(string ext)
{
var attrs = typeof(VisualStudioProjectLoader).GetCustomAttributes(typeof(ExtensionPropertyAttribute), false);
Assert.That(attrs,
Has.Exactly(1)
.With.Property("Name").EqualTo("FileExtension")
.And.Property("Value").EqualTo(ext));
}
[Test]
public void CannotLoadWebProject()
{
Assert.IsFalse(_loader.CanLoadFrom(@"http://localhost/web.csproj"));
Assert.IsFalse(_loader.CanLoadFrom(@"\MyProject\http://localhost/web.csproj"));
}
[TestCase("csharp-sample.csproj", new string[] { "Debug", "Release" }, "csharp-sample")]
[TestCase("csharp-sample.csproj", new string[] { "Debug", "Release" }, "csharp-sample")]
[TestCase("csharp-missing-output-path.csproj", new string[] { "Debug", "Release" }, "MissingOutputPath")]
[TestCase("csharp-xna-project.csproj", new string[] { "Debug|x86", "Release|x86" }, "XNAWindowsProject")]
[TestCase("vb-sample.vbproj", new string[] { "Debug", "Release" }, "vb-sample")]
[TestCase("jsharp-sample.vjsproj", new string[] { "Debug", "Release" }, "jsharp-sample")]
[TestCase("fsharp-sample.fsproj", new string[] { "Debug", "Release" }, "fsharp-sample")]
[TestCase("cpp-sample.vcproj", new string[] { "Debug|Win32", "Release|Win32" }, "cpp-sample")]
[TestCase("cpp-default-library.vcproj", new string[] { "Debug|Win32", "Release|Win32" }, "cpp-default-library")]
[TestCase("legacy-csharp-sample.csproj", new string[] { "Debug", "Release" }, "csharp-sample")]
[TestCase("legacy-csharp-hebrew-file-problem.csproj", new string[] { "Debug", "Release" }, "HebrewFileProblem")]
[TestCase("legacy-vb-sample.vbproj", new string[] { "Debug", "Release" }, "vb-sample")]
[TestCase("legacy-jsharp-sample.vjsproj", new string[] { "Debug", "Release" }, "jsharp-sample")]
[TestCase("legacy-cpp-sample.vcproj", new string[] { "Debug|Win32", "Release|Win32" }, "cpp-sample")]
[TestCase("legacy-cpp-library-with-macros.vcproj", new string[] { "Debug|Win32", "Release|Win32" }, "legacy-cpp-library-with-macros")]
[TestCase("legacy-cpp-makefile-project.vcproj", new string[] { "Debug|Win32", "Release|Win32" }, "MakeFileProject")]
public void CanLoadVsProject(string resourceName, string[] configs, string assemblyName)
{
Assert.That(_loader.CanLoadFrom(resourceName));
using (TestResource file = new TestResource(resourceName))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.That(project.ConfigNames, Is.EqualTo(configs));
foreach (var config in configs)
{
TestPackage package = project.GetTestPackage(config);
Assert.AreEqual(resourceName, package.Name);
Assert.AreEqual(1, package.SubPackages.Count);
Assert.AreEqual(assemblyName, Path.GetFileNameWithoutExtension(package.SubPackages[0].FullName));
Assert.That(package.Settings.ContainsKey("BasePath"));
Assert.That(Path.GetDirectoryName(package.SubPackages[0].FullName), Is.SamePath((string)package.Settings["BasePath"]));
}
}
}
[Test]
public void FromVSSolution2003()
{
using (new TestResource("legacy-csharp-sample.csproj", @"csharp\legacy-csharp-sample.csproj"))
using (new TestResource("legacy-jsharp-sample.vjsproj", @"jsharp\legacy-jsharp-sample.vjsproj"))
using (new TestResource("legacy-vb-sample.vbproj", @"vb\legacy-vb-sample.vbproj"))
using (new TestResource("legacy-cpp-sample.vcproj", @"cpp-sample\legacy-cpp-sample.vcproj"))
using (TestResource file = new TestResource("legacy-samples.sln"))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.AreEqual(2, project.ConfigNames.Count);
Assert.AreEqual(4, project.GetTestPackage("Debug").SubPackages.Count);
Assert.AreEqual(4, project.GetTestPackage("Release").SubPackages.Count);
}
}
[Test]
public void FromVSSolution2005()
{
using (new TestResource("csharp-sample.csproj", @"csharp\csharp-sample.csproj"))
using (new TestResource("jsharp-sample.vjsproj", @"jsharp\jsharp-sample.vjsproj"))
using (new TestResource("vb-sample.vbproj", @"vb\vb-sample.vbproj"))
using (new TestResource("cpp-sample.vcproj", @"cpp-sample\cpp-sample.vcproj"))
using (TestResource file = new TestResource("samples.sln"))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.AreEqual(2, project.ConfigNames.Count);
Assert.AreEqual(4, project.GetTestPackage("Debug").SubPackages.Count);
Assert.AreEqual(4, project.GetTestPackage("Release").SubPackages.Count);
}
}
[Test]
public void FromWebApplication()
{
using (new TestResource("legacy-csharp-sample.csproj", @"legacy-csharp-sample\legacy-csharp-sample.csproj"))
using (TestResource file = new TestResource("solution-with-web-application.sln"))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.AreEqual(2, project.ConfigNames.Count);
Assert.AreEqual(1, project.GetTestPackage("Debug").SubPackages.Count);
Assert.AreEqual(1, project.GetTestPackage("Release").SubPackages.Count);
}
}
[Test]
public void WithUnmanagedCpp()
{
using (new TestResource("legacy-csharp-sample.csproj", @"legacy-csharp-sample\legacy-csharp-sample.csproj"))
using (new TestResource("legacy-cpp-unmanaged.vcproj", @"legacy-cpp-unmanaged\legacy-cpp-unmanaged.vcproj"))
using (TestResource file = new TestResource("solution-with-unmanaged-cpp.sln"))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.AreEqual(2, project.ConfigNames.Count);
Assert.AreEqual(2, project.GetTestPackage("Debug").SubPackages.Count);
Assert.AreEqual(2, project.GetTestPackage("Release").SubPackages.Count);
}
}
[Test]
public void FromSolutionWithDisabledProject()
{
using (new TestResource("csharp-sample.csproj", @"csharp-sample\csharp-sample.csproj"))
using (new TestResource("csharp-debug-only.csproj", @"csharp-debug-only\csharp-debug-only.csproj"))
using (TestResource file = new TestResource("solution-with-disabled-project.sln"))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.AreEqual(2, project.ConfigNames.Count);
Assert.AreEqual(2, project.GetTestPackage("Release").SubPackages.Count, "Release should have 2 assemblies");
Assert.AreEqual(1, project.GetTestPackage("Debug").SubPackages.Count, "Debug should have 1 assembly");
}
}
[Test]
public void FromSolutionWithNonNunitTestProject()
{
using (new TestResource("csharp-sample.csproj", @"csharp-sample\csharp-sample.csproj"))
using (new TestResource("csharp-debug-only-no-nunit.csproj", @"csharp-debug-only-no-nunit\csharp-debug-only-no-nunit.csproj"))
using (TestResource file = new TestResource("solution-with-non-nunit-project.sln"))
{
IProject project = _loader.LoadFrom(file.Path);
Assert.AreEqual(2, project.ConfigNames.Count);
Assert.AreEqual(1, project.GetTestPackage("Release").SubPackages.Count, "Release should have 2 assemblies");
Assert.AreEqual(1, project.GetTestPackage("Debug").SubPackages.Count, "Debug should have 1 assembly");
}
}
}
}

Просмотреть файл

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NUnit" version="3.4.1" targetFramework="net20" />
<package id="NUnit.Engine.Api" version="3.5.0-dev-03211" targetFramework="net20" />
</packages>

Просмотреть файл

@ -0,0 +1,91 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{23FF0E4C-DA55-4CC7-A948-09877A66001F}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>MultiplePlatformProject</RootNamespace>
<AssemblyName>MultiplePlatformProject</AssemblyName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</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</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x64\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x64</PlatformTarget>
<CodeAnalysisRuleAssemblies>\rules</CodeAnalysisRuleAssemblies>
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
<OutputPath>bin\x64\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x64</PlatformTarget>
<CodeAnalysisRuleAssemblies>\rules</CodeAnalysisRuleAssemblies>
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x86\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleAssemblies>\rules</CodeAnalysisRuleAssemblies>
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<OutputPath>bin\x86\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<Optimize>true</Optimize>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisRuleAssemblies>\rules</CodeAnalysisRuleAssemblies>
<CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>
<CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\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,40 @@
// ***********************************************************************
// Copyright (c) 2007-2014 Charlie Poole
//
// 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, merge, 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:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// 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 NO 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.
// ***********************************************************************
using System;
namespace NUnit.Engine.Tests.resources
{
public class TestResource : TempResourceFile
{
public TestResource(string name)
: base(typeof(TestResource), name)
{
}
public TestResource(string name, string filePath)
: base(typeof(TestResource), name, filePath)
{
}
}
}

Просмотреть файл

@ -0,0 +1,254 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="cpp-default-library_VS2005"
ProjectGUID="{78092255-BD15-4D67-B3AF-1440FD498760}"
RootNamespace="cppdefaultlibrary_VS2005"
Keyword="ManagedCProj"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="1"
ManagedExtensions="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG"
RuntimeLibrary="3"
UsePrecompiledHeader="2"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="$(NoInherit)"
LinkIncremental="2"
GenerateDebugInformation="true"
AssemblyDebug="1"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="1"
ManagedExtensions="1"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG"
RuntimeLibrary="2"
UsePrecompiledHeader="2"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="$(NoInherit)"
LinkIncremental="1"
GenerateDebugInformation="true"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
<AssemblyReference
RelativePath="System.dll"
AssemblyName="System, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
/>
<AssemblyReference
RelativePath="System.Data.dll"
AssemblyName="System.Data, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86"
/>
<AssemblyReference
RelativePath="System.XML.dll"
AssemblyName="System.Xml, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"
/>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath=".\AssemblyInfo.cpp"
>
</File>
<File
RelativePath=".\cpp-default-library_VS2005.cpp"
>
</File>
<File
RelativePath=".\Stdafx.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath=".\cpp-default-library_VS2005.h"
>
</File>
<File
RelativePath=".\resource.h"
>
</File>
<File
RelativePath=".\Stdafx.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath=".\app.ico"
>
</File>
<File
RelativePath=".\app.rc"
>
</File>
</Filter>
<File
RelativePath=".\ReadMe.txt"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,229 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
Name="cpp-sample_VS2005"
ProjectGUID="{7E5849C7-0469-4AD2-91B9-C87203934254}"
Keyword="ManagedCProj"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="2"
CharacterSet="2"
ManagedExtensions="4"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalUsingDirectories="..\..\framework\bin\Debug"
PreprocessorDefinitions="WIN32;_DEBUG"
MinimalRebuild="FALSE"
BasicRuntimeChecks="0"
RuntimeLibrary="3"
UsePrecompiledHeader="3"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/cpp-sample.dll"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="2"
CharacterSet="2"
ManagedExtensions="4"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalUsingDirectories="..\..\framework\bin\Release;..\..\framework\bin\Debug"
PreprocessorDefinitions="WIN32;NDEBUG"
MinimalRebuild="FALSE"
UsePrecompiledHeader="3"
WarningLevel="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/cpp-sample.dll"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCWebDeploymentTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
<AssemblyReference
RelativePath=""
AssemblyName=""
/>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm"
>
<File
RelativePath="AssemblyInfo.cpp"
>
</File>
<File
RelativePath="cppsample.cpp"
>
</File>
<File
RelativePath="Stdafx.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc"
>
<File
RelativePath="cppsample.h"
>
</File>
<File
RelativePath="Stdafx.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r"
>
</Filter>
<File
RelativePath="ReadMe.txt"
>
</File>
</Files>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,59 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.21022</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>DebugOnly</RootNamespace>
<AssemblyName>DebugOnly</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</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</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</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,60 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.21022</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>DebugOnly</RootNamespace>
<AssemblyName>DebugOnly</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</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</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Xml.Linq">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="nunit.framework" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</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,51 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{6BF38215-C9D9-418D-9D81-4DECBA679223}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>MissingOutputPath</RootNamespace>
<AssemblyName>MissingOutputPath</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<OutputPath>bin\Common\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</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,106 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.40607</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{15D66EEE-A852-4A52-89C2-83E74ECF3770}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>csharp-sample</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Library</OutputType>
<RootNamespace>csharp_sample</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>bin\Debug\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>bin\Release\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.framework">
<Name>nunit.framework</Name>
<HintPath>E:\Program Files\NUnit 2.2\bin\nunit.framework.dll</HintPath>
<AssemblyFolderKey>hklm\dn\nunit.framework</AssemblyFolderKey>
</Reference>
<Reference Include="System">
<Name>System</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.dll</HintPath>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.Data.dll</HintPath>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.XML.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="CSharpTest.cs">
<SubType>Code</SubType>
</Compile>
<Content Include="ReadMe.txt" />
<AppDesigner Include="Properties\" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

Просмотреть файл

@ -0,0 +1,106 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.40607</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{15D66EEE-A852-4A52-89C2-83E74ECF3770}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>csharp-sample_VS2005_noplatform</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Library</OutputType>
<RootNamespace>csharp_sample</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<OutputPath>bin\Debug\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<OutputPath>bin\Release\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.framework">
<Name>nunit.framework</Name>
<HintPath>E:\Program Files\NUnit 2.2\bin\nunit.framework.dll</HintPath>
<AssemblyFolderKey>hklm\dn\nunit.framework</AssemblyFolderKey>
</Reference>
<Reference Include="System">
<Name>System</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.dll</HintPath>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.Data.dll</HintPath>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.XML.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="CSharpTest.cs">
<SubType>Code</SubType>
</Compile>
<Content Include="ReadMe.txt" />
<AppDesigner Include="Properties\" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSHARP.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

Просмотреть файл

@ -0,0 +1,81 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{1BAC9824-B0E8-448F-B91A-80B93B9AB0F6}</ProjectGuid>
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>XNAWindowsProject</RootNamespace>
<AssemblyName>XNAWindowsProject</AssemblyName>
<XnaFrameworkVersion>v2.0</XnaFrameworkVersion>
<XnaPlatform>Windows</XnaPlatform>
<XnaCrossPlatformGroupID>587ca330-4151-41aa-a721-18cbd58d91ce</XnaCrossPlatformGroupID>
<ApplicationIcon>Game.ico</ApplicationIcon>
<Thumbnail>GameThumbnail.png</Thumbnail>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\x86\Debug</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoStdLib>true</NoStdLib>
<UseVSHostingProcess>false</UseVSHostingProcess>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\x86\Release</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoStdLib>true</NoStdLib>
<UseVSHostingProcess>false</UseVSHostingProcess>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Xna.Framework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=6d5c3888ef60e27d, processorArchitecture=x86">
<Private>False</Private>
<SpecificVersion>True</SpecificVersion>
</Reference>
<Reference Include="Microsoft.Xna.Framework.Game, Version=2.0.0.0, Culture=neutral, PublicKeyToken=6d5c3888ef60e27d, processorArchitecture=MSIL">
<Private>False</Private>
<SpecificVersion>True</SpecificVersion>
</Reference>
<Reference Include="mscorlib">
<Private>False</Private>
</Reference>
<Reference Include="System">
<Private>False</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Program.cs" />
<Compile Include="Game1.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="Game.ico" />
<Content Include="GameThumbnail.png" />
</ItemGroup>
<ItemGroup>
<NestedContentProject Include="Content\Content.contentproj">
<Project>04ff7472-dfb8-4502-90ea-a99a54be6748</Project>
<Visible>False</Visible>
</NestedContentProject>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\v2.0\Microsoft.Xna.GameStudio.Common.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\v2.0\Microsoft.Xna.GameStudio.NestedContent.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,71 @@
<?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>{5de001e7-2606-4dfe-8c03-90c70d2c3805}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>fsharp-sample</RootNamespace>
<AssemblyName>fsharp-sample</AssemblyName>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<Name>fsharp-sample</Name>
<TargetFSharpCoreVersion>2.3.0.0</TargetFSharpCoreVersion>
<MinimumVisualStudioVersion Condition="'$(MinimumVisualStudioVersion)' == ''">11</MinimumVisualStudioVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<Tailcalls>false</Tailcalls>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<WarningLevel>3</WarningLevel>
<DocumentationFile>bin\Debug\fsharp-sample.XML</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<Tailcalls>true</Tailcalls>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<WarningLevel>3</WarningLevel>
<DocumentationFile>bin\Release\fsharp-sample.XML</DocumentationFile>
</PropertyGroup>
<Choose>
<When Condition="'$(VisualStudioVersion)' == '11.0'">
<PropertyGroup>
<FSharpTargetsPath>$(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets</FSharpTargetsPath>
</PropertyGroup>
</When>
<Otherwise>
<PropertyGroup>
<FSharpTargetsPath>$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets</FSharpTargetsPath>
</PropertyGroup>
</Otherwise>
</Choose>
<Import Project="$(FSharpTargetsPath)" Condition="Exists('$(FSharpTargetsPath)')" />
<ItemGroup>
<Compile Include="AssertSyntaxTests.fs" />
<Content Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Reference Include="FSharp.Core, Version=$(TargetFSharpCoreVersion), Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<Private>True</Private>
</Reference>
<Reference Include="mscorlib" />
<Reference Include="nunit.framework">
<HintPath>packages\NUnit.3.0.0-alpha-3\lib\net20\nunit.framework.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
</ItemGroup>
<!-- 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,93 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.40607</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{B55A6E53-57A9-4205-B396-C9983B3AF46A}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>jsharp-sample</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<OutputType>Library</OutputType>
<RootNamespace>jsharp</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>bin\Debug\</OutputPath>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugSymbols>true</DebugSymbols>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>bin\Release\</OutputPath>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DebugSymbols>false</DebugSymbols>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.framework">
<Name>nunit.framework</Name>
<HintPath>E:\Program Files\NUnit 2.2\bin\nunit.framework.dll</HintPath>
<AssemblyFolderKey>hklm\dn\nunit.framework</AssemblyFolderKey>
</Reference>
<Reference Include="System">
<Name>System</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.dll</HintPath>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.Data.dll</HintPath>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.XML.dll</HintPath>
</Reference>
<Reference Include="vjslib">
<Name>vjslib</Name>
<HintPath>..\..\..\..\..\WINDOWS\Microsoft Visual JSharp .NET\Framework\v1.0.4205\vjslib.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.jsl">
<SubType>Code</SubType>
</Compile>
<Compile Include="JSharpTest.jsl">
<SubType>Code</SubType>
</Compile>
<Content Include="ReadMe.txt" />
<AppDesigner Include="Properties\" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.VISUALJSHARP.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

Просмотреть файл

@ -0,0 +1,176 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="CPPLibrary"
ProjectGUID="{B6F3498B-4951-4F97-BB6F-6594D6394A87}"
RootNamespace="CPPLibrary"
Keyword="ManagedCProj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="2"
ManagedExtensions="TRUE">
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/Zl"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG"
MinimalRebuild="FALSE"
BasicRuntimeChecks="0"
RuntimeLibrary="1"
UsePrecompiledHeader="3"
WarningLevel="3"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/noentry"
AdditionalDependencies="nochkclr.obj mscoree.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
AssemblyDebug="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="2"
ManagedExtensions="TRUE">
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/Zl"
PreprocessorDefinitions="WIN32;NDEBUG"
MinimalRebuild="FALSE"
RuntimeLibrary="0"
UsePrecompiledHeader="3"
WarningLevel="3"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalOptions="/noentry"
AdditionalDependencies="nochkclr.obj mscoree.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
GenerateDebugInformation="TRUE"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
<AssemblyReference
RelativePath="mscorlib.dll"/>
<AssemblyReference
RelativePath="System.dll"/>
<AssemblyReference
RelativePath="System.Data.dll"/>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
<File
RelativePath=".\AssemblyInfo.cpp">
</File>
<File
RelativePath=".\CPPLibrary.cpp">
</File>
<File
RelativePath=".\Stdafx.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
<File
RelativePath=".\CPPLibrary.h">
</File>
<File
RelativePath=".\resource.h">
</File>
<File
RelativePath=".\Stdafx.h">
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">
<File
RelativePath=".\app.ico">
</File>
<File
RelativePath=".\app.rc">
</File>
</Filter>
<File
RelativePath=".\ReadMe.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="MakeFileProject"
ProjectGUID="{69F9692E-8BEA-4C1B-AE8D-A619C251E0D3}"
Keyword="MakeFileProj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="0">
<Tool
Name="VCNMakeTool"
Output="MakeFileProject.exe"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="0">
<Tool
Name="VCNMakeTool"
Output="MakeFileProject.exe"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">
</Filter>
<File
RelativePath=".\readme.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,154 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="cpp-sample"
ProjectGUID="{7E5849C7-0469-4AD2-91B9-C87203934254}"
Keyword="ManagedCProj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="2"
CharacterSet="2"
ManagedExtensions="TRUE">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalUsingDirectories="..\..\src\NUnitFramework\framework\bin\Debug"
PreprocessorDefinitions="WIN32;_DEBUG"
MinimalRebuild="FALSE"
BasicRuntimeChecks="0"
RuntimeLibrary="1"
UsePrecompiledHeader="3"
WarningLevel="3"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/cpp-sample.dll"
LinkIncremental="2"
GenerateDebugInformation="TRUE"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="2"
CharacterSet="2"
ManagedExtensions="TRUE">
<Tool
Name="VCCLCompilerTool"
Optimization="2"
InlineFunctionExpansion="1"
AdditionalUsingDirectories="..\..\src\NUnitFramework\framework\bin\Release;..\..\src\NUnitFramework\framework\bin\Debug"
PreprocessorDefinitions="WIN32;NDEBUG"
MinimalRebuild="FALSE"
UsePrecompiledHeader="3"
WarningLevel="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/cpp-sample.dll"
LinkIncremental="1"
GenerateDebugInformation="TRUE"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
<AssemblyReference
RelativePath="{ReferencesPath}\nunit.framework.dll"/>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm">
<File
RelativePath="AssemblyInfo.cpp">
</File>
<File
RelativePath="cppsample.cpp">
</File>
<File
RelativePath="Stdafx.cpp">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="1"/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc">
<File
RelativePath="cppsample.h">
</File>
<File
RelativePath="Stdafx.h">
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
</Filter>
<File
RelativePath="ReadMe.txt">
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,131 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="Unmanaged"
ProjectGUID="{FDBEFC64-EDEF-4645-81EB-C6EA9597170D}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="2"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;UNMANAGED_EXPORTS"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="1"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="4"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/Unmanaged.dll"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/Unmanaged.pdb"
SubSystem="2"
ImportLibrary="$(OutDir)/Unmanaged.lib"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="2"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;UNMANAGED_EXPORTS"
RuntimeLibrary="0"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
OutputFile="$(OutDir)/Unmanaged.dll"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(OutDir)/Unmanaged.lib"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}">
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}">
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,125 @@
<VisualStudioProject>
<CSHARP
ProjectType = "Local"
ProductVersion = "7.10.3077"
SchemaVersion = "2.0"
ProjectGuid = "{F848EF9E-5D1D-4785-9CCC-D529CD5728F0}"
>
<Build>
<Settings
ApplicationIcon = "App.ico"
AssemblyKeyContainerName = ""
AssemblyName = "HebrewFileProblem"
AssemblyOriginatorKeyFile = ""
DefaultClientScript = "JScript"
DefaultHTMLPageLayout = "Grid"
DefaultTargetSchema = "IE50"
DelaySign = "false"
OutputType = "Library"
PreBuildEvent = ""
PostBuildEvent = 'copy "$(ProjectDir)\UnitTests\*.txt" "$(TargetDir)" > nul&#xd;&#xa;'
RootNamespace = "SomeApp"
RunPostBuildEvent = "OnBuildSuccess"
StartupObject = ""
>
<Config
Name = "Debug"
AllowUnsafeBlocks = "false"
BaseAddress = "285212672"
CheckForOverflowUnderflow = "false"
ConfigurationOverrideFile = ""
DefineConstants = "DEBUG;TRACE"
DocumentationFile = ""
DebugSymbols = "true"
FileAlignment = "4096"
IncrementalBuild = "false"
NoStdLib = "false"
NoWarn = ""
Optimize = "false"
OutputPath = "bin\Debug\"
RegisterForComInterop = "false"
RemoveIntegerChecks = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "4"
/>
<Config
Name = "Release"
AllowUnsafeBlocks = "false"
BaseAddress = "285212672"
CheckForOverflowUnderflow = "false"
ConfigurationOverrideFile = ""
DefineConstants = "TRACE"
DocumentationFile = ""
DebugSymbols = "false"
FileAlignment = "4096"
IncrementalBuild = "false"
NoStdLib = "false"
NoWarn = ""
Optimize = "true"
OutputPath = "bin\Release\"
RegisterForComInterop = "false"
RemoveIntegerChecks = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "4"
/>
</Settings>
<References>
<Reference
Name = "System"
AssemblyName = "System"
HintPath = "..\..\..\WINNT\Microsoft.NET\Framework\v1.1.4322\System.dll"
/>
<Reference
Name = "System.Data"
AssemblyName = "System.Data"
HintPath = "..\..\..\WINNT\Microsoft.NET\Framework\v1.1.4322\System.Data.dll"
/>
<Reference
Name = "System.XML"
AssemblyName = "System.XML"
HintPath = "..\..\..\WINNT\Microsoft.NET\Framework\v1.1.4322\System.XML.dll"
/>
<Reference
Name = "nunit.framework"
AssemblyName = "nunit.framework"
HintPath = "..\..\..\Program Files\NUnit 2.2.2\bin\nunit.framework.dll"
AssemblyFolderKey = "hklm\dn\nunit.framework"
/>
<Reference
Name = "nunit.core"
AssemblyName = "nunit.core"
HintPath = "..\..\..\Program Files\NUnit 2.2.2\bin\nunit.core.dll"
AssemblyFolderKey = "hklm\dn\nunit.framework"
/>
</References>
</Build>
<Files>
<Include>
<File
RelPath = "App.ico"
BuildAction = "Content"
/>
<File
RelPath = "AssemblyInfo.cs"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "Class1.cs"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "UnitTests\SomeTestFixture.cs"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "UnitTests\òáøéúhebrewFile.txt"
BuildAction = "Content"
/>
</Include>
</Files>
</CSHARP>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,110 @@
<VisualStudioProject>
<CSHARP
ProjectType = "Local"
ProductVersion = "7.10.3077"
SchemaVersion = "2.0"
ProjectGuid = "{15D66EEE-A852-4A52-89C2-83E74ECF3770}"
>
<Build>
<Settings
ApplicationIcon = ""
AssemblyKeyContainerName = ""
AssemblyName = "csharp-sample"
AssemblyOriginatorKeyFile = ""
DefaultClientScript = "JScript"
DefaultHTMLPageLayout = "Grid"
DefaultTargetSchema = "IE50"
DelaySign = "false"
OutputType = "Library"
PreBuildEvent = ""
PostBuildEvent = ""
RootNamespace = "csharp_sample"
RunPostBuildEvent = "OnBuildSuccess"
StartupObject = ""
>
<Config
Name = "Debug"
AllowUnsafeBlocks = "false"
BaseAddress = "285212672"
CheckForOverflowUnderflow = "false"
ConfigurationOverrideFile = ""
DefineConstants = "DEBUG;TRACE"
DocumentationFile = ""
DebugSymbols = "true"
FileAlignment = "4096"
IncrementalBuild = "true"
NoStdLib = "false"
NoWarn = ""
Optimize = "false"
OutputPath = "bin\Debug\"
RegisterForComInterop = "false"
RemoveIntegerChecks = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "4"
/>
<Config
Name = "Release"
AllowUnsafeBlocks = "false"
BaseAddress = "285212672"
CheckForOverflowUnderflow = "false"
ConfigurationOverrideFile = ""
DefineConstants = "TRACE"
DocumentationFile = ""
DebugSymbols = "false"
FileAlignment = "4096"
IncrementalBuild = "false"
NoStdLib = "false"
NoWarn = ""
Optimize = "true"
OutputPath = "bin\Release\"
RegisterForComInterop = "false"
RemoveIntegerChecks = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "4"
/>
</Settings>
<References>
<Reference
Name = "System"
AssemblyName = "System"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.dll"
/>
<Reference
Name = "System.Data"
AssemblyName = "System.Data"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.Data.dll"
/>
<Reference
Name = "System.XML"
AssemblyName = "System.Xml"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.XML.dll"
/>
<Reference
Name = "nunit.framework"
AssemblyName = "nunit.framework"
HintPath = "E:\Program Files\NUnit 2.2\bin\nunit.framework.dll"
AssemblyFolderKey = "hklm\dn\nunit.framework"
/>
</References>
</Build>
<Files>
<Include>
<File
RelPath = "AssemblyInfo.cs"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "CSharpTest.cs"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "ReadMe.txt"
BuildAction = "Content"
/>
</Include>
</Files>
</CSHARP>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,101 @@
<VisualStudioProject>
<VISUALJSHARP
ProjectType = "Local"
ProductVersion = "7.10.3077"
SchemaVersion = "2.0"
ProjectGuid = "{B55A6E53-57A9-4205-B396-C9983B3AF46A}"
>
<Build>
<Settings
AssemblyKeyContainerName = ""
AssemblyName = "jsharp-sample"
AssemblyOriginatorKeyFile = ""
DefaultClientScript = "JScript"
DefaultHTMLPageLayout = "Grid"
DefaultTargetSchema = "IE50"
OutputType = "Library"
PreBuildEvent = ""
PostBuildEvent = ""
RootNamespace = "jsharp"
RunPostBuildEvent = "OnBuildSuccess"
StartupObject = ""
>
<Config
Name = "Debug"
BaseAddress = "285212672"
ConfigurationOverrideFile = ""
DefineConstants = "DEBUG;TRACE"
DebugSymbols = "true"
NoWarn = ""
Optimize = "false"
OutputPath = "bin\Debug\"
RegisterForComInterop = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "4"
AdditionalOptions = ""
/>
<Config
Name = "Release"
BaseAddress = "285212672"
ConfigurationOverrideFile = ""
DefineConstants = "TRACE"
DebugSymbols = "false"
NoWarn = ""
Optimize = "true"
OutputPath = "bin\Release\"
RegisterForComInterop = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "4"
AdditionalOptions = ""
/>
</Settings>
<References>
<Reference
Name = "vjslib"
AssemblyName = "vjslib"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft Visual JSharp .NET\Framework\v1.0.4205\vjslib.dll"
/>
<Reference
Name = "System"
AssemblyName = "System"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.dll"
/>
<Reference
Name = "System.Data"
AssemblyName = "System.Data"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.Data.dll"
/>
<Reference
Name = "System.XML"
AssemblyName = "System.Xml"
HintPath = "..\..\..\..\..\WINDOWS\Microsoft.NET\Framework\v1.0.3705\System.XML.dll"
/>
<Reference
Name = "nunit.framework"
AssemblyName = "nunit.framework"
HintPath = "E:\Program Files\NUnit 2.2\bin\nunit.framework.dll"
AssemblyFolderKey = "hklm\dn\nunit.framework"
/>
</References>
</Build>
<Files>
<Include>
<File
RelPath = "AssemblyInfo.jsl"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "JSharpTest.jsl"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "ReadMe.txt"
BuildAction = "Content"
/>
</Include>
</Files>
</VISUALJSHARP>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,45 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "legacy-csharp-sample", "csharp\legacy-csharp-sample.csproj", "{15D66EEE-A852-4A52-89C2-83E74ECF3770}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "legacy-jsharp-sample", "jsharp\legacy-jsharp-sample.vjsproj", "{B55A6E53-57A9-4205-B396-C9983B3AF46A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "legacy-vb-sample", "vb\legacy-vb-sample.vbproj", "{F199991B-6C8E-4AB0-9AAA-703CD4897700}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "legacy-cpp-sample", "cpp-sample\legacy-cpp-sample.vcproj", "{7E5849C7-0469-4AD2-91B9-C87203934254}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug.ActiveCfg = Debug|.NET
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug.Build.0 = Debug|.NET
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release.ActiveCfg = Release|.NET
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release.Build.0 = Release|.NET
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug.ActiveCfg = Debug|.NET
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug.Build.0 = Debug|.NET
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release.ActiveCfg = Release|.NET
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release.Build.0 = Release|.NET
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug.ActiveCfg = Debug|.NET
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug.Build.0 = Debug|.NET
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release.ActiveCfg = Release|.NET
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release.Build.0 = Release|.NET
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug.ActiveCfg = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug.Build.0 = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release.ActiveCfg = Release|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,107 @@
<VisualStudioProject>
<VisualBasic
ProjectType = "Local"
ProductVersion = "7.10.3077"
SchemaVersion = "2.0"
ProjectGuid = "{F199991B-6C8E-4AB0-9AAA-703CD4897700}"
>
<Build>
<Settings
ApplicationIcon = ""
AssemblyKeyContainerName = ""
AssemblyName = "vb-sample"
AssemblyOriginatorKeyFile = ""
AssemblyOriginatorKeyMode = "None"
DefaultClientScript = "JScript"
DefaultHTMLPageLayout = "Grid"
DefaultTargetSchema = "IE50"
DelaySign = "false"
OutputType = "Library"
OptionCompare = "Binary"
OptionExplicit = "On"
OptionStrict = "Off"
RootNamespace = "vb_sample"
StartupObject = ""
>
<Config
Name = "Debug"
BaseAddress = "285212672"
ConfigurationOverrideFile = ""
DefineConstants = ""
DefineDebug = "true"
DefineTrace = "true"
DebugSymbols = "true"
IncrementalBuild = "true"
Optimize = "false"
OutputPath = "bin\"
RegisterForComInterop = "false"
RemoveIntegerChecks = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "1"
/>
<Config
Name = "Release"
BaseAddress = "285212672"
ConfigurationOverrideFile = ""
DefineConstants = ""
DefineDebug = "false"
DefineTrace = "true"
DebugSymbols = "false"
IncrementalBuild = "false"
Optimize = "true"
OutputPath = "bin\"
RegisterForComInterop = "false"
RemoveIntegerChecks = "false"
TreatWarningsAsErrors = "false"
WarningLevel = "1"
/>
</Settings>
<References>
<Reference
Name = "System"
AssemblyName = "System"
/>
<Reference
Name = "System.Data"
AssemblyName = "System.Data"
/>
<Reference
Name = "System.XML"
AssemblyName = "System.Xml"
/>
<Reference
Name = "nunit.framework"
AssemblyName = "nunit.framework"
HintPath = "E:\Program Files\NUnit 2.2\bin\nunit.framework.dll"
AssemblyFolderKey = "hklm\dn\nunit.framework"
/>
</References>
<Imports>
<Import Namespace = "Microsoft.VisualBasic" />
<Import Namespace = "System" />
<Import Namespace = "System.Collections" />
<Import Namespace = "System.Data" />
<Import Namespace = "System.Diagnostics" />
</Imports>
</Build>
<Files>
<Include>
<File
RelPath = "AssemblyInfo.vb"
SubType = "Code"
BuildAction = "Compile"
/>
<File
RelPath = "ReadMe.txt"
BuildAction = "Content"
/>
<File
RelPath = "SimpleVBTest.vb"
SubType = "Code"
BuildAction = "Compile"
/>
</Include>
</Files>
</VisualBasic>
</VisualStudioProject>

Просмотреть файл

@ -0,0 +1,73 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-sample", "csharp\csharp-sample.csproj", "{15D66EEE-A852-4A52-89C2-83E74ECF3770}"
EndProject
Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "jsharp-sample", "jsharp\jsharp-sample.vjsproj", "{B55A6E53-57A9-4205-B396-C9983B3AF46A}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "vb-sample", "vb\vb-sample.vbproj", "{F199991B-6C8E-4AB0-9AAA-703CD4897700}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpp-sample", "cpp-sample\cpp-sample.vcproj", "{7E5849C7-0469-4AD2-91B9-C87203934254}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed platforms = Debug|Mixed platforms
Debug|Win32 = Debug|Win32
Release|Any CPU = Release|Any CPU
Release|Mixed platforms = Release|Mixed platforms
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug|Any CPU.Build.0 = Debug|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug|Mixed platforms.ActiveCfg = Debug|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug|Mixed platforms.Build.0 = Debug|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug|Win32.ActiveCfg = Debug|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Debug|Win32.Build.0 = Debug|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release|Any CPU.ActiveCfg = Release|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release|Any CPU.Build.0 = Release|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release|Mixed platforms.ActiveCfg = Release|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release|Mixed platforms.Build.0 = Release|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release|Win32.ActiveCfg = Release|Any CPU
{15D66EEE-A852-4A52-89C2-83E74ECF3770}.Release|Win32.Build.0 = Release|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug|Mixed platforms.ActiveCfg = Debug|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug|Mixed platforms.Build.0 = Debug|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug|Win32.ActiveCfg = Debug|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Debug|Win32.Build.0 = Debug|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release|Any CPU.Build.0 = Release|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release|Mixed platforms.ActiveCfg = Release|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release|Mixed platforms.Build.0 = Release|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release|Win32.ActiveCfg = Release|Any CPU
{B55A6E53-57A9-4205-B396-C9983B3AF46A}.Release|Win32.Build.0 = Release|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug|Mixed platforms.ActiveCfg = Debug|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug|Mixed platforms.Build.0 = Debug|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug|Win32.ActiveCfg = Debug|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Debug|Win32.Build.0 = Debug|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release|Any CPU.Build.0 = Release|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release|Mixed platforms.ActiveCfg = Release|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release|Mixed platforms.Build.0 = Release|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release|Win32.ActiveCfg = Release|Any CPU
{F199991B-6C8E-4AB0-9AAA-703CD4897700}.Release|Win32.Build.0 = Release|Any CPU
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug|Any CPU.ActiveCfg = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug|Any CPU.Build.0 = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug|Mixed platforms.ActiveCfg = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug|Mixed platforms.Build.0 = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug|Win32.ActiveCfg = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Debug|Win32.Build.0 = Debug|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release|Any CPU.ActiveCfg = Release|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release|Any CPU.Build.0 = Release|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release|Mixed platforms.ActiveCfg = Release|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release|Mixed platforms.Build.0 = Release|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release|Win32.ActiveCfg = Release|Win32
{7E5849C7-0469-4AD2-91B9-C87203934254}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-sample", "csharp-sample\csharp-sample.csproj", "{45103FD8-4F1F-4B2D-9E75-20094E98EE64}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-debug-only", "csharp-debug-only\csharp-debug-only.csproj", "{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Debug|Any CPU.Build.0 = Debug|Any CPU
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Release|Any CPU.ActiveCfg = Release|Any CPU
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Release|Any CPU.Build.0 = Release|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,26 @@

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-sample", "csharp-sample\csharp-sample.csproj", "{45103FD8-4F1F-4B2D-9E75-20094E98EE64}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-debug-only-no-nunit", "csharp-debug-only-no-nunit\csharp-debug-only-no-nunit.csproj", "{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Debug|Any CPU.Build.0 = Debug|Any CPU
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Release|Any CPU.ActiveCfg = Release|Any CPU
{45103FD8-4F1F-4B2D-9E75-20094E98EE64}.Release|Any CPU.Build.0 = Release|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B9DB5E6C-8A54-40F9-9B1E-225B58FE7ED4}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,29 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "legacy-csharp-sample", "legacy-csharp-sample\legacy-csharp-sample.csproj", "{2F5189E6-19B3-465F-AF2D-41231B38A64E}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "legacy-cpp-unmanaged", "legacy-cpp-unmanaged\legacy-cpp-unmanaged.vcproj", "{FDBEFC64-EDEF-4645-81EB-C6EA9597170D}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{2F5189E6-19B3-465F-AF2D-41231B38A64E}.Debug.ActiveCfg = Debug|.NET
{2F5189E6-19B3-465F-AF2D-41231B38A64E}.Debug.Build.0 = Debug|.NET
{2F5189E6-19B3-465F-AF2D-41231B38A64E}.Release.ActiveCfg = Release|.NET
{2F5189E6-19B3-465F-AF2D-41231B38A64E}.Release.Build.0 = Release|.NET
{FDBEFC64-EDEF-4645-81EB-C6EA9597170D}.Debug.ActiveCfg = Debug|Win32
{FDBEFC64-EDEF-4645-81EB-C6EA9597170D}.Debug.Build.0 = Debug|Win32
{FDBEFC64-EDEF-4645-81EB-C6EA9597170D}.Release.ActiveCfg = Release|Win32
{FDBEFC64-EDEF-4645-81EB-C6EA9597170D}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,27 @@
Microsoft Visual Studio Solution File, Format Version 7.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebApplication1", "http://localhost/WebApplication1/WebApplication1.csproj", "{7123B53C-8003-454D-92D1-E9E8C533CBED}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "legacy-csharp-sample", "legacy-csharp-sample\legacy-csharp-sample.csproj", "{48E7F6A7-5E5C-4046-AD8E-5381D98D55B8}"
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
ConfigName.0 = Debug
ConfigName.1 = Release
EndGlobalSection
GlobalSection(ProjectDependencies) = postSolution
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{7123B53C-8003-454D-92D1-E9E8C533CBED}.Debug.ActiveCfg = Debug|.NET
{7123B53C-8003-454D-92D1-E9E8C533CBED}.Debug.Build.0 = Debug|.NET
{7123B53C-8003-454D-92D1-E9E8C533CBED}.Release.ActiveCfg = Release|.NET
{7123B53C-8003-454D-92D1-E9E8C533CBED}.Release.Build.0 = Release|.NET
{48E7F6A7-5E5C-4046-AD8E-5381D98D55B8}.Debug.ActiveCfg = Debug|.NET
{48E7F6A7-5E5C-4046-AD8E-5381D98D55B8}.Debug.Build.0 = Debug|.NET
{48E7F6A7-5E5C-4046-AD8E-5381D98D55B8}.Release.ActiveCfg = Release|.NET
{48E7F6A7-5E5C-4046-AD8E-5381D98D55B8}.Release.Build.0 = Release|.NET
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,105 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.40607</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{F199991B-6C8E-4AB0-9AAA-703CD4897700}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>vb-sample</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<AssemblyOriginatorKeyMode>None</AssemblyOriginatorKeyMode>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Library</OutputType>
<OptionCompare>Binary</OptionCompare>
<OptionExplicit>On</OptionExplicit>
<OptionStrict>Off</OptionStrict>
<RootNamespace>vb_sample</RootNamespace>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>bin\</OutputPath>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>
</DefineConstants>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<DebugSymbols>true</DebugSymbols>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>1</WarningLevel>
<NoWarn>42016,42017,42018,42019,42032</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>bin\</OutputPath>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>
</DefineConstants>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<DebugSymbols>false</DebugSymbols>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>1</WarningLevel>
<NoWarn>42016,42017,42018,42019,42032</NoWarn>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.framework">
<Name>nunit.framework</Name>
<HintPath>E:\Program Files\NUnit 2.2\bin\nunit.framework.dll</HintPath>
<AssemblyFolderKey>hklm\dn\nunit.framework</AssemblyFolderKey>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.vb">
<SubType>Code</SubType>
</Compile>
<Compile Include="SimpleVBTest.vb">
<SubType>Code</SubType>
</Compile>
<Content Include="ReadMe.txt" />
<AppDesigner Include="My Project\" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.Targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

Просмотреть файл

@ -0,0 +1,103 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{EA3CB73C-BD18-4274-943E-67CF1DAE8B9E}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>NUnit.Engine.Tests</RootNamespace>
<AssemblyName>vs-project-loader.tests</AssemblyName>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</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</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.engine.api, Version=3.0.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnit.Engine.Api.3.5.0-dev-03211\lib\nunit.engine.api.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="nunit.framework, Version=3.4.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnit.3.4.1\lib\net20\nunit.framework.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="NUnit.System.Linq, Version=0.2.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnit.3.4.1\lib\net20\NUnit.System.Linq.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="resources\TestResource.cs" />
<Compile Include="TempResourceFile.cs" />
<Compile Include="VisualStudioProjectLoaderTests.cs" />
<Compile Include="VSProjectTests.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
<EmbeddedResource Include="resources\cpp-default-library.vcproj" />
<EmbeddedResource Include="resources\cpp-sample.vcproj" />
<EmbeddedResource Include="resources\fsharp-sample.fsproj" />
<EmbeddedResource Include="resources\jsharp-sample.vjsproj" />
<EmbeddedResource Include="resources\legacy-cpp-library-with-macros.vcproj" />
<EmbeddedResource Include="resources\legacy-cpp-makefile-project.vcproj" />
<EmbeddedResource Include="resources\legacy-cpp-sample.vcproj" />
<EmbeddedResource Include="resources\legacy-cpp-unmanaged.vcproj" />
<EmbeddedResource Include="resources\legacy-jsharp-sample.vjsproj" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\extension\vs-project-loader.csproj">
<Project>{96181317-7b6f-49f0-b283-6e804d41c8af}</Project>
<Name>vs-project-loader</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="resources\csharp-debug-only-no-nunit.csproj" />
<EmbeddedResource Include="resources\csharp-debug-only.csproj" />
<EmbeddedResource Include="resources\csharp-missing-output-path.csproj" />
<EmbeddedResource Include="resources\csharp-sample.csproj" />
<EmbeddedResource Include="resources\csharp-sample_noplatform.csproj" />
<EmbeddedResource Include="resources\csharp-xna-project.csproj" />
<EmbeddedResource Include="resources\legacy-csharp-hebrew-file-problem.csproj" />
<EmbeddedResource Include="resources\legacy-csharp-sample.csproj" />
<EmbeddedResource Include="resources\legacy-samples.sln" />
<EmbeddedResource Include="resources\legacy-vb-sample.vbproj" />
<EmbeddedResource Include="resources\MultiplePlatformProject.csproj" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="resources\samples.sln" />
<EmbeddedResource Include="resources\solution-with-disabled-project.sln" />
<EmbeddedResource Include="resources\solution-with-non-nunit-project.sln" />
<EmbeddedResource Include="resources\solution-with-unmanaged-cpp.sln" />
<EmbeddedResource Include="resources\solution-with-web-application.sln" />
<EmbeddedResource Include="resources\vb-sample.vbproj" />
</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>

33
vs-project-loader.sln Normal file
Просмотреть файл

@ -0,0 +1,33 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs-project-loader", "src\extension\vs-project-loader.csproj", "{96181317-7B6F-49F0-B283-6E804D41C8AF}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{6217E5FA-D329-4278-9307-7FCF8F48E9F1}"
ProjectSection(SolutionItems) = preProject
build.cake = build.cake
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "vs-project-loader.tests", "src\tests\vs-project-loader.tests.csproj", "{EA3CB73C-BD18-4274-943E-67CF1DAE8B9E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{96181317-7B6F-49F0-B283-6E804D41C8AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{96181317-7B6F-49F0-B283-6E804D41C8AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{96181317-7B6F-49F0-B283-6E804D41C8AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{96181317-7B6F-49F0-B283-6E804D41C8AF}.Release|Any CPU.Build.0 = Release|Any CPU
{EA3CB73C-BD18-4274-943E-67CF1DAE8B9E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EA3CB73C-BD18-4274-943E-67CF1DAE8B9E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EA3CB73C-BD18-4274-943E-67CF1DAE8B9E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EA3CB73C-BD18-4274-943E-67CF1DAE8B9E}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal