├── src
├── SampleSolution
│ ├── TextFile1.txt
│ ├── ClassLibraryVB
│ │ ├── Class1.vb
│ │ ├── My Project
│ │ │ ├── Settings.settings
│ │ │ ├── Application.Designer.vb
│ │ │ ├── Application.myapp
│ │ │ ├── AssemblyInfo.vb
│ │ │ ├── Resources.Designer.vb
│ │ │ ├── Settings.Designer.vb
│ │ │ └── Resources.resx
│ │ └── ClassLibraryVB.vbproj
│ ├── WindowsFormsApplicationVB
│ │ ├── Form1.vb
│ │ ├── App.config
│ │ ├── My Project
│ │ │ ├── Settings.settings
│ │ │ ├── Application.myapp
│ │ │ ├── AssemblyInfo.vb
│ │ │ ├── Application.Designer.vb
│ │ │ ├── Resources.Designer.vb
│ │ │ └── Settings.Designer.vb
│ │ ├── Form1.Designer.vb
│ │ └── WindowsFormsApplicationVB.vbproj
│ ├── WpfApplicationVB
│ │ ├── MainWindow.xaml.vb
│ │ ├── Application.xaml.vb
│ │ ├── App.config
│ │ ├── MainWindow.xaml
│ │ ├── My Project
│ │ │ ├── Settings.settings
│ │ │ ├── AssemblyInfo.vb
│ │ │ ├── Resources.Designer.vb
│ │ │ ├── Settings.Designer.vb
│ │ │ └── Resources.resx
│ │ └── Application.xaml
│ ├── ClassLibraryCS
│ │ ├── Class1.cs
│ │ └── ClassLibraryCS.csproj
│ ├── ClassLibraryFS
│ │ ├── Library1.fs
│ │ ├── Script.fsx
│ │ └── ClassLibraryFS.fsproj
│ ├── ConsoleApplicationVB
│ │ ├── Module1.vb
│ │ ├── App.config
│ │ ├── My Project
│ │ │ ├── Settings.settings
│ │ │ ├── Application.Designer.vb
│ │ │ ├── Application.myapp
│ │ │ ├── AssemblyInfo.vb
│ │ │ ├── Resources.Designer.vb
│ │ │ ├── Settings.Designer.vb
│ │ │ └── Resources.resx
│ │ └── ConsoleApplicationVB.vbproj
│ ├── ConsoleApplicationCS
│ │ ├── Program.cs
│ │ └── ConsoleApplicationCS.csproj
│ ├── WpfApplicationCS
│ │ ├── App.config
│ │ ├── Properties
│ │ │ ├── Settings.settings
│ │ │ ├── Settings.Designer.cs
│ │ │ ├── Resources.Designer.cs
│ │ │ └── Resources.resx
│ │ ├── MainWindow.xaml
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── MainWindow.xaml.cs
│ │ └── WpfApplicationCS.csproj
│ ├── ConsoleApplicationFS
│ │ ├── App.config
│ │ ├── Program.fs
│ │ └── ConsoleApplicationFS.fsproj
│ ├── WindowsFormsApplicationCS
│ │ ├── App.config
│ │ ├── Properties
│ │ │ ├── Settings.settings
│ │ │ ├── Settings.Designer.cs
│ │ │ ├── Resources.Designer.cs
│ │ │ └── Resources.resx
│ │ ├── Form1.cs
│ │ ├── Program.cs
│ │ ├── Form1.Designer.cs
│ │ └── WindowsFormsApplicationCS.csproj
│ ├── AzureCloudService
│ │ ├── ServiceDefinition.csdef
│ │ ├── ServiceConfiguration.Cloud.cscfg
│ │ ├── ServiceConfiguration.Local.cscfg
│ │ └── AzureCloudService.ccproj
│ ├── WebApplicationVB
│ │ ├── My Project
│ │ │ ├── Settings.settings
│ │ │ ├── Application.Designer.vb
│ │ │ ├── Application.myapp
│ │ │ ├── AssemblyInfo.vb
│ │ │ ├── Resources.Designer.vb
│ │ │ ├── Settings.Designer.vb
│ │ │ ├── MyExtensions
│ │ │ │ └── MyWebExtension.vb
│ │ │ └── Resources.resx
│ │ ├── Web.config
│ │ ├── Web.Debug.config
│ │ └── Web.Release.config
│ └── WebApplicationCS
│ │ ├── Web.config
│ │ ├── Web.Debug.config
│ │ ├── Web.Release.config
│ │ └── WebApplicationCS.csproj
├── SetStartupProjects
│ ├── InternalsVisibleTo.cs
│ ├── GlobalUsings.cs
│ ├── Solution2017.suotemplate
│ ├── Solution2019.suotemplate
│ ├── Solution2022.suotemplate
│ ├── Project.cs
│ ├── Resource.cs
│ ├── XmlExtensions.cs
│ ├── VisualStudioVersions.cs
│ ├── SetStartupProjects.csproj
│ ├── SolutionProjectExtractor.cs
│ └── StartProjectSuoCreator.cs
├── icon.png
├── Tests
│ ├── SimpleSolutionWithDefault
│ │ ├── SimpleSolution.StartupProjects.txt
│ │ ├── SimpleSolution.sln
│ │ ├── ClassLibrary
│ │ │ └── ClassLibrary.csproj
│ │ └── ConsoleApplication
│ │ │ └── ConsoleApplication.csproj
│ ├── GlobalUsings.cs
│ ├── ModuleInitializer.cs
│ ├── WebApplication_websdk.txt
│ ├── SolutionProjectExtractorTests.cs
│ ├── Samples.cs
│ ├── OutputType_Conditional_Exe.txt
│ ├── OutputType_Exe.txt
│ ├── OutputType_Lib.txt
│ ├── Lower_Include.txt
│ ├── Multiple_Exclude.txt
│ ├── Multiple_Include.txt
│ ├── StartActionIsProgram.txt
│ ├── WebApplication_xproj.txt
│ ├── SolutionProjectExtractorTests.GetAllProjectFiles.OSX.verified.txt
│ ├── SolutionProjectExtractorTests.GetAllProjectFiles.Windows.verified.txt
│ ├── Tests.csproj
│ ├── StartProjectFinderTests.cs
│ └── OutputType_WinExe.txt
├── Images
│ ├── itworked.png
│ ├── textoutput.png
│ ├── desiredoutput.png
│ ├── encodingtest.png
│ ├── enablemultistart.png
│ ├── startprojectformat.png
│ └── structuredstorageexplorer.png
├── mdsnippets.json
├── global.json
├── .gitattributes
├── SetStartupProjects.slnx
├── Directory.Build.props
├── SetStartupProjects.slnx.DotSettings
├── Directory.Packages.props
├── nuget.config
└── appveyor.yml
├── .github
├── FUNDING.yml
├── ISSUE_TEMPLATE
│ ├── config.yml
│ ├── feature_request.md
│ └── bug_report.md
├── dependabot.yml
├── workflows
│ ├── merge-dependabot.yml
│ └── on-push-do-doco.yml
└── stale.yml
├── .gitignore
├── license.txt
└── code_of_conduct.md
/src/SampleSolution/TextFile1.txt:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | github: SimonCropp
2 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
--------------------------------------------------------------------------------
/src/SetStartupProjects/InternalsVisibleTo.cs:
--------------------------------------------------------------------------------
1 | [assembly:InternalsVisibleTo("Tests")]
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/Class1.vb:
--------------------------------------------------------------------------------
1 | Public Class Class1
2 |
3 | End Class
4 |
--------------------------------------------------------------------------------
/src/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/icon.png
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/Form1.vb:
--------------------------------------------------------------------------------
1 | Public Class Form1
2 |
3 | End Class
4 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/MainWindow.xaml.vb:
--------------------------------------------------------------------------------
1 | Class MainWindow
2 |
3 | End Class
4 |
--------------------------------------------------------------------------------
/src/SetStartupProjects/GlobalUsings.cs:
--------------------------------------------------------------------------------
1 | global using System.Xml.Linq;
2 | global using OpenMcdf;
--------------------------------------------------------------------------------
/src/Tests/SimpleSolutionWithDefault/SimpleSolution.StartupProjects.txt:
--------------------------------------------------------------------------------
1 | ClassLibrary\ClassLibrary.csproj
--------------------------------------------------------------------------------
/src/Images/itworked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/itworked.png
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.suo
2 | *.user
3 | bin/
4 | obj/
5 | .vs/
6 | *.DotSettings.user
7 | .idea/
8 | *.received.*
9 | nugets/
--------------------------------------------------------------------------------
/src/Images/textoutput.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/textoutput.png
--------------------------------------------------------------------------------
/src/mdsnippets.json:
--------------------------------------------------------------------------------
1 | {
2 | "TocExcludes": [ "NuGet package", "Release Notes", "Icon" ],
3 | "MaxWidth": 80
4 | }
--------------------------------------------------------------------------------
/src/Images/desiredoutput.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/desiredoutput.png
--------------------------------------------------------------------------------
/src/Images/encodingtest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/encodingtest.png
--------------------------------------------------------------------------------
/src/Images/enablemultistart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/enablemultistart.png
--------------------------------------------------------------------------------
/src/Images/startprojectformat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/startprojectformat.png
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryCS/Class1.cs:
--------------------------------------------------------------------------------
1 | namespace ClassLibrary
2 | {
3 | public class Class1
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryFS/Library1.fs:
--------------------------------------------------------------------------------
1 | namespace ClassLibraryFS
2 |
3 | type Class1() =
4 | member this.X = "F#"
5 |
--------------------------------------------------------------------------------
/src/Tests/GlobalUsings.cs:
--------------------------------------------------------------------------------
1 | global using System.Xml.Linq;
2 | global using SetStartupProjects;
3 | global using VerifyTests.DiffPlex;
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/Module1.vb:
--------------------------------------------------------------------------------
1 | Module Module1
2 |
3 | Sub Main()
4 |
5 | End Sub
6 |
7 | End Module
8 |
--------------------------------------------------------------------------------
/src/Images/structuredstorageexplorer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/Images/structuredstorageexplorer.png
--------------------------------------------------------------------------------
/src/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdk": {
3 | "version": "10.0.101",
4 | "allowPrerelease": true,
5 | "rollForward": "latestFeature"
6 | }
7 | }
--------------------------------------------------------------------------------
/src/SetStartupProjects/Solution2017.suotemplate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/SetStartupProjects/Solution2017.suotemplate
--------------------------------------------------------------------------------
/src/SetStartupProjects/Solution2019.suotemplate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/SetStartupProjects/Solution2019.suotemplate
--------------------------------------------------------------------------------
/src/SetStartupProjects/Solution2022.suotemplate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SimonCropp/SetStartupProjects/HEAD/src/SetStartupProjects/Solution2022.suotemplate
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: nuget
4 | directory: "/src"
5 | schedule:
6 | interval: daily
7 | open-pull-requests-limit: 10
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationCS/Program.cs:
--------------------------------------------------------------------------------
1 | namespace ConsoleApplication1
2 | {
3 | class Program
4 | {
5 | static void Main()
6 | {
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/Application.xaml.vb:
--------------------------------------------------------------------------------
1 | Class Application
2 |
3 | ' Application-level events, such as Startup, Exit, and DispatcherUnhandledException
4 | ' can be handled in this file.
5 |
6 | End Class
7 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationFS/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationFS/Program.fs:
--------------------------------------------------------------------------------
1 | // Learn more about F# at http://fsharp.net
2 | // See the 'F# Tutorial' project for more help.
3 |
4 | []
5 | let main argv =
6 | printfn "%A" argv
7 | 0 // return an integer exit code
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryFS/Script.fsx:
--------------------------------------------------------------------------------
1 | // Learn more about F# at http://fsharp.net. See the 'F# Tutorial' project
2 | // for more guidance on F# programming.
3 |
4 | #load "Library1.fs"
5 | open ClassLibraryFS
6 |
7 | // Define your library scripting code here
8 |
9 |
--------------------------------------------------------------------------------
/src/Tests/ModuleInitializer.cs:
--------------------------------------------------------------------------------
1 | public static class ModuleInitializer
2 | {
3 | [ModuleInitializer]
4 | public static void Initialize()
5 | {
6 | VerifyDiffPlex.Initialize(OutputType.Compact);
7 | VerifierSettings.InitializePlugins();
8 | }
9 | }
--------------------------------------------------------------------------------
/src/SampleSolution/AzureCloudService/ServiceDefinition.csdef:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/src/SetStartupProjects/Project.cs:
--------------------------------------------------------------------------------
1 | namespace SetStartupProjects;
2 |
3 | public class Project(string fullPath, string relativePath, string guid)
4 | {
5 | public readonly string Guid = guid;
6 | public readonly string RelativePath = relativePath;
7 | public readonly string FullPath = fullPath;
8 | }
--------------------------------------------------------------------------------
/src/Tests/WebApplication_websdk.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp2.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/SampleSolution/AzureCloudService/ServiceConfiguration.Cloud.cscfg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/src/SampleSolution/AzureCloudService/ServiceConfiguration.Local.cscfg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/MainWindow.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/MainWindow.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/Application.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/App.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationCS/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/SetStartupProjects/Resource.cs:
--------------------------------------------------------------------------------
1 | static class Resource
2 | {
3 | static Assembly assembly = typeof(Resource).Assembly;
4 |
5 | public static MemoryStream AsStream(string name)
6 | {
7 | using var stream = assembly.GetManifestResourceStream($"SetStartupProjects.{name}")!;
8 | var memoryStream = new MemoryStream();
9 | stream.CopyTo(memoryStream);
10 | return memoryStream;
11 | }
12 | }
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/App.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Configuration;
4 | using System.Data;
5 | using System.Linq;
6 | using System.Threading.Tasks;
7 | using System.Windows;
8 |
9 | namespace WpfApplicationCS
10 | {
11 | ///
12 | /// Interaction logic for App.xaml
13 | ///
14 | public partial class App : Application
15 | {
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/.github/workflows/merge-dependabot.yml:
--------------------------------------------------------------------------------
1 | name: merge-dependabot
2 | on:
3 | pull_request:
4 | jobs:
5 | automerge:
6 | runs-on: ubuntu-latest
7 | if: github.actor == 'dependabot[bot]'
8 | steps:
9 | - name: Dependabot Auto Merge
10 | uses: ahmadnassri/action-dependabot-auto-merge@v2.6.6
11 | with:
12 | target: minor
13 | github-token: ${{ secrets.dependabot }}
14 | command: squash and merge
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/.gitattributes:
--------------------------------------------------------------------------------
1 | * text
2 | *.suotemplate binary
3 | *.png binary
4 | *.snk binary
5 |
6 |
7 | *.verified.txt text eol=lf working-tree-encoding=UTF-8
8 | *.verified.xml text eol=lf working-tree-encoding=UTF-8
9 | *.verified.json text eol=lf working-tree-encoding=UTF-8
10 |
11 | .editorconfig text eol=lf working-tree-encoding=UTF-8
12 | *.sln.DotSettings text eol=lf working-tree-encoding=UTF-8
13 | *.slnx.DotSettings text eol=lf working-tree-encoding=UTF-8
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/Application.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | '
5 | ' Changes to this file may cause incorrect behavior and will be lost if
6 | ' the code is regenerated.
7 | '
8 | '------------------------------------------------------------------------------
9 |
10 | Option Strict On
11 | Option Explicit On
12 |
13 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Form1.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Data;
5 | using System.Drawing;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 | using System.Windows.Forms;
10 |
11 | namespace WindowsFormsApplicationCS
12 | {
13 | public partial class Form1 : Form
14 | {
15 | public Form1()
16 | {
17 | InitializeComponent();
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/Application.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/Application.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/Application.myapp:
--------------------------------------------------------------------------------
1 |
2 |
3 | false
4 | false
5 | 0
6 | true
7 | 0
8 | 1
9 | true
10 |
11 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/Application.myapp:
--------------------------------------------------------------------------------
1 |
2 |
3 | false
4 | false
5 | 0
6 | true
7 | 0
8 | 1
9 | true
10 |
11 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/Application.myapp:
--------------------------------------------------------------------------------
1 |
2 |
3 | false
4 | false
5 | 0
6 | true
7 | 0
8 | 2
9 | true
10 |
11 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/My Project/Application.myapp:
--------------------------------------------------------------------------------
1 |
2 |
3 | true
4 | Form1
5 | false
6 | 0
7 | true
8 | 0
9 | 0
10 | true
11 |
12 |
--------------------------------------------------------------------------------
/src/Tests/SolutionProjectExtractorTests.cs:
--------------------------------------------------------------------------------
1 | public class SolutionProjectExtractorTests
2 | {
3 | [Fact]
4 | public Task GetAllProjectFiles()
5 | {
6 | var files = SolutionProjectExtractor.GetAllProjectFiles("SampleSolution.txt");
7 | var toVerify = files.Select(_ =>
8 | new
9 | {
10 | _.Guid,
11 | _.RelativePath,
12 | FullPath = new FileInfo(_.FullPath),
13 | });
14 |
15 | var settings = new VerifySettings();
16 | settings.UniqueForOSPlatform();
17 |
18 | return Verify(toVerify, settings);
19 | }
20 | }
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using System.Windows.Forms;
6 |
7 | namespace WindowsFormsApplicationCS
8 | {
9 | static class Program
10 | {
11 | ///
12 | /// The main entry point for the application.
13 | ///
14 | [STAThread]
15 | static void Main()
16 | {
17 | Application.EnableVisualStyles();
18 | Application.SetCompatibleTextRenderingDefault(false);
19 | Application.Run(new Form1());
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/SetStartupProjects.slnx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/SetStartupProjects/XmlExtensions.cs:
--------------------------------------------------------------------------------
1 | static class XmlExtensions
2 | {
3 | public static void StripNamespace(this XDocument document)
4 | {
5 | if (document.Root == null)
6 | {
7 | return;
8 | }
9 |
10 | foreach (var element in document.Root.DescendantsAndSelf())
11 | {
12 | element.Name = element.Name.LocalName;
13 | element.ReplaceAttributes(GetAttributes(element));
14 | }
15 | }
16 |
17 | static IEnumerable GetAttributes(XElement element) =>
18 | element.Attributes()
19 | .Where(_ => !_.IsNamespaceDeclaration)
20 | .Select(_ => new XAttribute(_.Name.LocalName, _.Value));
21 | }
--------------------------------------------------------------------------------
/src/Tests/Samples.cs:
--------------------------------------------------------------------------------
1 | class Samples
2 | {
3 | static void GuessStartupProjects(string solutionFilePath)
4 | {
5 | var startupProjectGuids = StartProjectFinder.GetStartProjects(solutionFilePath)
6 | .ToList();
7 | StartProjectSuoCreator.CreateForSolutionFile(solutionFilePath, startupProjectGuids);
8 | }
9 |
10 | static void PassGuids(string solutionFilePath)
11 | {
12 | var startupProjectGuids = new List
13 | {
14 | "11111111-1111-1111-1111-111111111111",
15 | "22222222-2222-2222-2222-222222222222"
16 | };
17 | StartProjectSuoCreator.CreateForSolutionFile(solutionFilePath, startupProjectGuids);
18 | }
19 | }
--------------------------------------------------------------------------------
/src/Tests/OutputType_Conditional_Exe.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net461;netcoreapp2.0
5 |
6 |
7 | net461
8 |
9 |
10 | Exe
11 | 7.1
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | true
5 | preview
6 | false
7 | NU1608
8 | 3.0.0
9 | 1.0.0
10 | true
11 | embedded
12 | true
13 | true
14 | true
15 | true
16 | true
17 |
18 |
--------------------------------------------------------------------------------
/src/SetStartupProjects/VisualStudioVersions.cs:
--------------------------------------------------------------------------------
1 | namespace SetStartupProjects;
2 |
3 | ///
4 | /// What versions of Visual Studio to target for .suo creation.
5 | ///
6 | [Flags]
7 | public enum VisualStudioVersions
8 | {
9 | ///
10 | /// Target suo creation for Visual Studio 2017.
11 | ///
12 | Vs2017 = 8,
13 | ///
14 | /// Target suo creation for Visual Studio 2019.
15 | ///
16 | Vs2019 = 16,
17 | ///
18 | /// Target suo creation for Visual Studio 2022.
19 | ///
20 | Vs2022 = 32,
21 | ///
22 | /// Target suo creation for Visual Studio versions 2012, 2013, 2015, 2017, 2019, and 2022.
23 | ///
24 | All = Vs2017 | Vs2019 | Vs2022,
25 | }
--------------------------------------------------------------------------------
/src/SetStartupProjects/SetStartupProjects.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0;net9.0
5 | Simon Cropp
6 | Hacks a Visual Studio .suo file to set multiple startup projects.
7 | SUO, Visual Studio, Startup
8 | CS1591
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/MainWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using System.Windows;
7 | using System.Windows.Controls;
8 | using System.Windows.Data;
9 | using System.Windows.Documents;
10 | using System.Windows.Input;
11 | using System.Windows.Media;
12 | using System.Windows.Media.Imaging;
13 | using System.Windows.Navigation;
14 | using System.Windows.Shapes;
15 |
16 | namespace WpfApplicationCS
17 | {
18 | ///
19 | /// Interaction logic for MainWindow.xaml
20 | ///
21 | public partial class MainWindow : Window
22 | {
23 | public MainWindow()
24 | {
25 | InitializeComponent();
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/.github/workflows/on-push-do-doco.yml:
--------------------------------------------------------------------------------
1 | name: on-push-do-doco
2 | on:
3 | push:
4 | jobs:
5 | release:
6 | runs-on: windows-latest
7 | steps:
8 | - uses: actions/checkout@v4
9 | - name: Run MarkdownSnippets
10 | run: |
11 | dotnet tool install --global MarkdownSnippets.Tool
12 | mdsnippets ${GITHUB_WORKSPACE}
13 | shell: bash
14 | - name: Push changes
15 | run: |
16 | git config --local user.email "action@github.com"
17 | git config --local user.name "GitHub Action"
18 | git commit -m "Doco changes" -a || echo "nothing to commit"
19 | remote="https://${GITHUB_ACTOR}:${{secrets.GITHUB_TOKEN}}@github.com/${GITHUB_REPOSITORY}.git"
20 | branch="${GITHUB_REF:11}"
21 | git push "${remote}" ${branch} || echo "nothing to push"
22 | shell: bash
--------------------------------------------------------------------------------
/.github/stale.yml:
--------------------------------------------------------------------------------
1 | # Number of days of inactivity before an issue becomes stale
2 | daysUntilStale: 7
3 | # Number of days of inactivity before a stale issue is closed
4 | daysUntilClose: 7
5 | # Set to true to ignore issues in a milestone (defaults to false)
6 | exemptMilestones: true
7 | # Comment to post when marking an issue as stale. Set to `false` to disable
8 | markComment: >
9 | This issue has been automatically marked as stale because it has not had
10 | recent activity. It will be closed if no further activity occurs. Thank you
11 | for your contributions.
12 | # Comment to post when closing a stale issue. Set to `false` to disable
13 | closeComment: false
14 | # Optionally, specify configuration settings that are specific to just 'issues' or 'pulls':
15 | pulls:
16 | daysUntilStale: 30
17 | exemptLabels:
18 | - Question
19 | - Bug
20 | - Feature
21 | - Improvement
--------------------------------------------------------------------------------
/src/SetStartupProjects.slnx.DotSettings:
--------------------------------------------------------------------------------
1 |
2 | ..\Shared.sln.DotSettings
3 | True
4 | True
5 | 1
6 |
--------------------------------------------------------------------------------
/src/Tests/OutputType_Exe.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {D04CF1FC-C4C0-4959-A817-2BC68770CA9B}
9 | Exe
10 | Properties
11 | Sender
12 | Sender
13 | v4.5
14 | 512
15 | ..\
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/Tests/OutputType_Lib.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {D04CF1FC-C4C0-4959-A817-2BC68770CA9B}
9 | Library
10 | Properties
11 | Sender
12 | Sender
13 | v4.5
14 | 512
15 | ..\
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/Tests/Lower_Include.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {D04CF1FC-C4C0-4959-A817-2BC68770CA9B}
9 | {349c5851-65df-11da-9384-00065b846f21}
10 | Library
11 | Properties
12 | Sender
13 | Sender
14 | v4.5
15 | 512
16 | ..\
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/Directory.Packages.props:
--------------------------------------------------------------------------------
1 |
2 |
3 | true
4 | true
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/Tests/Multiple_Exclude.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {D04CF1FC-C4C0-4959-A817-2BC68770CA9B}
9 | {8BB0C5E8-0616-4F60-8E55-A43933E57E9C};{581633EB-B896-402F-8E60-36F3DA191C85}
10 | Library
11 | Properties
12 | Sender
13 | Sender
14 | v4.5
15 | 512
16 | ..\
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/Tests/Multiple_Include.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {D04CF1FC-C4C0-4959-A817-2BC68770CA9B}
9 | {8BB0C5E8-0616-4F60-8E55-A43933E57E9C};{F85E285D-A4E0-4152-9332-AB1D724D3325}
10 | Library
11 | Properties
12 | Sender
13 | Sender
14 | v4.5
15 | 512
16 | ..\
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/Tests/StartActionIsProgram.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | AnyCPU
6 | 8.0.30703
7 | 2.0
8 | {D04CF1FC-C4C0-4959-A817-2BC68770CA9B}
9 | Library
10 | Properties
11 | Sender
12 | Sender
13 | v4.5
14 | 512
15 | ..\
16 |
17 |
18 |
19 | Program
20 | $(ProjectDir)$(OutputPath)NServiceBus.Host.exe
21 |
22 |
--------------------------------------------------------------------------------
/license.txt:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2015 Simon Cropp
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
23 |
--------------------------------------------------------------------------------
/src/nuget.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
16 |
17 |
20 |
21 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/appveyor.yml:
--------------------------------------------------------------------------------
1 | image:
2 | - Visual Studio 2022
3 | - macOS
4 | #- Ubuntu
5 | environment:
6 | DOTNET_NOLOGO: 1
7 | DOTNET_CLI_TELEMETRY_OPTOUT: true
8 | DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
9 | build_script:
10 | - pwsh: |
11 | if ($isWindows) {
12 | Invoke-WebRequest "https://dot.net/v1/dotnet-install.ps1" -OutFile "./dotnet-install.ps1"
13 | ./dotnet-install.ps1 -JSonFile src/global.json -Architecture x64 -InstallDir 'C:\Program Files\dotnet'
14 | }
15 | else {
16 | Invoke-WebRequest "https://dot.net/v1/dotnet-install.sh" -OutFile "./dotnet-install.sh"
17 | sudo chmod u+x dotnet-install.sh
18 | if ($isMacOS) {
19 | sudo ./dotnet-install.sh --jsonfile src/global.json --architecture x64 --install-dir '/usr/local/share/dotnet'
20 | } else {
21 | sudo ./dotnet-install.sh --jsonfile src/global.json --architecture x64 --install-dir '/usr/share/dotnet'
22 | }
23 | }
24 | - dotnet build src --configuration Release
25 | - dotnet test src --configuration Release --no-build --no-restore
26 | on_failure:
27 | - ps: Get-ChildItem *.received.* -recurse | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
28 | test: off
29 | artifacts:
30 | - path: nugets\*.nupkg
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/Form1.Designer.vb:
--------------------------------------------------------------------------------
1 | _
2 | Partial Class Form1
3 | Inherits System.Windows.Forms.Form
4 |
5 | 'Form overrides dispose to clean up the component list.
6 | _
7 | Protected Overrides Sub Dispose(ByVal disposing As Boolean)
8 | Try
9 | If disposing AndAlso components IsNot Nothing Then
10 | components.Dispose()
11 | End If
12 | Finally
13 | MyBase.Dispose(disposing)
14 | End Try
15 | End Sub
16 |
17 | 'Required by the Windows Form Designer
18 | Private components As System.ComponentModel.IContainer
19 |
20 | 'NOTE: The following procedure is required by the Windows Form Designer
21 | 'It can be modified using the Windows Form Designer.
22 | 'Do not modify it using the code editor.
23 | _
24 | Private Sub InitializeComponent()
25 | components = New System.ComponentModel.Container()
26 | Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
27 | Me.Text = "Form1"
28 | End Sub
29 |
30 | End Class
31 |
--------------------------------------------------------------------------------
/src/Tests/SimpleSolutionWithDefault/SimpleSolution.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 2013
4 | VisualStudioVersion = 12.0.31101.0
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassLibrary", "ClassLibrary\ClassLibrary.csproj", "{11111111-1111-1111-1111-111111111111}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleApplication", "ConsoleApplication\ConsoleApplication.csproj", "{22222222-2222-2222-2222-222222222222}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | EndGlobalSection
14 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
15 | {11111111-1111-1111-1111-111111111111}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
16 | {11111111-1111-1111-1111-111111111111}.Debug|Any CPU.Build.0 = Debug|Any CPU
17 | {22222222-2222-2222-2222-222222222222}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
18 | {22222222-2222-2222-2222-222222222222}.Debug|Any CPU.Build.0 = Debug|Any CPU
19 | EndGlobalSection
20 | GlobalSection(SolutionProperties) = preSolution
21 | HideSolutionNode = FALSE
22 | EndGlobalSection
23 | EndGlobal
24 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.0
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace WpfApplicationCS.Properties
12 | {
13 |
14 |
15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
18 | {
19 |
20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
21 |
22 | public static Settings Default
23 | {
24 | get
25 | {
26 | return defaultInstance;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Properties/Settings.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.0
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace WindowsFormsApplicationCS.Properties
12 | {
13 |
14 |
15 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
16 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
17 | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
18 | {
19 |
20 | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
21 |
22 | public static Settings Default
23 | {
24 | get
25 | {
26 | return defaultInstance;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/Tests/WebApplication_xproj.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 14.0
5 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
6 |
7 |
8 |
9 | f07652eb-7fea-4e52-8e77-09e16058b609
10 | WebApplication
11 | .\obj
12 | .\bin\
13 | v4.5.2
14 |
15 |
16 | 2.0
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 |
5 | ' General Information about an assembly is controlled through the following
6 | ' set of attributes. Change these attribute values to modify the information
7 | ' associated with an assembly.
8 |
9 | ' Review the values of the assembly attributes
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
21 |
22 |
23 | ' Version information for an assembly consists of the following four values:
24 | '
25 | ' Major Version
26 | ' Minor Version
27 | ' Build Number
28 | ' Revision
29 | '
30 | ' You can specify all the values or you can default the Build and Revision Numbers
31 | ' by using the '*' as shown below:
32 | '
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 |
5 | ' General Information about an assembly is controlled through the following
6 | ' set of attributes. Change these attribute values to modify the information
7 | ' associated with an assembly.
8 |
9 | ' Review the values of the assembly attributes
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
20 |
21 |
22 | ' Version information for an assembly consists of the following four values:
23 | '
24 | ' Major Version
25 | ' Minor Version
26 | ' Build Number
27 | ' Revision
28 | '
29 | ' You can specify all the values or you can default the Build and Revision Numbers
30 | ' by using the '*' as shown below:
31 | '
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 |
5 | ' General Information about an assembly is controlled through the following
6 | ' set of attributes. Change these attribute values to modify the information
7 | ' associated with an assembly.
8 |
9 | ' Review the values of the assembly attributes
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
21 |
22 |
23 | ' Version information for an assembly consists of the following four values:
24 | '
25 | ' Major Version
26 | ' Minor Version
27 | ' Build Number
28 | ' Revision
29 | '
30 | ' You can specify all the values or you can default the Build and Revision Numbers
31 | ' by using the '*' as shown below:
32 | '
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Form1.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace WindowsFormsApplicationCS
2 | {
3 | partial class Form1
4 | {
5 | ///
6 | /// Required designer variable.
7 | ///
8 | private System.ComponentModel.IContainer components = null;
9 |
10 | ///
11 | /// Clean up any resources being used.
12 | ///
13 | /// true if managed resources should be disposed; otherwise, false.
14 | protected override void Dispose(bool disposing)
15 | {
16 | if (disposing && (components != null))
17 | {
18 | components.Dispose();
19 | }
20 | base.Dispose(disposing);
21 | }
22 |
23 | #region Windows Form Designer generated code
24 |
25 | ///
26 | /// Required method for Designer support - do not modify
27 | /// the contents of this method with the code editor.
28 | ///
29 | private void InitializeComponent()
30 | {
31 | this.components = new System.ComponentModel.Container();
32 | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
33 | this.Text = "Form1";
34 | }
35 |
36 | #endregion
37 | }
38 | }
39 |
40 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 |
5 | ' General Information about an assembly is controlled through the following
6 | ' set of attributes. Change these attribute values to modify the information
7 | ' associated with an assembly.
8 |
9 | ' Review the values of the assembly attributes
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
21 |
22 |
23 | ' Version information for an assembly consists of the following four values:
24 | '
25 | ' Major Version
26 | ' Minor Version
27 | ' Build Number
28 | ' Revision
29 | '
30 | ' You can specify all the values or you can default the Build and Revision Numbers
31 | ' by using the '*' as shown below:
32 | '
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationCS/Web.Debug.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
29 |
30 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/Web.Debug.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
29 |
30 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationCS/Web.Release.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
30 |
31 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/Web.Release.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
30 |
31 |
--------------------------------------------------------------------------------
/src/SetStartupProjects/SolutionProjectExtractor.cs:
--------------------------------------------------------------------------------
1 | namespace SetStartupProjects;
2 |
3 | ///
4 | /// Helper that extracts all the project paths and guids from a solution.
5 | ///
6 | public static class SolutionProjectExtractor
7 | {
8 | public static IEnumerable GetAllProjectFiles(string solutionFile)
9 | {
10 | Ensure.FileExists(solutionFile, nameof(solutionFile));
11 | var solutionDirectory = Path.GetDirectoryName(solutionFile)!;
12 | foreach (var line in File.ReadAllLines(solutionFile))
13 | {
14 | if (!line.StartsWith("Project("))
15 | {
16 | continue;
17 | }
18 | var strings = line.Split(["\", \""], StringSplitOptions.RemoveEmptyEntries);
19 | var guidType = strings[0].Split('{', '}')[1];
20 | var guid = strings[2].Trim('{', '}', '"');
21 | var relativePath = Path.DirectorySeparatorChar == '\\' ? strings[1] : strings[1].Replace('\\', Path.DirectorySeparatorChar);
22 | var fullPath = Path.GetFullPath(Path.Combine(solutionDirectory, relativePath));
23 | if (guidType == "2150E333-8FDC-42A3-9474-1A3956D46DE8")
24 | {
25 | //this is a Solution Folder and can be ignored
26 | continue;
27 | }
28 | yield return new(
29 | fullPath: fullPath,
30 | relativePath: relativePath,
31 | guid: guid
32 | );
33 | }
34 | }
35 | }
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: How to raise feature requests
4 | ---
5 |
6 |
7 | Note: New issues raised, where it is clear the submitter has not read the issue template, are likely to be closed with "please read the issue template". Please don't take offense at this. It is simply a time management decision. If someone raises an issue, and can't be bothered to spend the time to read the issue template, then the project maintainers should not be expected to spend the time to read the submitted issue. Often too much time is spent going back and forth in issue comments asking for information that is outlined in the issue template.
8 |
9 | If you are certain the feature will be accepted, it is better to raise a [Pull Request (PR)](https://help.github.com/articles/about-pull-requests/).
10 |
11 | If you are uncertain if the feature will be accepted, outline the proposal below to confirm it is viable, prior to raising a PR that implements the feature.
12 |
13 | Note that even if the feature is a good idea and viable, it may not be accepted since the ongoing effort in maintaining the feature may outweigh the benefit it delivers.
14 |
15 |
16 | #### Is the feature request related to a problem
17 |
18 | A clear and concise description of what the problem is.
19 |
20 |
21 | #### Describe the solution
22 |
23 | A clear and concise proposal of how you intend to implement the feature.
24 |
25 |
26 | #### Describe alternatives considered
27 |
28 | A clear and concise description of any alternative solutions or features you've considered.
29 |
30 |
31 | #### Additional context
32 |
33 | Add any other context about the feature request here.
34 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/My Project/Application.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | 'NOTE: This file is auto-generated; do not modify it directly. To make changes,
18 | ' or if you encounter build errors in this file, go to the Project Designer
19 | ' (go to Project Properties or double-click the My Project node in
20 | ' Solution Explorer), and make changes on the Application tab.
21 | '
22 | Partial Friend Class MyApplication
23 |
24 | _
25 | Public Sub New()
26 | MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
27 | Me.IsSingleInstance = false
28 | Me.EnableVisualStyles = true
29 | Me.SaveMySettingsOnExit = true
30 | Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
31 | End Sub
32 |
33 | _
34 | Protected Overrides Sub OnCreateMainForm()
35 | Me.MainForm = Global.WindowsFormsApplicationVB.Form1
36 | End Sub
37 | End Class
38 | End Namespace
39 |
--------------------------------------------------------------------------------
/src/Tests/SimpleSolutionWithDefault/ClassLibrary/ClassLibrary.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {11111111-1111-1111-1111-111111111111}
8 | Library
9 | Properties
10 | ClassLibrary
11 | ClassLibrary
12 | v4.5
13 | 512
14 |
15 |
16 | true
17 | full
18 | false
19 | bin\Debug\
20 | DEBUG;TRACE
21 | prompt
22 | 4
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/src/Tests/SimpleSolutionWithDefault/ConsoleApplication/ConsoleApplication.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {22222222-2222-2222-2222-222222222222}
8 | Exe
9 | Properties
10 | ConsoleApplication
11 | ConsoleApplication
12 | v4.5
13 | 512
14 |
15 |
16 | AnyCPU
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug fix
3 | about: Create a bug fix to help us improve
4 | ---
5 |
6 | Note: New issues raised, where it is clear the submitter has not read the issue template, are likely to be closed with "please read the issue template". Please don't take offense at this. It is simply a time management decision. If someone raises an issue, and can't be bothered to spend the time to read the issue template, then the project maintainers should not be expected to spend the time to read the submitted issue. Often too much time is spent going back and forth in issue comments asking for information that is outlined in the issue template.
7 |
8 |
9 | #### Preamble
10 |
11 | General questions may be better placed [StackOveflow](https://stackoverflow.com/).
12 |
13 | Where relevant, ensure you are using the current stable versions on your development stack. For example:
14 |
15 | * Visual Studio
16 | * [.NET SDK or .NET Core SDK](https://www.microsoft.com/net/download)
17 | * Any related NuGet packages
18 |
19 | Any code or stack traces must be properly formatted with [GitHub markdown](https://guides.github.com/features/mastering-markdown/).
20 |
21 |
22 | #### Describe the bug
23 |
24 | A clear and concise description of what the bug is. Include any relevant version information.
25 |
26 | A clear and concise description of what you expected to happen.
27 |
28 | Add any other context about the problem here.
29 |
30 |
31 | #### Minimal Repro
32 |
33 | Ensure you have replicated the bug in a minimal solution with the fewest moving parts. Often this will help point to the true cause of the problem. Upload this repro as part of the issue, preferably a public GitHub repository or a downloadable zip. The repro will allow the maintainers of this project to smoke test the any fix.
34 |
35 | #### Submit a PR that fixes the bug
36 |
37 | Submit a [Pull Request (PR)](https://help.github.com/articles/about-pull-requests/) that fixes the bug. Include in this PR a test that verifies the fix. If you were not able to fix the bug, a PR that illustrates your partial progress will suffice.
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryCS/ClassLibraryCS.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {99999999-9999-9999-9999-999999999999}
8 | Library
9 | Properties
10 | ClassLibraryCS
11 | ClassLibraryCS
12 | v4.5
13 | 512
14 |
15 |
16 | true
17 | full
18 | false
19 | bin\Debug\
20 | DEBUG;TRACE
21 | prompt
22 | 4
23 |
24 |
25 | pdbonly
26 | true
27 | bin\Release\
28 | TRACE
29 | prompt
30 | 4
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationCS/ConsoleApplicationCS.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {11111111-1111-1111-1111-111111111111}
8 | Exe
9 | Properties
10 | ConsoleApplicationCS
11 | ConsoleApplicationCS
12 | v4.5
13 | 512
14 |
15 |
16 | AnyCPU
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 | AnyCPU
27 | pdbonly
28 | true
29 | bin\Release\
30 | TRACE
31 | prompt
32 | 4
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/src/Tests/SolutionProjectExtractorTests.GetAllProjectFiles.OSX.verified.txt:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | Guid: Guid_1,
4 | RelativePath: ClassLibraryCS/ClassLibraryCS.csproj,
5 | FullPath: {CurrentDirectory}ClassLibraryCS/ClassLibraryCS.csproj
6 | },
7 | {
8 | Guid: Guid_2,
9 | RelativePath: ConsoleApplicationCS/ConsoleApplicationCS.csproj,
10 | FullPath: {CurrentDirectory}ConsoleApplicationCS/ConsoleApplicationCS.csproj
11 | },
12 | {
13 | Guid: Guid_3,
14 | RelativePath: ClassLibraryVB/ClassLibraryVB.vbproj,
15 | FullPath: {CurrentDirectory}ClassLibraryVB/ClassLibraryVB.vbproj
16 | },
17 | {
18 | Guid: Guid_4,
19 | RelativePath: ConsoleApplicationVB/ConsoleApplicationVB.vbproj,
20 | FullPath: {CurrentDirectory}ConsoleApplicationVB/ConsoleApplicationVB.vbproj
21 | },
22 | {
23 | Guid: Guid_5,
24 | RelativePath: ConsoleApplicationFS/ConsoleApplicationFS.fsproj,
25 | FullPath: {CurrentDirectory}ConsoleApplicationFS/ConsoleApplicationFS.fsproj
26 | },
27 | {
28 | Guid: Guid_6,
29 | RelativePath: WpfApplicationVB/WpfApplicationVB.vbproj,
30 | FullPath: {CurrentDirectory}WpfApplicationVB/WpfApplicationVB.vbproj
31 | },
32 | {
33 | Guid: Guid_7,
34 | RelativePath: WpfApplicationCS/WpfApplicationCS.csproj,
35 | FullPath: {CurrentDirectory}WpfApplicationCS/WpfApplicationCS.csproj
36 | },
37 | {
38 | Guid: Guid_8,
39 | RelativePath: WindowsFormsApplicationCS/WindowsFormsApplicationCS.csproj,
40 | FullPath: {CurrentDirectory}WindowsFormsApplicationCS/WindowsFormsApplicationCS.csproj
41 | },
42 | {
43 | Guid: Guid_9,
44 | RelativePath: WindowsFormsApplicationVB/WindowsFormsApplicationVB.vbproj,
45 | FullPath: {CurrentDirectory}WindowsFormsApplicationVB/WindowsFormsApplicationVB.vbproj
46 | },
47 | {
48 | Guid: Guid_10,
49 | RelativePath: WebApplicationVB/WebApplicationVB.vbproj,
50 | FullPath: {CurrentDirectory}WebApplicationVB/WebApplicationVB.vbproj
51 | },
52 | {
53 | Guid: Guid_11,
54 | RelativePath: WebApplicationCS/WebApplicationCS.csproj,
55 | FullPath: {CurrentDirectory}WebApplicationCS/WebApplicationCS.csproj
56 | },
57 | {
58 | Guid: Guid_12,
59 | RelativePath: ClassLibraryFS/ClassLibraryFS.fsproj,
60 | FullPath: {CurrentDirectory}ClassLibraryFS/ClassLibraryFS.fsproj
61 | },
62 | {
63 | Guid: Guid_13,
64 | RelativePath: AzureCloudService/AzureCloudService.ccproj,
65 | FullPath: {CurrentDirectory}AzureCloudService/AzureCloudService.ccproj
66 | }
67 | ]
--------------------------------------------------------------------------------
/src/Tests/SolutionProjectExtractorTests.GetAllProjectFiles.Windows.verified.txt:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | Guid: Guid_1,
4 | RelativePath: ClassLibraryCS\ClassLibraryCS.csproj,
5 | FullPath: {CurrentDirectory}ClassLibraryCS/ClassLibraryCS.csproj
6 | },
7 | {
8 | Guid: Guid_2,
9 | RelativePath: ConsoleApplicationCS\ConsoleApplicationCS.csproj,
10 | FullPath: {CurrentDirectory}ConsoleApplicationCS/ConsoleApplicationCS.csproj
11 | },
12 | {
13 | Guid: Guid_3,
14 | RelativePath: ClassLibraryVB\ClassLibraryVB.vbproj,
15 | FullPath: {CurrentDirectory}ClassLibraryVB/ClassLibraryVB.vbproj
16 | },
17 | {
18 | Guid: Guid_4,
19 | RelativePath: ConsoleApplicationVB\ConsoleApplicationVB.vbproj,
20 | FullPath: {CurrentDirectory}ConsoleApplicationVB/ConsoleApplicationVB.vbproj
21 | },
22 | {
23 | Guid: Guid_5,
24 | RelativePath: ConsoleApplicationFS\ConsoleApplicationFS.fsproj,
25 | FullPath: {CurrentDirectory}ConsoleApplicationFS/ConsoleApplicationFS.fsproj
26 | },
27 | {
28 | Guid: Guid_6,
29 | RelativePath: WpfApplicationVB\WpfApplicationVB.vbproj,
30 | FullPath: {CurrentDirectory}WpfApplicationVB/WpfApplicationVB.vbproj
31 | },
32 | {
33 | Guid: Guid_7,
34 | RelativePath: WpfApplicationCS\WpfApplicationCS.csproj,
35 | FullPath: {CurrentDirectory}WpfApplicationCS/WpfApplicationCS.csproj
36 | },
37 | {
38 | Guid: Guid_8,
39 | RelativePath: WindowsFormsApplicationCS\WindowsFormsApplicationCS.csproj,
40 | FullPath: {CurrentDirectory}WindowsFormsApplicationCS/WindowsFormsApplicationCS.csproj
41 | },
42 | {
43 | Guid: Guid_9,
44 | RelativePath: WindowsFormsApplicationVB\WindowsFormsApplicationVB.vbproj,
45 | FullPath: {CurrentDirectory}WindowsFormsApplicationVB/WindowsFormsApplicationVB.vbproj
46 | },
47 | {
48 | Guid: Guid_10,
49 | RelativePath: WebApplicationVB\WebApplicationVB.vbproj,
50 | FullPath: {CurrentDirectory}WebApplicationVB/WebApplicationVB.vbproj
51 | },
52 | {
53 | Guid: Guid_11,
54 | RelativePath: WebApplicationCS\WebApplicationCS.csproj,
55 | FullPath: {CurrentDirectory}WebApplicationCS/WebApplicationCS.csproj
56 | },
57 | {
58 | Guid: Guid_12,
59 | RelativePath: ClassLibraryFS\ClassLibraryFS.fsproj,
60 | FullPath: {CurrentDirectory}ClassLibraryFS/ClassLibraryFS.fsproj
61 | },
62 | {
63 | Guid: Guid_13,
64 | RelativePath: AzureCloudService\AzureCloudService.ccproj,
65 | FullPath: {CurrentDirectory}AzureCloudService/AzureCloudService.ccproj
66 | }
67 | ]
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 | Imports System.Globalization
5 | Imports System.Resources
6 | Imports System.Windows
7 |
8 | ' General Information about an assembly is controlled through the following
9 | ' set of attributes. Change these attribute values to modify the information
10 | ' associated with an assembly.
11 |
12 | ' Review the values of the assembly attributes
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | 'In order to begin building localizable applications, set
23 | 'CultureYouAreCodingWith in your .vbproj file
24 | 'inside a . For example, if you are using US english
25 | 'in your source files, set the to "en-US". Then uncomment the
26 | 'NeutralResourceLanguage attribute below. Update the "en-US" in the line
27 | 'below to match the UICulture setting in the project file.
28 |
29 | '
30 |
31 |
32 | 'The ThemeInfo attribute describes where any theme specific and generic resource dictionaries can be found.
33 | '1st parameter: where theme specific resource dictionaries are located
34 | '(used if a resource is not found in the page,
35 | ' or application resource dictionaries)
36 |
37 | '2nd parameter: where the generic resource dictionary is located
38 | '(used if a resource is not found in the page,
39 | 'app, and any theme specific resource dictionaries)
40 |
41 |
42 |
43 |
44 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
45 |
46 |
47 | ' Version information for an assembly consists of the following four values:
48 | '
49 | ' Major Version
50 | ' Minor Version
51 | ' Build Number
52 | ' Revision
53 | '
54 | ' You can specify all the values or you can default the Build and Revision Numbers
55 | ' by using the '*' as shown below:
56 | '
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/src/SampleSolution/AzureCloudService/AzureCloudService.ccproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | 2.7
8 | c188fcea-c469-4b03-b39e-dc092370f0ec
9 | Library
10 | Properties
11 | AzureCloudService
12 | AzureCloudService
13 | True
14 | AzureCloudService
15 |
16 |
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 | pdbonly
27 | true
28 | bin\Release\
29 | TRACE
30 | prompt
31 | 4
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 | 10.0
42 | $(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Windows Azure Tools\2.7\
43 |
44 |
45 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | '
5 | ' Changes to this file may cause incorrect behavior and will be lost if
6 | ' the code is regenerated.
7 | '
8 | '------------------------------------------------------------------------------
9 |
10 | Option Strict On
11 | Option Explicit On
12 |
13 |
14 | Namespace My.Resources
15 |
16 | 'This class was auto-generated by the StronglyTypedResourceBuilder
17 | 'class via a tool like ResGen or Visual Studio.
18 | 'To add or remove a member, edit your .ResX file then rerun ResGen
19 | 'with the /str option, or rebuild your VS project.
20 | '
21 | ' A strongly-typed resource class, for looking up localized strings, etc.
22 | '
23 | _
27 | Friend Module Resources
28 |
29 | Private resourceMan As Global.System.Resources.ResourceManager
30 |
31 | Private resourceCulture As Global.System.Globalization.CultureInfo
32 |
33 | '
34 | ' Returns the cached ResourceManager instance used by this class.
35 | '
36 | _
37 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
38 | Get
39 | If Object.ReferenceEquals(resourceMan, Nothing) Then
40 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("WebApplicationVB.Resources", GetType(Resources).Assembly)
41 | resourceMan = temp
42 | End If
43 | Return resourceMan
44 | End Get
45 | End Property
46 |
47 | '
48 | ' Overrides the current thread's CurrentUICulture property for all
49 | ' resource lookups using this strongly typed resource class.
50 | '
51 | _
52 | Friend Property Culture() As Global.System.Globalization.CultureInfo
53 | Get
54 | Return resourceCulture
55 | End Get
56 | Set(ByVal value As Global.System.Globalization.CultureInfo)
57 | resourceCulture = value
58 | End Set
59 | End Property
60 | End Module
61 | End Namespace
62 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My.Resources
16 |
17 | 'This class was auto-generated by the StronglyTypedResourceBuilder
18 | 'class via a tool like ResGen or Visual Studio.
19 | 'To add or remove a member, edit your .ResX file then rerun ResGen
20 | 'with the /str option, or rebuild your VS project.
21 | '''
22 | ''' A strongly-typed resource class, for looking up localized strings, etc.
23 | '''
24 | _
28 | Friend Module Resources
29 |
30 | Private resourceMan As Global.System.Resources.ResourceManager
31 |
32 | Private resourceCulture As Global.System.Globalization.CultureInfo
33 |
34 | '''
35 | ''' Returns the cached ResourceManager instance used by this class.
36 | '''
37 | _
38 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
39 | Get
40 | If Object.ReferenceEquals(resourceMan, Nothing) Then
41 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ClassLibraryVB.Resources", GetType(Resources).Assembly)
42 | resourceMan = temp
43 | End If
44 | Return resourceMan
45 | End Get
46 | End Property
47 |
48 | '''
49 | ''' Overrides the current thread's CurrentUICulture property for all
50 | ''' resource lookups using this strongly typed resource class.
51 | '''
52 | _
53 | Friend Property Culture() As Global.System.Globalization.CultureInfo
54 | Get
55 | Return resourceCulture
56 | End Get
57 | Set(ByVal value As Global.System.Globalization.CultureInfo)
58 | resourceCulture = value
59 | End Set
60 | End Property
61 | End Module
62 | End Namespace
63 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:$clrversion$
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My.Resources
16 |
17 | 'This class was auto-generated by the StronglyTypedResourceBuilder
18 | 'class via a tool like ResGen or Visual Studio.
19 | 'To add or remove a member, edit your .ResX file then rerun ResGen
20 | 'with the /str option, or rebuild your VS project.
21 | '''
22 | ''' A strongly-typed resource class, for looking up localized strings, etc.
23 | '''
24 | _
28 | Friend Module Resources
29 |
30 | Private resourceMan As Global.System.Resources.ResourceManager
31 |
32 | Private resourceCulture As Global.System.Globalization.CultureInfo
33 |
34 | '''
35 | ''' Returns the cached ResourceManager instance used by this class.
36 | '''
37 | _
38 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
39 | Get
40 | If Object.ReferenceEquals(resourceMan, Nothing) Then
41 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("$safeprojectname$.Resources", GetType(Resources).Assembly)
42 | resourceMan = temp
43 | End If
44 | Return resourceMan
45 | End Get
46 | End Property
47 |
48 | '''
49 | ''' Overrides the current thread's CurrentUICulture property for all
50 | ''' resource lookups using this strongly typed resource class.
51 | '''
52 | _
53 | Friend Property Culture() As Global.System.Globalization.CultureInfo
54 | Get
55 | Return resourceCulture
56 | End Get
57 | Set(ByVal value As Global.System.Globalization.CultureInfo)
58 | resourceCulture = value
59 | End Set
60 | End Property
61 | End Module
62 | End Namespace
63 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My.Resources
16 |
17 | 'This class was auto-generated by the StronglyTypedResourceBuilder
18 | 'class via a tool like ResGen or Visual Studio.
19 | 'To add or remove a member, edit your .ResX file then rerun ResGen
20 | 'with the /str option, or rebuild your VS project.
21 | '''
22 | ''' A strongly-typed resource class, for looking up localized strings, etc.
23 | '''
24 | _
28 | Friend Module Resources
29 |
30 | Private resourceMan As Global.System.Resources.ResourceManager
31 |
32 | Private resourceCulture As Global.System.Globalization.CultureInfo
33 |
34 | '''
35 | ''' Returns the cached ResourceManager instance used by this class.
36 | '''
37 | _
38 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
39 | Get
40 | If Object.ReferenceEquals(resourceMan, Nothing) Then
41 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("ConsoleApplicationVB.Resources", GetType(Resources).Assembly)
42 | resourceMan = temp
43 | End If
44 | Return resourceMan
45 | End Get
46 | End Property
47 |
48 | '''
49 | ''' Overrides the current thread's CurrentUICulture property for all
50 | ''' resource lookups using this strongly typed resource class.
51 | '''
52 | _
53 | Friend Property Culture() As Global.System.Globalization.CultureInfo
54 | Get
55 | Return resourceCulture
56 | End Get
57 | Set(ByVal value As Global.System.Globalization.CultureInfo)
58 | resourceCulture = value
59 | End Set
60 | End Property
61 | End Module
62 | End Namespace
63 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My.Resources
16 |
17 | 'This class was auto-generated by the StronglyTypedResourceBuilder
18 | 'class via a tool like ResGen or Visual Studio.
19 | 'To add or remove a member, edit your .ResX file then rerun ResGen
20 | 'with the /str option, or rebuild your VS project.
21 | '''
22 | ''' A strongly-typed resource class, for looking up localized strings, etc.
23 | '''
24 | _
28 | Friend Module Resources
29 |
30 | Private resourceMan As Global.System.Resources.ResourceManager
31 |
32 | Private resourceCulture As Global.System.Globalization.CultureInfo
33 |
34 | '''
35 | ''' Returns the cached ResourceManager instance used by this class.
36 | '''
37 | _
38 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
39 | Get
40 | If Object.ReferenceEquals(resourceMan, Nothing) Then
41 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("WindowsFormsApplicationVB.Resources", GetType(Resources).Assembly)
42 | resourceMan = temp
43 | End If
44 | Return resourceMan
45 | End Get
46 | End Property
47 |
48 | '''
49 | ''' Overrides the current thread's CurrentUICulture property for all
50 | ''' resource lookups using this strongly typed resource class.
51 | '''
52 | _
53 | Friend Property Culture() As Global.System.Globalization.CultureInfo
54 | Get
55 | Return resourceCulture
56 | End Get
57 | Set(ByVal value As Global.System.Globalization.CultureInfo)
58 | resourceCulture = value
59 | End Set
60 | End Property
61 | End Module
62 | End Namespace
63 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.0
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace WpfApplicationCS.Properties
12 | {
13 |
14 |
15 | ///
16 | /// A strongly-typed resource class, for looking up localized strings, etc.
17 | ///
18 | // This class was auto-generated by the StronglyTypedResourceBuilder
19 | // class via a tool like ResGen or Visual Studio.
20 | // To add or remove a member, edit your .ResX file then rerun ResGen
21 | // with the /str option, or rebuild your VS project.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources
26 | {
27 |
28 | private static global::System.Resources.ResourceManager resourceMan;
29 |
30 | private static global::System.Globalization.CultureInfo resourceCulture;
31 |
32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
33 | internal Resources()
34 | {
35 | }
36 |
37 | ///
38 | /// Returns the cached ResourceManager instance used by this class.
39 | ///
40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
41 | internal static global::System.Resources.ResourceManager ResourceManager
42 | {
43 | get
44 | {
45 | if ((resourceMan == null))
46 | {
47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WpfApplicationCS.Properties.Resources", typeof(Resources).Assembly);
48 | resourceMan = temp;
49 | }
50 | return resourceMan;
51 | }
52 | }
53 |
54 | ///
55 | /// Overrides the current thread's CurrentUICulture property for all
56 | /// resource lookups using this strongly typed resource class.
57 | ///
58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
59 | internal static global::System.Globalization.CultureInfo Culture
60 | {
61 | get
62 | {
63 | return resourceCulture;
64 | }
65 | set
66 | {
67 | resourceCulture = value;
68 | }
69 | }
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Properties/Resources.Designer.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.0
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | namespace WindowsFormsApplicationCS.Properties
12 | {
13 |
14 |
15 | ///
16 | /// A strongly-typed resource class, for looking up localized strings, etc.
17 | ///
18 | // This class was auto-generated by the StronglyTypedResourceBuilder
19 | // class via a tool like ResGen or Visual Studio.
20 | // To add or remove a member, edit your .ResX file then rerun ResGen
21 | // with the /str option, or rebuild your VS project.
22 | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
23 | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
24 | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
25 | internal class Resources
26 | {
27 |
28 | private static global::System.Resources.ResourceManager resourceMan;
29 |
30 | private static global::System.Globalization.CultureInfo resourceCulture;
31 |
32 | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
33 | internal Resources()
34 | {
35 | }
36 |
37 | ///
38 | /// Returns the cached ResourceManager instance used by this class.
39 | ///
40 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
41 | internal static global::System.Resources.ResourceManager ResourceManager
42 | {
43 | get
44 | {
45 | if ((resourceMan == null))
46 | {
47 | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("WindowsFormsApplicationCS.Properties.Resources", typeof(Resources).Assembly);
48 | resourceMan = temp;
49 | }
50 | return resourceMan;
51 | }
52 | }
53 |
54 | ///
55 | /// Overrides the current thread's CurrentUICulture property for all
56 | /// resource lookups using this strongly typed resource class.
57 | ///
58 | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
59 | internal static global::System.Globalization.CultureInfo Culture
60 | {
61 | get
62 | {
63 | return resourceCulture;
64 | }
65 | set
66 | {
67 | resourceCulture = value;
68 | }
69 | }
70 | }
71 | }
72 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | '
5 | ' Changes to this file may cause incorrect behavior and will be lost if
6 | ' the code is regenerated.
7 | '
8 | '------------------------------------------------------------------------------
9 |
10 | Option Strict On
11 | Option Explicit On
12 |
13 |
14 | Namespace My
15 |
16 | _
19 | Partial Friend NotInheritable Class MySettings
20 | Inherits Global.System.Configuration.ApplicationSettingsBase
21 |
22 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
23 |
24 | #Region "My.Settings Auto-Save Functionality"
25 | #If _MyType = "WindowsForms" Then
26 | Private Shared addedHandler As Boolean
27 |
28 | Private Shared addedHandlerLockObject As New Object
29 |
30 | _
31 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
32 | If My.Application.SaveMySettingsOnExit Then
33 | My.Settings.Save()
34 | End If
35 | End Sub
36 | #End If
37 | #End Region
38 |
39 | Public Shared ReadOnly Property [Default]() As MySettings
40 | Get
41 |
42 | #If _MyType = "WindowsForms" Then
43 | If Not addedHandler Then
44 | SyncLock addedHandlerLockObject
45 | If Not addedHandler Then
46 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
47 | addedHandler = True
48 | End If
49 | End SyncLock
50 | End If
51 | #End If
52 | Return defaultInstance
53 | End Get
54 | End Property
55 | End Class
56 | End Namespace
57 |
58 | Namespace My
59 |
60 | _
63 | Friend Module MySettingsProperty
64 |
65 | _
66 | Friend ReadOnly Property Settings() As Global.WebApplicationVB.My.MySettings
67 | Get
68 | Return Global.WebApplicationVB.My.MySettings.Default
69 | End Get
70 | End Property
71 | End Module
72 | End Namespace
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | _
20 | Partial Friend NotInheritable Class MySettings
21 | Inherits Global.System.Configuration.ApplicationSettingsBase
22 |
23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
24 |
25 | #Region "My.Settings Auto-Save Functionality"
26 | #If _MyType = "WindowsForms" Then
27 | Private Shared addedHandler As Boolean
28 |
29 | Private Shared addedHandlerLockObject As New Object
30 |
31 | _
32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33 | If My.Application.SaveMySettingsOnExit Then
34 | My.Settings.Save()
35 | End If
36 | End Sub
37 | #End If
38 | #End Region
39 |
40 | Public Shared ReadOnly Property [Default]() As MySettings
41 | Get
42 |
43 | #If _MyType = "WindowsForms" Then
44 | If Not addedHandler Then
45 | SyncLock addedHandlerLockObject
46 | If Not addedHandler Then
47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48 | addedHandler = True
49 | End If
50 | End SyncLock
51 | End If
52 | #End If
53 | Return defaultInstance
54 | End Get
55 | End Property
56 | End Class
57 | End Namespace
58 |
59 | Namespace My
60 |
61 | _
64 | Friend Module MySettingsProperty
65 |
66 | _
67 | Friend ReadOnly Property Settings() As Global.WpfApplicationVB.My.MySettings
68 | Get
69 | Return Global.WpfApplicationVB.My.MySettings.Default
70 | End Get
71 | End Property
72 | End Module
73 | End Namespace
74 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | _
20 | Partial Friend NotInheritable Class MySettings
21 | Inherits Global.System.Configuration.ApplicationSettingsBase
22 |
23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
24 |
25 | #Region "My.Settings Auto-Save Functionality"
26 | #If _MyType = "WindowsForms" Then
27 | Private Shared addedHandler As Boolean
28 |
29 | Private Shared addedHandlerLockObject As New Object
30 |
31 | _
32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33 | If My.Application.SaveMySettingsOnExit Then
34 | My.Settings.Save()
35 | End If
36 | End Sub
37 | #End If
38 | #End Region
39 |
40 | Public Shared ReadOnly Property [Default]() As MySettings
41 | Get
42 |
43 | #If _MyType = "WindowsForms" Then
44 | If Not addedHandler Then
45 | SyncLock addedHandlerLockObject
46 | If Not addedHandler Then
47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48 | addedHandler = True
49 | End If
50 | End SyncLock
51 | End If
52 | #End If
53 | Return defaultInstance
54 | End Get
55 | End Property
56 | End Class
57 | End Namespace
58 |
59 | Namespace My
60 |
61 | _
64 | Friend Module MySettingsProperty
65 |
66 | _
67 | Friend ReadOnly Property Settings() As Global.ClassLibraryVB.My.MySettings
68 | Get
69 | Return Global.ClassLibraryVB.My.MySettings.Default
70 | End Get
71 | End Property
72 | End Module
73 | End Namespace
74 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | _
20 | Partial Friend NotInheritable Class MySettings
21 | Inherits Global.System.Configuration.ApplicationSettingsBase
22 |
23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
24 |
25 | #Region "My.Settings Auto-Save Functionality"
26 | #If _MyType = "WindowsForms" Then
27 | Private Shared addedHandler As Boolean
28 |
29 | Private Shared addedHandlerLockObject As New Object
30 |
31 | _
32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33 | If My.Application.SaveMySettingsOnExit Then
34 | My.Settings.Save()
35 | End If
36 | End Sub
37 | #End If
38 | #End Region
39 |
40 | Public Shared ReadOnly Property [Default]() As MySettings
41 | Get
42 |
43 | #If _MyType = "WindowsForms" Then
44 | If Not addedHandler Then
45 | SyncLock addedHandlerLockObject
46 | If Not addedHandler Then
47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48 | addedHandler = True
49 | End If
50 | End SyncLock
51 | End If
52 | #End If
53 | Return defaultInstance
54 | End Get
55 | End Property
56 | End Class
57 | End Namespace
58 |
59 | Namespace My
60 |
61 | _
64 | Friend Module MySettingsProperty
65 |
66 | _
67 | Friend ReadOnly Property Settings() As Global.ConsoleApplicationVB.My.MySettings
68 | Get
69 | Return Global.ConsoleApplicationVB.My.MySettings.Default
70 | End Get
71 | End Property
72 | End Module
73 | End Namespace
74 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.0
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | _
20 | Partial Friend NotInheritable Class MySettings
21 | Inherits Global.System.Configuration.ApplicationSettingsBase
22 |
23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings)
24 |
25 | #Region "My.Settings Auto-Save Functionality"
26 | #If _MyType = "WindowsForms" Then
27 | Private Shared addedHandler As Boolean
28 |
29 | Private Shared addedHandlerLockObject As New Object
30 |
31 | _
32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33 | If My.Application.SaveMySettingsOnExit Then
34 | My.Settings.Save()
35 | End If
36 | End Sub
37 | #End If
38 | #End Region
39 |
40 | Public Shared ReadOnly Property [Default]() As MySettings
41 | Get
42 |
43 | #If _MyType = "WindowsForms" Then
44 | If Not addedHandler Then
45 | SyncLock addedHandlerLockObject
46 | If Not addedHandler Then
47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48 | addedHandler = True
49 | End If
50 | End SyncLock
51 | End If
52 | #End If
53 | Return defaultInstance
54 | End Get
55 | End Property
56 | End Class
57 | End Namespace
58 |
59 | Namespace My
60 |
61 | _
64 | Friend Module MySettingsProperty
65 |
66 | _
67 | Friend ReadOnly Property Settings() As Global.WindowsFormsApplicationVB.My.MySettings
68 | Get
69 | Return Global.WindowsFormsApplicationVB.My.MySettings.Default
70 | End Get
71 | End Property
72 | End Module
73 | End Namespace
74 |
--------------------------------------------------------------------------------
/src/Tests/Tests.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0
5 | Exe
6 | $(NoWarn);xUnit1051
7 | testing
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | PreserveNewest
21 |
22 |
23 | PreserveNewest
24 |
25 |
26 | PreserveNewest
27 |
28 |
29 | PreserveNewest
30 |
31 |
32 | PreserveNewest
33 |
34 |
35 | PreserveNewest
36 |
37 |
38 | PreserveNewest
39 |
40 |
41 | PreserveNewest
42 |
43 |
44 | PreserveNewest
45 |
46 |
47 | PreserveNewest
48 |
49 |
50 | PreserveNewest
51 |
52 |
53 | PreserveNewest
54 |
55 |
56 | PreserveNewest
57 |
58 |
59 | PreserveNewest
60 |
61 |
62 | PreserveNewest
63 |
64 |
65 |
--------------------------------------------------------------------------------
/src/Tests/StartProjectFinderTests.cs:
--------------------------------------------------------------------------------
1 | public class StartProjectFinderTests
2 | {
3 | [Fact]
4 | public void Exe_from_OutputType()
5 | {
6 | var projectText = File.ReadAllText("OutputType_Exe.txt");
7 | var document = XDocument.Parse(projectText);
8 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
9 | }
10 |
11 | [Fact]
12 | public void WebApplication_webSdk()
13 | {
14 | var projectText = File.ReadAllText("WebApplication_websdk.txt");
15 | var document = XDocument.Parse(projectText);
16 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
17 | }
18 |
19 | [Fact]
20 | public void GetStartupProjectsWithDefault()
21 | {
22 | var startupProjects = StartProjectFinder.GetStartProjects("SimpleSolutionWithDefault/SimpleSolution.sln");
23 | Assert.Equal("11111111-1111-1111-1111-111111111111", startupProjects.Single());
24 | }
25 |
26 | [Fact]
27 | public void Conditional_Exe_from_OutputType()
28 | {
29 | var projectText = File.ReadAllText("OutputType_Conditional_Exe.txt");
30 | var document = XDocument.Parse(projectText);
31 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
32 | }
33 |
34 | [Fact]
35 | public void WinExe_from_OutputType()
36 | {
37 | var projectText = File.ReadAllText("OutputType_WinExe.txt");
38 | var document = XDocument.Parse(projectText);
39 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
40 | }
41 |
42 | [Fact]
43 | public void StartActionIsProgram()
44 | {
45 | var projectText = File.ReadAllText("StartActionIsProgram.txt");
46 | var document = XDocument.Parse(projectText);
47 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
48 | }
49 |
50 | [Fact]
51 | public void Lib_from_OutputType()
52 | {
53 | var projectText = File.ReadAllText("OutputType_Lib.txt");
54 | var document = XDocument.Parse(projectText);
55 | Assert.False(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
56 | }
57 |
58 | [Fact]
59 | public void WebApplication_xproj()
60 | {
61 | var projectText = File.ReadAllText("WebApplication_xproj.txt");
62 | var document = XDocument.Parse(projectText);
63 | Assert.False(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
64 | }
65 |
66 | [Fact]
67 | public void Multiple_excluded_project_types()
68 | {
69 | var projectText = File.ReadAllText("Multiple_Exclude.txt");
70 | var document = XDocument.Parse(projectText);
71 | Assert.False(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
72 | }
73 |
74 | [Fact]
75 | public void Multiple_include_project_types()
76 | {
77 | var projectText = File.ReadAllText("Multiple_Include.txt");
78 | var document = XDocument.Parse(projectText);
79 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
80 | }
81 |
82 | [Fact]
83 | public void Lower_project_types()
84 | {
85 | var projectText = File.ReadAllText("Lower_Include.txt");
86 | var document = XDocument.Parse(projectText);
87 | Assert.True(StartProjectFinder.ShouldIncludeProjectXml(document, "/dir/project.csproj"));
88 | }
89 | }
--------------------------------------------------------------------------------
/src/Tests/OutputType_WinExe.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {A091F9A6-5AC1-4EFB-86B0-9A5EAA8C4A20}
8 | WinExe
9 | Properties
10 | WindowsFormsApplicationCS
11 | WindowsFormsApplicationCS
12 | v4.5
13 | 512
14 |
15 |
16 | AnyCPU
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 | AnyCPU
27 | pdbonly
28 | true
29 | bin\Release\
30 | TRACE
31 | prompt
32 | 4
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 | Form
49 |
50 |
51 | Form1.cs
52 |
53 |
54 |
55 | ResXFileCodeGenerator
56 | Resources.Designer.cs
57 | Designer
58 |
59 |
60 | True
61 | Resources.resx
62 |
63 |
64 | SettingsSingleFileGenerator
65 | Settings.Designer.cs
66 |
67 |
68 | True
69 | Settings.settings
70 | True
71 |
72 |
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/WindowsFormsApplicationCS.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {A091F9A6-5AC1-4EFB-86B0-9A5EAA8C4A20}
8 | WinExe
9 | Properties
10 | WindowsFormsApplicationCS
11 | WindowsFormsApplicationCS
12 | v4.5
13 | 512
14 |
15 |
16 | AnyCPU
17 | true
18 | full
19 | false
20 | bin\Debug\
21 | DEBUG;TRACE
22 | prompt
23 | 4
24 |
25 |
26 | AnyCPU
27 | pdbonly
28 | true
29 | bin\Release\
30 | TRACE
31 | prompt
32 | 4
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 | Form
49 |
50 |
51 | Form1.cs
52 |
53 |
54 |
55 | ResXFileCodeGenerator
56 | Resources.Designer.cs
57 | Designer
58 |
59 |
60 | True
61 | Resources.resx
62 |
63 |
64 | SettingsSingleFileGenerator
65 | Settings.Designer.cs
66 |
67 |
68 | True
69 | Settings.settings
70 | True
71 |
72 |
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/code_of_conduct.md:
--------------------------------------------------------------------------------
1 | # Contributor Covenant Code of Conduct
2 |
3 | ## Our Pledge
4 |
5 | In the interest of fostering an open and welcoming environment, we as
6 | contributors and maintainers pledge to making participation in our project and
7 | our community a harassment-free experience for everyone, regardless of age, body
8 | size, disability, ethnicity, sex characteristics, gender identity and expression,
9 | level of experience, education, socio-economic status, nationality, personal
10 | appearance, race, religion, or sexual identity and orientation.
11 |
12 | ## Our Standards
13 |
14 | Examples of behavior that contributes to creating a positive environment
15 | include:
16 |
17 | * Using welcoming and inclusive language
18 | * Being respectful of differing viewpoints and experiences
19 | * Gracefully accepting constructive criticism
20 | * Focusing on what is best for the community
21 | * Showing empathy towards other community members
22 |
23 | Examples of unacceptable behavior by participants include:
24 |
25 | * The use of sexualized language or imagery and unwelcome sexual attention or
26 | advances
27 | * Trolling, insulting/derogatory comments, and personal or political attacks
28 | * Public or private harassment
29 | * Publishing others' private information, such as a physical or electronic
30 | address, without explicit permission
31 | * Other conduct which could reasonably be considered inappropriate in a
32 | professional setting
33 |
34 | ## Our Responsibilities
35 |
36 | Project maintainers are responsible for clarifying the standards of acceptable
37 | behavior and are expected to take appropriate and fair corrective action in
38 | response to any instances of unacceptable behavior.
39 |
40 | Project maintainers have the right and responsibility to remove, edit, or
41 | reject comments, commits, code, wiki edits, issues, and other contributions
42 | that are not aligned to this Code of Conduct, or to ban temporarily or
43 | permanently any contributor for other behaviors that they deem inappropriate,
44 | threatening, offensive, or harmful.
45 |
46 | ## Scope
47 |
48 | This Code of Conduct applies both within project spaces and in public spaces
49 | when an individual is representing the project or its community. Examples of
50 | representing a project or community include using an official project e-mail
51 | address, posting via an official social media account, or acting as an appointed
52 | representative at an online or offline event. Representation of a project may be
53 | further defined and clarified by project maintainers.
54 |
55 | ## Enforcement
56 |
57 | Instances of abusive, harassing, or otherwise unacceptable behavior may be
58 | reported by contacting the project team at simon.cropp@gmail.com. All
59 | complaints will be reviewed and investigated and will result in a response that
60 | is deemed necessary and appropriate to the circumstances. The project team is
61 | obligated to maintain confidentiality with regard to the reporter of an incident.
62 | Further details of specific enforcement policies may be posted separately.
63 |
64 | Project maintainers who do not follow or enforce the Code of Conduct in good
65 | faith may face temporary or permanent repercussions as determined by other
66 | members of the project's leadership.
67 |
68 | ## Attribution
69 |
70 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71 | available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72 |
73 | [homepage]: https://www.contributor-covenant.org
74 |
75 | For answers to common questions about this code of conduct, see
76 | https://www.contributor-covenant.org/faq
77 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationFS/ConsoleApplicationFS.fsproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | 2.0
8 | 18606457-fcf0-4d4e-bc5c-fb11d1230409
9 | Exe
10 | ConsoleApplicationFS
11 | ConsoleApplicationFS
12 | v4.5
13 | true
14 | 4.3.1.0
15 | ConsoleApplicationFS
16 |
17 |
18 | true
19 | full
20 | false
21 | false
22 | bin\Debug\
23 | DEBUG;TRACE
24 | 3
25 | AnyCPU
26 | bin\Debug\ConsoleApplicationFS.XML
27 | true
28 |
29 |
30 | pdbonly
31 | true
32 | true
33 | bin\Release\
34 | TRACE
35 | 3
36 | AnyCPU
37 | bin\Release\ConsoleApplicationFS.XML
38 | true
39 |
40 |
41 |
42 |
43 | True
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 | 11
55 |
56 |
57 |
58 |
59 | $(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets
60 |
61 |
62 |
63 |
64 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets
65 |
66 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryFS/ClassLibraryFS.fsproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | 2.0
8 | 915cbc1c-4f15-4293-b0c4-787ce4e82787
9 | Library
10 | ClassLibraryFS
11 | ClassLibraryFS
12 | v4.5
13 | 4.3.1.0
14 | ClassLibraryFS
15 |
16 |
17 | true
18 | full
19 | false
20 | false
21 | bin\Debug\
22 | DEBUG;TRACE
23 | 3
24 | bin\Debug\ClassLibraryFS.XML
25 |
26 |
27 | pdbonly
28 | true
29 | true
30 | bin\Release\
31 | TRACE
32 | 3
33 | bin\Release\ClassLibraryFS.XML
34 |
35 |
36 |
37 |
38 | True
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 | 11
50 |
51 |
52 |
53 |
54 | $(MSBuildExtensionsPath32)\..\Microsoft SDKs\F#\3.0\Framework\v4.0\Microsoft.FSharp.Targets
55 |
56 |
57 |
58 |
59 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\FSharp\Microsoft.FSharp.Targets
60 |
61 |
62 |
63 |
64 |
71 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/MyExtensions/MyWebExtension.vb:
--------------------------------------------------------------------------------
1 | #If _MyType <> "Empty" Then
2 |
3 | Namespace My
4 | '''
5 | ''' Module used to define the properties that are available in the My Namespace for Web projects.
6 | '''
7 | '''
8 | _
9 | Module MyWebExtension
10 | Private s_Computer As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Devices.ServerComputer)
11 | Private s_User As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.ApplicationServices.WebUser)
12 | Private s_Log As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Logging.AspLog)
13 | '''
14 | ''' Returns information about the host computer.
15 | '''
16 | _
17 | Friend ReadOnly Property Computer() As Global.Microsoft.VisualBasic.Devices.ServerComputer
18 | Get
19 | Return s_Computer.GetInstance()
20 | End Get
21 | End Property
22 | '''
23 | ''' Returns information for the current Web user.
24 | '''
25 | _
26 | Friend ReadOnly Property User() As Global.Microsoft.VisualBasic.ApplicationServices.WebUser
27 | Get
28 | Return s_User.GetInstance()
29 | End Get
30 | End Property
31 | '''
32 | ''' Returns Request object.
33 | '''
34 | _
35 | _
36 | Friend ReadOnly Property Request() As Global.System.Web.HttpRequest
37 | _
38 | Get
39 | Dim CurrentContext As Global.System.Web.HttpContext = Global.System.Web.HttpContext.Current
40 | If CurrentContext IsNot Nothing Then
41 | Return CurrentContext.Request
42 | End If
43 | Return Nothing
44 | End Get
45 | End Property
46 | '''
47 | ''' Returns Response object.
48 | '''
49 | _
50 | _
51 | Friend ReadOnly Property Response() As Global.System.Web.HttpResponse
52 | _
53 | Get
54 | Dim CurrentContext As Global.System.Web.HttpContext = Global.System.Web.HttpContext.Current
55 | If CurrentContext IsNot Nothing Then
56 | Return CurrentContext.Response
57 | End If
58 | Return Nothing
59 | End Get
60 | End Property
61 | '''
62 | ''' Returns the Asp log object.
63 | '''
64 | _
65 | Friend ReadOnly Property Log() As Global.Microsoft.VisualBasic.Logging.AspLog
66 | Get
67 | Return s_Log.GetInstance()
68 | End Get
69 | End Property
70 | End Module
71 | End Namespace
72 |
73 | #End If
--------------------------------------------------------------------------------
/src/SetStartupProjects/StartProjectSuoCreator.cs:
--------------------------------------------------------------------------------
1 | namespace SetStartupProjects;
2 |
3 | ///
4 | /// Creates suo files that contain startup projects.
5 | ///
6 | public static class StartProjectSuoCreator
7 | {
8 | ///
9 | /// Create suo startup files for a specific solution file.
10 | ///
11 | ///
12 | /// All existing suo files will be overwritten.
13 | ///
14 | public static void CreateForSolutionFile(string solutionFilePath, List startupProjectGuids, VisualStudioVersions visualStudioVersions = VisualStudioVersions.All)
15 | {
16 | Ensure.NotNullOrWhiteSpace(solutionFilePath, nameof(solutionFilePath));
17 | Ensure.FileExists(solutionFilePath, nameof(solutionFilePath));
18 | if (startupProjectGuids.Count == 0)
19 | {
20 | throw new ArgumentOutOfRangeException(nameof(startupProjectGuids), $"For solutionFilePath: '{solutionFilePath}'");
21 | }
22 |
23 | var solutionDirectory = Path.GetDirectoryName(solutionFilePath)!;
24 |
25 | var solutionName = Path.GetFileNameWithoutExtension(solutionFilePath);
26 | if (visualStudioVersions.HasFlag(VisualStudioVersions.Vs2022))
27 | {
28 | Write(startupProjectGuids, solutionDirectory, solutionName, "v17", "2022");
29 | }
30 |
31 | if (visualStudioVersions.HasFlag(VisualStudioVersions.Vs2019))
32 | {
33 | Write(startupProjectGuids, solutionDirectory, solutionName, "v16", "2019");
34 | }
35 |
36 | if (visualStudioVersions.HasFlag(VisualStudioVersions.Vs2017))
37 | {
38 | Write(startupProjectGuids, solutionDirectory, solutionName, "v15", "2017");
39 | }
40 | }
41 |
42 | static void Write(List startupProjectGuids, string solutionDirectory, string solutionName, string versionKey, string resourceKey)
43 | {
44 | var suoDirectoryPath = Path.Combine(solutionDirectory, ".vs", solutionName, versionKey);
45 | Directory.CreateDirectory(suoDirectoryPath);
46 | var suoFilePath = Path.Combine(suoDirectoryPath, ".suo");
47 | File.Delete(suoFilePath);
48 | using var stream = Resource.AsStream($"Solution{resourceKey}.suotemplate");
49 | try
50 | {
51 | using var root = RootStorage.Open(stream);
52 | root.Delete("SolutionConfiguration");
53 | var solutionConfiguration = root.CreateStream("SolutionConfiguration");
54 |
55 | SetSolutionConfigValue(solutionConfiguration, startupProjectGuids);
56 |
57 | using var fileStream = new FileStream(suoFilePath, FileMode.CreateNew);
58 | stream.Position = 0;
59 | stream.CopyTo(fileStream);
60 | fileStream.Flush();
61 | }
62 | catch (Exception exception)
63 | {
64 | var joinedGuids = string.Join(' ', startupProjectGuids);
65 | var message = $"Could not create .suo file for '{suoFilePath}'. Guids: {joinedGuids}";
66 | throw new(message, exception);
67 | }
68 | }
69 |
70 | static void SetSolutionConfigValue(CfbStream cfStream, IEnumerable startupProjectGuids)
71 | {
72 | var single = Encoding.GetEncodings()
73 | .Single(_ => string.Equals(_.Name, "utf-16", StringComparison.OrdinalIgnoreCase));
74 | var encoding = single.GetEncoding();
75 | const char nul = '\u0000';
76 | const char dc1 = '\u0011';
77 | const char etx = '\u0003';
78 | const char soh = '\u0001';
79 |
80 | var builder = new StringBuilder();
81 | builder.Append(dc1);
82 | builder.Append(nul);
83 | builder.Append("MultiStartupProj");
84 | builder.Append(nul);
85 | builder.Append('=');
86 | builder.Append(etx);
87 | builder.Append(soh);
88 | builder.Append(nul);
89 | builder.Append(';');
90 | foreach (var startupProjectGuid in startupProjectGuids)
91 | {
92 | builder.Append('4');
93 | builder.Append(nul);
94 | builder.AppendFormat("{{{0}}}.dwStartupOpt", startupProjectGuid);
95 | builder.Append(nul);
96 | builder.Append('=');
97 | builder.Append(etx);
98 | builder.Append(dc1);
99 | builder.Append(nul);
100 | builder.Append(';');
101 | }
102 |
103 | var newBytes = encoding.GetBytes(builder.ToString());
104 | cfStream.Write(newBytes);
105 | cfStream.Flush();
106 | }
107 | }
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/WpfApplicationCS.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {59AAAFE1-198C-4BB4-9538-072F8A5DC9DF}
8 | WinExe
9 | Properties
10 | WpfApplicationCS
11 | WpfApplicationCS
12 | v4.5
13 | 512
14 | {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
15 | 4
16 |
17 |
18 | AnyCPU
19 | true
20 | full
21 | false
22 | bin\Debug\
23 | DEBUG;TRACE
24 | prompt
25 | 4
26 |
27 |
28 | AnyCPU
29 | pdbonly
30 | true
31 | bin\Release\
32 | TRACE
33 | prompt
34 | 4
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 | 4.0
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 | MSBuild:Compile
54 | Designer
55 |
56 |
57 | MSBuild:Compile
58 | Designer
59 |
60 |
61 | App.xaml
62 | Code
63 |
64 |
65 | MainWindow.xaml
66 | Code
67 |
68 |
69 |
70 |
71 | True
72 | True
73 | Resources.resx
74 |
75 |
76 | True
77 | Settings.settings
78 | True
79 |
80 |
81 | ResXFileCodeGenerator
82 | Resources.Designer.cs
83 |
84 |
85 | SettingsSingleFileGenerator
86 | Settings.Designer.cs
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
101 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationCS/WebApplicationCS.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 |
8 |
9 | 2.0
10 | {F8D988CE-ED35-4703-958A-F7771E4AF722}
11 | {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
12 | Library
13 | Properties
14 | WebApplicationCS
15 | WebApplicationCS
16 | v4.5
17 | true
18 |
19 |
20 |
21 |
22 |
23 |
24 | true
25 | full
26 | false
27 | bin\
28 | DEBUG;TRACE
29 | prompt
30 | 4
31 |
32 |
33 | pdbonly
34 | true
35 | bin\
36 | TRACE
37 | prompt
38 | 4
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | Web.config
62 |
63 |
64 | Web.config
65 |
66 |
67 |
68 |
69 |
70 |
71 | 10.0
72 | $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 | True
82 | True
83 | 49650
84 | /
85 | http://localhost:49650/
86 | False
87 | False
88 |
89 |
90 | False
91 |
92 |
93 |
94 |
95 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/ClassLibraryVB.vbproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {628A29CC-E572-40C4-8AEE-333D73D07404}
8 | Library
9 | ClassLibraryVB
10 | ClassLibraryVB
11 | 512
12 | Windows
13 | v4.5
14 |
15 |
16 | true
17 | full
18 | true
19 | true
20 | bin\Debug\
21 | ClassLibraryVB.xml
22 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
23 |
24 |
25 | pdbonly
26 | false
27 | true
28 | true
29 | bin\Release\
30 | ClassLibraryVB.xml
31 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
32 |
33 |
34 | On
35 |
36 |
37 | Binary
38 |
39 |
40 | Off
41 |
42 |
43 | On
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 | True
69 | Application.myapp
70 |
71 |
72 | True
73 | True
74 | Resources.resx
75 |
76 |
77 | True
78 | Settings.settings
79 | True
80 |
81 |
82 |
83 |
84 | VbMyResourcesResXFileCodeGenerator
85 | Resources.Designer.vb
86 | My.Resources
87 | Designer
88 |
89 |
90 |
91 |
92 | MyApplicationCodeGenerator
93 | Application.Designer.vb
94 |
95 |
96 | SettingsSingleFileGenerator
97 | My
98 | Settings.Designer.vb
99 |
100 |
101 |
102 |
109 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/ConsoleApplicationVB.vbproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {97AE33BD-7F0D-40AC-9964-A771771885DC}
8 | Exe
9 | ConsoleApplicationVB.Module1
10 | ConsoleApplicationVB
11 | ConsoleApplicationVB
12 | 512
13 | Console
14 | v4.5
15 |
16 |
17 | AnyCPU
18 | true
19 | full
20 | true
21 | true
22 | bin\Debug\
23 | ConsoleApplicationVB.xml
24 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
25 |
26 |
27 | AnyCPU
28 | pdbonly
29 | false
30 | true
31 | true
32 | bin\Release\
33 | ConsoleApplicationVB.xml
34 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
35 |
36 |
37 | On
38 |
39 |
40 | Binary
41 |
42 |
43 | Off
44 |
45 |
46 | On
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 | True
73 | Application.myapp
74 |
75 |
76 | True
77 | True
78 | Resources.resx
79 |
80 |
81 | True
82 | Settings.settings
83 | True
84 |
85 |
86 |
87 |
88 | VbMyResourcesResXFileCodeGenerator
89 | Resources.Designer.vb
90 | My.Resources
91 | Designer
92 |
93 |
94 |
95 |
96 | MyApplicationCodeGenerator
97 | Application.Designer.vb
98 |
99 |
100 | SettingsSingleFileGenerator
101 | My
102 | Settings.Designer.vb
103 |
104 |
105 |
106 |
107 |
114 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationVB/WindowsFormsApplicationVB.vbproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {11A80128-D9CA-4D63-8525-43854CFBD9DB}
8 | WinExe
9 | WindowsFormsApplicationVB.My.MyApplication
10 | WindowsFormsApplicationVB
11 | WindowsFormsApplicationVB
12 | 512
13 | WindowsForms
14 | v4.5
15 |
16 |
17 | AnyCPU
18 | true
19 | full
20 | true
21 | true
22 | bin\Debug\
23 | WindowsFormsApplicationVB.xml
24 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
25 |
26 |
27 | AnyCPU
28 | pdbonly
29 | false
30 | true
31 | true
32 | bin\Release\
33 | WindowsFormsApplicationVB.xml
34 | 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022
35 |
36 |
37 | On
38 |
39 |
40 | Binary
41 |
42 |
43 | Off
44 |
45 |
46 | On
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 | Form
75 |
76 |
77 | Form1.vb
78 | Form
79 |
80 |
81 |
82 | True
83 | Application.myapp
84 |
85 |
86 | True
87 | True
88 | Resources.resx
89 |
90 |
91 | True
92 | Settings.settings
93 | True
94 |
95 |
96 |
97 |
98 | VbMyResourcesResXFileCodeGenerator
99 | Resources.Designer.vb
100 | My.Resources
101 | Designer
102 |
103 |
104 |
105 |
106 | MyApplicationCodeGenerator
107 | Application.Designer.vb
108 |
109 |
110 | SettingsSingleFileGenerator
111 | My
112 | Settings.Designer.vb
113 |
114 |
115 |
116 |
117 |
124 |
--------------------------------------------------------------------------------
/src/SampleSolution/ClassLibraryVB/My Project/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/src/SampleSolution/WebApplicationVB/My Project/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationCS/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/src/SampleSolution/WpfApplicationVB/My Project/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/src/SampleSolution/ConsoleApplicationVB/My Project/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------
/src/SampleSolution/WindowsFormsApplicationCS/Properties/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 | text/microsoft-resx
107 |
108 |
109 | 2.0
110 |
111 |
112 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
113 |
114 |
115 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
--------------------------------------------------------------------------------