ExecuteAsync(CancellationToken cancellationToken)
24 | {
25 | Request.GetOwinContext().Authentication.Challenge(LoginProvider);
26 |
27 | HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.Unauthorized);
28 | response.RequestMessage = Request;
29 | return Task.FromResult(response);
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Scripts/_references.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Application/WebApp/Scripts/_references.js
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Scripts/app/_run.js:
--------------------------------------------------------------------------------
1 | $(function () {
2 | app.initialize();
3 |
4 | // Activate Knockout
5 | ko.validation.init({ grouping: { observable: false } });
6 | ko.applyBindings(app);
7 | });
8 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Scripts/app/app.datamodel.js:
--------------------------------------------------------------------------------
1 | function AppDataModel() {
2 | var self = this;
3 | // Routes
4 | self.userInfoUrl = "/api/Me";
5 | self.siteUrl = "/";
6 |
7 | // Route operations
8 |
9 | // Other private operations
10 |
11 | // Operations
12 |
13 | // Data
14 | self.returnUrl = self.siteUrl;
15 |
16 | // Data access operations
17 | self.setAccessToken = function (accessToken) {
18 | sessionStorage.setItem("accessToken", accessToken);
19 | };
20 |
21 | self.getAccessToken = function () {
22 | return sessionStorage.getItem("accessToken");
23 | };
24 | }
25 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Scripts/app/app.viewmodel.js:
--------------------------------------------------------------------------------
1 | function AppViewModel(dataModel) {
2 | // Private state
3 | var self = this;
4 |
5 | // Private operations
6 | function cleanUpLocation() {
7 | window.location.hash = "";
8 |
9 | if (typeof (history.pushState) !== "undefined") {
10 | history.pushState("", document.title, location.pathname);
11 | }
12 | }
13 | // Data
14 | self.Views = {
15 | Loading: {} // Other views are added dynamically by app.addViewModel(...).
16 | };
17 | self.dataModel = dataModel;
18 |
19 | // UI state
20 | self.view = ko.observable(self.Views.Loading);
21 |
22 | self.loading = ko.computed(function () {
23 | return self.view() === self.Views.Loading;
24 | });
25 |
26 | // UI operations
27 |
28 | // Other navigateToX functions are added dynamically by app.addViewModel(...).
29 |
30 | // Other operations
31 | self.addViewModel = function (options) {
32 | var viewItem = new options.factory(self, dataModel),
33 | navigator;
34 |
35 | // Add view to AppViewModel.Views enum (for example, app.Views.Home).
36 | self.Views[options.name] = viewItem;
37 |
38 | // Add binding member to AppViewModel (for example, app.home);
39 | self[options.bindingMemberName] = ko.computed(function () {
40 | if (!dataModel.getAccessToken()) {
41 | // The following code looks for a fragment in the URL to get the access token which will be
42 | // used to call the protected Web API resource
43 | var fragment = common.getFragment();
44 |
45 | if (fragment.access_token) {
46 | // returning with access token, restore old hash, or at least hide token
47 | window.location.hash = fragment.state || '';
48 | dataModel.setAccessToken(fragment.access_token);
49 | } else {
50 | // no token - so bounce to Authorize endpoint in AccountController to sign in or register
51 | window.location = "/Account/Authorize?client_id=web&response_type=token&state=" + encodeURIComponent(window.location.hash);
52 | }
53 | }
54 |
55 | return self.Views[options.name];
56 | });
57 |
58 | if (typeof (options.navigatorFactory) !== "undefined") {
59 | navigator = options.navigatorFactory(self, dataModel);
60 | } else {
61 | navigator = function () {
62 | window.location.hash = options.bindingMemberName;
63 | };
64 | }
65 |
66 | // Add navigation member to AppViewModel (for example, app.NavigateToHome());
67 | self["navigateTo" + options.name] = navigator;
68 | };
69 |
70 | self.initialize = function () {
71 | Sammy().run();
72 | }
73 | }
74 |
75 | var app = new AppViewModel(new AppDataModel());
76 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Scripts/app/common.js:
--------------------------------------------------------------------------------
1 |
2 | window.common = (function () {
3 | var common = {};
4 |
5 | common.getFragment = function getFragment() {
6 | if (window.location.hash.indexOf("#") === 0) {
7 | return parseQueryString(window.location.hash.substr(1));
8 | } else {
9 | return {};
10 | }
11 | };
12 |
13 | function parseQueryString(queryString) {
14 | var data = {},
15 | pairs, pair, separatorIndex, escapedKey, escapedValue, key, value;
16 |
17 | if (queryString === null) {
18 | return data;
19 | }
20 |
21 | pairs = queryString.split("&");
22 |
23 | for (var i = 0; i < pairs.length; i++) {
24 | pair = pairs[i];
25 | separatorIndex = pair.indexOf("=");
26 |
27 | if (separatorIndex === -1) {
28 | escapedKey = pair;
29 | escapedValue = null;
30 | } else {
31 | escapedKey = pair.substr(0, separatorIndex);
32 | escapedValue = pair.substr(separatorIndex + 1);
33 | }
34 |
35 | key = decodeURIComponent(escapedKey);
36 | value = decodeURIComponent(escapedValue);
37 |
38 | data[key] = value;
39 | }
40 |
41 | return data;
42 | }
43 |
44 | return common;
45 | })();
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Scripts/app/home.viewmodel.js:
--------------------------------------------------------------------------------
1 | function HomeViewModel(app, dataModel) {
2 | var self = this;
3 |
4 | self.myHometown = ko.observable("");
5 |
6 | Sammy(function () {
7 | this.get('#home', function () {
8 | // Make a call to the protected Web API by passing in a Bearer Authorization Header
9 | $.ajax({
10 | method: 'get',
11 | url: app.dataModel.userInfoUrl,
12 | contentType: "application/json; charset=utf-8",
13 | headers: {
14 | 'Authorization': 'Bearer ' + app.dataModel.getAccessToken()
15 | },
16 | success: function (data) {
17 | self.myHometown('Your Hometown is : ' + data.hometown);
18 | }
19 | });
20 | });
21 | this.get('/', function () { this.app.runRoute('get', '#home') });
22 | });
23 |
24 | return self;
25 | }
26 |
27 | app.addViewModel({
28 | name: "Home",
29 | bindingMemberName: "home",
30 | factory: HomeViewModel
31 | });
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Startup.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using Microsoft.Owin;
5 | using Owin;
6 |
7 | [assembly: OwinStartup(typeof(WebApp.Startup))]
8 |
9 | namespace WebApp
10 | {
11 | public partial class Startup
12 | {
13 | public void Configuration(IAppBuilder app)
14 | {
15 | ConfigureAuth(app);
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ConfirmEmail.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewBag.Title = "Confirm Email";
3 | }
4 |
5 | @ViewBag.Title.
6 |
7 |
8 | Thank you for confirming your email. Please @Html.ActionLink("Click here to Log in", "Login", "Account", routeValues: null, htmlAttributes: new { id = "loginLink" })
9 |
10 |
11 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ExternalLoginConfirmation.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.ExternalLoginConfirmationViewModel
2 | @{
3 | ViewBag.Title = "Register";
4 | }
5 | @ViewBag.Title.
6 | Associate your @ViewBag.LoginProvider account.
7 |
8 | @using (Html.BeginForm("ExternalLoginConfirmation", "Account", new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 |
12 | Association Form
13 |
14 | @Html.ValidationSummary(true, "", new { @class = "text-danger" })
15 |
16 | You've successfully authenticated with @ViewBag.LoginProvider.
17 | Please enter a user name for this site below and click the Register button to finish
18 | logging in.
19 |
20 |
27 |
33 |
38 | }
39 |
40 | @section Scripts {
41 | @Scripts.Render("~/bundles/jqueryval")
42 | }
43 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ExternalLoginFailure.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewBag.Title = "Login Failure";
3 | }
4 |
5 |
6 | @ViewBag.Title.
7 | Unsuccessful login with service.
8 |
9 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ForgotPassword.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.ForgotPasswordViewModel
2 | @{
3 | ViewBag.Title = "Forgot your password?";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("ForgotPassword", "Account", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 | Enter your email.
12 |
13 | @Html.ValidationSummary("", new { @class = "text-danger" })
14 |
20 |
25 | }
26 |
27 | @section Scripts {
28 | @Scripts.Render("~/bundles/jqueryval")
29 | }
30 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ForgotPasswordConfirmation.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewBag.Title = "Forgot Password Confirmation";
3 | }
4 |
5 |
6 | @ViewBag.Title.
7 |
8 |
9 |
10 | Please check your email to reset your password.
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/Login.cshtml:
--------------------------------------------------------------------------------
1 | @using WebApp.Models
2 | @model LoginViewModel
3 | @{
4 | ViewBag.Title = "Log in";
5 | }
6 |
7 | @ViewBag.Title.
8 |
60 |
61 | @section Scripts {
62 | @Scripts.Render("~/bundles/jqueryval")
63 | }
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/Register.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.RegisterViewModel
2 | @{
3 | ViewBag.Title = "Register";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("Register", "Account", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 | Create a new account.
12 |
13 | @Html.ValidationSummary("", new { @class = "text-danger" })
14 |
20 |
26 |
32 |
38 |
43 | }
44 |
45 | @section Scripts {
46 | @Scripts.Render("~/bundles/jqueryval")
47 | }
48 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ResetPassword.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.ResetPasswordViewModel
2 | @{
3 | ViewBag.Title = "Reset password";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("ResetPassword", "Account", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 | Reset your password.
12 |
13 | @Html.ValidationSummary("", new { @class = "text-danger" })
14 | @Html.HiddenFor(model => model.Code)
15 |
21 |
27 |
33 |
38 | }
39 |
40 | @section Scripts {
41 | @Scripts.Render("~/bundles/jqueryval")
42 | }
43 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/ResetPasswordConfirmation.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewBag.Title = "Reset password confirmation";
3 | }
4 |
5 |
6 | @ViewBag.Title.
7 |
8 |
9 |
10 | Your password has been reset. Please @Html.ActionLink("click here to log in", "Login", "Account", routeValues: null, htmlAttributes: new { id = "loginLink" })
11 |
12 |
13 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/SendCode.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.SendCodeViewModel
2 | @{
3 | ViewBag.Title = "Send";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("SendCode", "Account", new { ReturnUrl = Model.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" })) {
9 | @Html.AntiForgeryToken()
10 | @Html.Hidden("rememberMe", @Model.RememberMe)
11 | Send verification code
12 |
13 |
14 |
15 | Select Two-Factor Authentication Provider:
16 | @Html.DropDownListFor(model => model.SelectedProvider, Model.Providers)
17 |
18 |
19 |
20 | }
21 |
22 | @section Scripts {
23 | @Scripts.Render("~/bundles/jqueryval")
24 | }
25 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/VerifyCode.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.VerifyCodeViewModel
2 | @{
3 | ViewBag.Title = "Verify";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("VerifyCode", "Account", new { ReturnUrl = Model.ReturnUrl }, FormMethod.Post, new { @class = "form-horizontal", role = "form" })) {
9 | @Html.AntiForgeryToken()
10 | @Html.Hidden("provider", @Model.Provider)
11 | @Html.Hidden("rememberMe", @Model.RememberMe)
12 | Enter verification code
13 |
14 | @Html.ValidationSummary("", new { @class = "text-danger" })
15 |
21 |
29 |
34 | }
35 |
36 | @section Scripts {
37 | @Scripts.Render("~/bundles/jqueryval")
38 | }
39 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Account/_ExternalLoginsListPartial.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.ExternalLoginListViewModel
2 | @using Microsoft.Owin.Security
3 |
4 | Use another service to log in.
5 |
6 | @{
7 | var loginProviders = Context.GetOwinContext().Authentication.GetExternalAuthenticationTypes();
8 | if (loginProviders.Count() == 0) {
9 |
10 |
11 | There are no external authentication services configured. See this article
12 | for details on setting up this ASP.NET application to support logging in via external services.
13 |
14 |
15 | }
16 | else {
17 | using (Html.BeginForm("ExternalLogin", "Account", new { ReturnUrl = Model.ReturnUrl })) {
18 | @Html.AntiForgeryToken()
19 |
20 |
21 | @foreach (AuthenticationDescription p in loginProviders) {
22 |
23 | }
24 |
25 |
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Home/Index.cshtml:
--------------------------------------------------------------------------------
1 | @section SPAViews {
2 | @Html.Partial("_Home")
3 | }
4 | @section Scripts{
5 | @Scripts.Render("~/bundles/knockout")
6 | @Scripts.Render("~/bundles/app")
7 | }
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Home/_Home.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
ASP.NET
4 |
ASP.NET is a free web framework for building great Web sites and Web applications using HTML, CSS, and JavaScript.
5 |
Learn more »
6 |
7 |
8 |
9 |
Your information
10 |
This section shows how you can call ASP.NET Web API to get the user details.
11 |
12 |
13 |
Learn more »
14 |
15 |
16 |
17 |
Getting started
18 |
19 | ASP.NET Single Page Application (SPA) helps you build applications that include significant client-side interactions using HTML, CSS, and JavaScript.
20 | It's now easier than ever before to getting started writing highly interactive web applications.
21 |
22 |
Learn more »
23 |
24 |
25 |
26 |
Web Hosting
27 |
You can easily find a web hosting company that offers the right mix of features and price for your applications.
28 |
Learn more »
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Manage/AddPhoneNumber.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.AddPhoneNumberViewModel
2 | @{
3 | ViewBag.Title = "Phone Number";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("AddPhoneNumber", "Manage", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 | Add a phone number
12 |
13 | @Html.ValidationSummary("", new { @class = "text-danger" })
14 |
20 |
25 | }
26 |
27 | @section Scripts {
28 | @Scripts.Render("~/bundles/jqueryval")
29 | }
30 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Manage/ChangePassword.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.ChangePasswordViewModel
2 | @{
3 | ViewBag.Title = "Change Password";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("ChangePassword", "Manage", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 | Change Password Form
12 |
13 | @Html.ValidationSummary("", new { @class = "text-danger" })
14 |
20 |
26 |
32 |
37 | }
38 | @section Scripts {
39 | @Scripts.Render("~/bundles/jqueryval")
40 | }
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Manage/ManageLogins.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.ManageLoginsViewModel
2 | @using Microsoft.Owin.Security
3 | @{
4 | ViewBag.Title = "Manage your external logins";
5 | }
6 |
7 | @ViewBag.Title.
8 |
9 | @ViewBag.StatusMessage
10 | @{
11 | var loginProviders = Context.GetOwinContext().Authentication.GetExternalAuthenticationTypes();
12 | if (loginProviders.Count() == 0) {
13 |
14 |
15 | There are no external authentication services configured. See this article
16 | for details on setting up this ASP.NET application to support logging in via external services.
17 |
18 |
19 | }
20 | else
21 | {
22 | if (Model.CurrentLogins.Count > 0)
23 | {
24 | Registered Logins
25 |
53 | }
54 | if (Model.OtherLogins.Count > 0)
55 | {
56 | using (Html.BeginForm("LinkLogin", "Manage"))
57 | {
58 | @Html.AntiForgeryToken()
59 |
60 |
61 | @foreach (AuthenticationDescription p in Model.OtherLogins)
62 | {
63 |
64 | }
65 |
66 |
67 | }
68 | }
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Manage/SetPassword.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.SetPasswordViewModel
2 | @{
3 | ViewBag.Title = "Create Password";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | You do not have a local username/password for this site. Add a local
9 | account so you can log in without an external login.
10 |
11 |
12 | @using (Html.BeginForm("SetPassword", "Manage", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
13 | {
14 | @Html.AntiForgeryToken()
15 |
16 | Create Local Login
17 |
18 | @Html.ValidationSummary("", new { @class = "text-danger" })
19 |
25 |
31 |
36 | }
37 | @section Scripts {
38 | @Scripts.Render("~/bundles/jqueryval")
39 | }
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Manage/VerifyPhoneNumber.cshtml:
--------------------------------------------------------------------------------
1 | @model WebApp.Models.VerifyPhoneNumberViewModel
2 | @{
3 | ViewBag.Title = "Verify Phone Number";
4 | }
5 |
6 | @ViewBag.Title.
7 |
8 | @using (Html.BeginForm("VerifyPhoneNumber", "Manage", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
9 | {
10 | @Html.AntiForgeryToken()
11 | @Html.Hidden("phoneNumber", @Model.PhoneNumber)
12 | Enter verification code
13 | @ViewBag.Status
14 |
15 | @Html.ValidationSummary("", new { @class = "text-danger" })
16 |
22 |
27 | }
28 |
29 | @section Scripts {
30 | @Scripts.Render("~/bundles/jqueryval")
31 | }
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Shared/Error.cshtml:
--------------------------------------------------------------------------------
1 | @model System.Web.Mvc.HandleErrorInfo
2 | @{
3 | ViewBag.Title = "Error";
4 | }
5 |
6 | Error.
7 | An error occurred while processing your request.
8 |
9 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Shared/Lockout.cshtml:
--------------------------------------------------------------------------------
1 | @model System.Web.Mvc.HandleErrorInfo
2 |
3 | @{
4 | ViewBag.Title = "Locked Out";
5 | }
6 |
7 |
8 | Locked out.
9 | This account has been locked out, please try again later.
10 |
11 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Shared/_Layout.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | @ViewBag.Title - My ASP.NET Application
6 |
7 |
8 | @Styles.Render("~/Content/css")
9 | @Scripts.Render("~/bundles/modernizr")
10 |
11 |
12 |
13 |
14 |
22 |
23 |
24 | - @Html.ActionLink("Home", "Index", "Home", new { area = "" }, null)
25 | - @Html.ActionLink("API", "Index", "Help", new { area = "HelpPage" }, null)
26 |
27 | @Html.Partial("_LoginPartial")
28 |
29 |
30 |
31 |
32 | @RenderBody()
33 | @RenderSection("SPAViews", required: false)
34 |
35 |
38 |
39 |
40 | @Scripts.Render("~/bundles/jquery")
41 | @Scripts.Render("~/bundles/bootstrap")
42 | @RenderSection("Scripts", required: false)
43 |
44 |
45 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Shared/_LoginPartial.cshtml:
--------------------------------------------------------------------------------
1 | @using Microsoft.AspNet.Identity
2 | @if (Request.IsAuthenticated)
3 | {
4 | using (Html.BeginForm("LogOff", "Account", new { area = "" }, FormMethod.Post, new { id = "logoutForm", @class = "navbar-right" }))
5 | {
6 | @Html.AntiForgeryToken()
7 |
8 |
9 | -
10 | @Html.ActionLink("Hello " + User.Identity.GetUserName() + "!", "Index", "Manage", routeValues: new { area = "" }, htmlAttributes: new { title = "Manage" })
11 |
12 | - Log off
13 |
14 | }
15 | }
16 | else
17 | {
18 |
19 | - @Html.ActionLink("Register", "Register", "Account", routeValues: new { area = "" }, htmlAttributes: new { id = "registerLink" })
20 | - @Html.ActionLink("Log in", "Login", "Account", routeValues: new { area = "" }, htmlAttributes: new { id = "loginLink" })
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/Web.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Views/_ViewStart.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "~/Views/Shared/_Layout.cshtml";
3 | }
4 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Web.Debug.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/Web.Release.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Application/WebApp/favicon.ico
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Application/WebApp/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Application/WebApp/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Application/WebApp/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Application/WebApp/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/Installer.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "WebAppMM", "WebAppMM\WebAppMM.wixproj", "{DE378512-210C-45E4-A9AC-C0EB80954677}"
7 | EndProject
8 | Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "WebApp", "WebApp\WebApp.wixproj", "{BBB63D91-190F-4D94-BD3A-CC16A85CE23C}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|x86 = Debug|x86
13 | Release|x86 = Release|x86
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {DE378512-210C-45E4-A9AC-C0EB80954677}.Debug|x86.ActiveCfg = Debug|x86
17 | {DE378512-210C-45E4-A9AC-C0EB80954677}.Debug|x86.Build.0 = Debug|x86
18 | {DE378512-210C-45E4-A9AC-C0EB80954677}.Release|x86.ActiveCfg = Release|x86
19 | {DE378512-210C-45E4-A9AC-C0EB80954677}.Release|x86.Build.0 = Release|x86
20 | {BBB63D91-190F-4D94-BD3A-CC16A85CE23C}.Debug|x86.ActiveCfg = Debug|x86
21 | {BBB63D91-190F-4D94-BD3A-CC16A85CE23C}.Debug|x86.Build.0 = Debug|x86
22 | {BBB63D91-190F-4D94-BD3A-CC16A85CE23C}.Release|x86.ActiveCfg = Release|x86
23 | {BBB63D91-190F-4D94-BD3A-CC16A85CE23C}.Release|x86.Build.0 = Release|x86
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | EndGlobal
29 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Code/Features.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Code/IISMeta.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Installed OR NETFRAMEWORK45
15 | Installed OR IISMAJORVERSION
16 | Installed OR ASPNETINSTALLED="#1"
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Code/Product.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | Installed OR NETFRAMEWORK40FULL
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Code/UI.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Resources/Banner.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Installer/WebApp/Resources/Banner.jpg
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Resources/Dialog.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Installer/WebApp/Resources/Dialog.jpg
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Resources/EULA.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}
2 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
3 | \pard\nowidctlpar\f0\fs20 TODO: Place EULA Text Here. \par
4 | \par
5 | Special Note:\par
6 | \par
7 | The Windows Installer ScrollableText control is very old and is limited in the Rich Text that it can render. It is recommended to use the oldest version of Wordpad that you have to create this file and to test the installer on all of your platforms to ensure the EULA is readable.\par
8 | }
9 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebApp/Resources/Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/web-application/Installer/WebApp/Resources/Icon.ico
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebAppMM/WebAppMM.wixproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | x86
6 | 3.7
7 | {de378512-210c-45e4-a9ac-c0eb80954677}
8 | 2.0
9 | WebAppMM
10 | Module
11 | $(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets
12 | $(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets
13 |
14 |
15 | bin\$(Configuration)\
16 | obj\$(Configuration)\
17 | Debug
18 |
19 |
20 | bin\$(Configuration)\
21 | obj\$(Configuration)\
22 |
23 |
24 |
25 |
26 |
27 |
28 |
36 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/web-application/Installer/WebAppMM/WebAppMMcustom.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Application/Application.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WindowsService", "WindowsService\WindowsService.csproj", "{8291DA2B-F366-4F95-A1AB-3271A13A93C4}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {8291DA2B-F366-4F95-A1AB-3271A13A93C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {8291DA2B-F366-4F95-A1AB-3271A13A93C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {8291DA2B-F366-4F95-A1AB-3271A13A93C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {8291DA2B-F366-4F95-A1AB-3271A13A93C4}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | EndGlobal
23 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Application/WindowsService/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.ServiceProcess;
5 | using System.Text;
6 |
7 | namespace WindowsService
8 | {
9 | static class Program
10 | {
11 | ///
12 | /// The main entry point for the application.
13 | ///
14 | static void Main()
15 | {
16 | ServiceBase[] ServicesToRun;
17 | ServicesToRun = new ServiceBase[]
18 | {
19 | new Service1()
20 | };
21 | ServiceBase.Run(ServicesToRun);
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Application/WindowsService/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using 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 | [assembly: AssemblyTitle("WindowsService")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("WindowsService")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("8291da2b-f366-4f95-a1ab-3271a13a93c4")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Application/WindowsService/Service1.Designer.cs:
--------------------------------------------------------------------------------
1 | namespace WindowsService
2 | {
3 | partial class Service1
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 Component 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 | components = new System.ComponentModel.Container();
32 | this.ServiceName = "Service1";
33 | }
34 |
35 | #endregion
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Application/WindowsService/Service1.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel;
4 | using System.Data;
5 | using System.Diagnostics;
6 | using System.Linq;
7 | using System.ServiceProcess;
8 | using System.Text;
9 |
10 | namespace WindowsService
11 | {
12 | public partial class Service1 : ServiceBase
13 | {
14 | public Service1()
15 | {
16 | InitializeComponent();
17 | }
18 |
19 | protected override void OnStart(string[] args)
20 | {
21 | }
22 |
23 | protected override void OnStop()
24 | {
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Application/WindowsService/WindowsService.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Debug
6 | AnyCPU
7 | {8291DA2B-F366-4F95-A1AB-3271A13A93C4}
8 | WinExe
9 | Properties
10 | WindowsService
11 | WindowsService
12 | v4.0
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 | Component
47 |
48 |
49 | Service1.cs
50 |
51 |
52 |
53 |
54 |
55 |
56 | xcopy /iery "$(TargetDir)*.*" "$(SolutionDir)..\Installer\Deploy"
57 |
58 |
65 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/Installer.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 14
4 | VisualStudioVersion = 14.0.25420.1
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "WindowsServiceMM", "WindowsServiceMM\WindowsServiceMM.wixproj", "{6156D1AF-804F-4234-86CF-E560CB58D1FD}"
7 | EndProject
8 | Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "WindowsService", "WindowsService\WindowsService.wixproj", "{EC12FC70-69AE-46AA-AD84-53022C818C25}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|x86 = Debug|x86
13 | Release|x86 = Release|x86
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {6156D1AF-804F-4234-86CF-E560CB58D1FD}.Debug|x86.ActiveCfg = Debug|x86
17 | {6156D1AF-804F-4234-86CF-E560CB58D1FD}.Debug|x86.Build.0 = Debug|x86
18 | {6156D1AF-804F-4234-86CF-E560CB58D1FD}.Release|x86.ActiveCfg = Release|x86
19 | {6156D1AF-804F-4234-86CF-E560CB58D1FD}.Release|x86.Build.0 = Release|x86
20 | {EC12FC70-69AE-46AA-AD84-53022C818C25}.Debug|x86.ActiveCfg = Debug|x86
21 | {EC12FC70-69AE-46AA-AD84-53022C818C25}.Debug|x86.Build.0 = Debug|x86
22 | {EC12FC70-69AE-46AA-AD84-53022C818C25}.Release|x86.ActiveCfg = Release|x86
23 | {EC12FC70-69AE-46AA-AD84-53022C818C25}.Release|x86.Build.0 = Release|x86
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | EndGlobal
29 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Code/Features.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Code/IISMeta.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Installed OR NETFRAMEWORK45
15 | Installed OR IISMAJORVERSION
16 | Installed OR ASPNETINSTALLED="#1"
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Code/Product.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | Installed OR NETFRAMEWORK40FULL
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Code/UI.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/Banner.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/Banner.jpg
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/Dialog.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/Dialog.jpg
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/EULA.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}
2 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
3 | \pard\nowidctlpar\f0\fs20 TODO: Place EULA Text Here. \par
4 | \par
5 | Special Note:\par
6 | \par
7 | The Windows Installer ScrollableText control is very old and is limited in the Rich Text that it can render. It is recommended to use the oldest version of Wordpad that you have to create this file and to test the installer on all of your platforms to ensure the EULA is readable.\par
8 | }
9 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v3-Votive/windows-service/Installer/WindowsService/Resources/Icon.ico
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsServiceMM/WindowsServiceMM.wixproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Debug
5 | x86
6 | 3.7
7 | {6156d1af-804f-4234-86cf-e560cb58d1fd}
8 | 2.0
9 | WindowsServiceMM
10 | Module
11 | $(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets
12 | $(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets
13 |
14 |
15 | bin\$(Configuration)\
16 | obj\$(Configuration)\
17 | Debug
18 |
19 |
20 | bin\$(Configuration)\
21 | obj\$(Configuration)\
22 |
23 |
24 |
25 |
26 |
27 |
28 |
36 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsServiceMM/WindowsServiceMM.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/WiX-v3-Votive/windows-service/Installer/WindowsServiceMM/WindowsServiceMMcustom.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/README.md:
--------------------------------------------------------------------------------
1 | ## Tutorials
2 |
3 | [Web API](https://github.com/iswix-llc/iswix-tutorials/tree/master/WiX-v4-HeatWave/web-api) An ASP.NET Core WebAPI project using swagger as it's default page shipped framework independent and hosted by IIS. Checks for IIS and .NET Hosting Bundle. Implemented in .NET 7.0 and WiX v4.0.3. (Heatwave)
4 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/.config/dotnet-tools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 1,
3 | "isRoot": true,
4 | "tools": {
5 | "dotnet-ef": {
6 | "version": "7.0.13",
7 | "commands": [
8 | "dotnet-ef"
9 | ]
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/Api.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net7.0
5 | enable
6 | enable
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/Controllers/WeatherForecastController.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore.Mvc;
2 |
3 | namespace Api.Controllers
4 | {
5 | [ApiController]
6 | [Route("[controller]")]
7 | public class WeatherForecastController : ControllerBase
8 | {
9 | private static readonly string[] Summaries = new[]
10 | {
11 | "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
12 | };
13 |
14 | private readonly ILogger _logger;
15 |
16 | public WeatherForecastController(ILogger logger)
17 | {
18 | _logger = logger;
19 | }
20 |
21 | [HttpGet(Name = "GetWeatherForecast")]
22 | public IEnumerable Get()
23 | {
24 | return Enumerable.Range(1, 5).Select(index => new WeatherForecast
25 | {
26 | Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
27 | TemperatureC = Random.Shared.Next(-20, 55),
28 | Summary = Summaries[Random.Shared.Next(Summaries.Length)]
29 | })
30 | .ToArray();
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/Program.cs:
--------------------------------------------------------------------------------
1 |
2 | namespace Api
3 | {
4 | public class Program
5 | {
6 | public static void Main(string[] args)
7 | {
8 | var builder = WebApplication.CreateBuilder(args);
9 |
10 | // Add services to the container.
11 |
12 | builder.Services.AddControllers();
13 | // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
14 | builder.Services.AddEndpointsApiExplorer();
15 | builder.Services.AddSwaggerGen();
16 |
17 | var app = builder.Build();
18 |
19 | // Configure the HTTP request pipeline.
20 | if (app.Environment.IsDevelopment())
21 | {
22 | app.UseSwagger();
23 | app.UseSwaggerUI();
24 | }
25 |
26 | app.UseAuthorization();
27 |
28 |
29 | app.MapControllers();
30 |
31 | app.Run();
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/Properties/PublishProfiles/FolderProfile.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 | true
8 | false
9 | true
10 | Release
11 | Any CPU
12 | FileSystem
13 | ..\..\Installer\Deploy\WebSite
14 | FileSystem
15 | <_TargetId>Folder
16 |
17 | net7.0
18 | win-x64
19 | 80af7556-1533-4e4d-ab2b-e00cd2e45a8a
20 | true
21 |
22 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json.schemastore.org/launchsettings.json",
3 | "iisSettings": {
4 | "windowsAuthentication": false,
5 | "anonymousAuthentication": true,
6 | "iisExpress": {
7 | "applicationUrl": "http://localhost:35020",
8 | "sslPort": 0
9 | }
10 | },
11 | "profiles": {
12 | "http": {
13 | "commandName": "Project",
14 | "dotnetRunMessages": true,
15 | "launchBrowser": true,
16 | "launchUrl": "swagger",
17 | "applicationUrl": "http://localhost:5043",
18 | "environmentVariables": {
19 | "ASPNETCORE_ENVIRONMENT": "Development"
20 | }
21 | },
22 | "IIS Express": {
23 | "commandName": "IISExpress",
24 | "launchBrowser": true,
25 | "launchUrl": "swagger",
26 | "environmentVariables": {
27 | "ASPNETCORE_ENVIRONMENT": "Development"
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/WeatherForecast.cs:
--------------------------------------------------------------------------------
1 | namespace Api
2 | {
3 | public class WeatherForecast
4 | {
5 | public DateOnly Date { get; set; }
6 |
7 | public int TemperatureC { get; set; }
8 |
9 | public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
10 |
11 | public string? Summary { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning"
6 | }
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Api/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning"
6 | }
7 | },
8 | "AllowedHosts": "*"
9 | }
10 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Application/Application.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.7.34031.279
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Api", "Api\Api.csproj", "{80AF7556-1533-4E4D-AB2B-E00CD2E45A8A}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {80AF7556-1533-4E4D-AB2B-E00CD2E45A8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {80AF7556-1533-4E4D-AB2B-E00CD2E45A8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {80AF7556-1533-4E4D-AB2B-E00CD2E45A8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {80AF7556-1533-4E4D-AB2B-E00CD2E45A8A}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {25EB6BCD-52CD-43F3-A2C1-6F3396DCF00B}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/Installer.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.7.34031.279
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "WebAPI", "WebAPI\WebAPI.wixproj", "{F524F099-5AB8-4482-94B6-5F58B30CD7F4}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|ARM64 = Debug|ARM64
11 | Debug|x64 = Debug|x64
12 | Debug|x86 = Debug|x86
13 | Release|ARM64 = Release|ARM64
14 | Release|x64 = Release|x64
15 | Release|x86 = Release|x86
16 | EndGlobalSection
17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
18 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Debug|ARM64.ActiveCfg = Debug|ARM64
19 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Debug|ARM64.Build.0 = Debug|ARM64
20 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Debug|x64.ActiveCfg = Debug|x64
21 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Debug|x64.Build.0 = Debug|x64
22 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Debug|x86.ActiveCfg = Debug|x86
23 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Debug|x86.Build.0 = Debug|x86
24 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Release|ARM64.ActiveCfg = Release|ARM64
25 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Release|ARM64.Build.0 = Release|ARM64
26 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Release|x64.ActiveCfg = Release|x64
27 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Release|x64.Build.0 = Release|x64
28 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Release|x86.ActiveCfg = Release|x86
29 | {F524F099-5AB8-4482-94B6-5F58B30CD7F4}.Release|x86.Build.0 = Release|x86
30 | EndGlobalSection
31 | GlobalSection(SolutionProperties) = preSolution
32 | HideSolutionNode = FALSE
33 | EndGlobalSection
34 | GlobalSection(ExtensibilityGlobals) = postSolution
35 | SolutionGuid = {0156E64F-C970-4B49-AD26-E537C56C4CA7}
36 | EndGlobalSection
37 | EndGlobal
38 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/IISMeta.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/Product.wxs:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/Banner.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/Banner.jpg
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/Dialog.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/Dialog.jpg
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/EULA.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}
2 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
3 | \pard\nowidctlpar\f0\fs20 TODO: Place EULA Text Here. \par
4 | \par
5 | Special Note:\par
6 | \par
7 | The Windows Installer ScrollableText control is very old and is limited in the Rich Text that it can render. It is recommended to use the oldest version of Wordpad that you have to create this file and to test the installer on all of your platforms to ensure the EULA is readable.\par
8 | }
9 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v4-HeatWave/web-api/Installer/WebAPI/Resources/Icon.ico
--------------------------------------------------------------------------------
/WiX-v4-HeatWave/web-api/Installer/WebAPI/UI.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/Application.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.8.34322.80
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DesktopApplication", "DesktopApplication\DesktopApplication.csproj", "{482E38D7-E7C4-420F-9FDB-58C36725F255}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|x64 = Debug|x64
11 | Release|x64 = Release|x64
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {482E38D7-E7C4-420F-9FDB-58C36725F255}.Debug|x64.ActiveCfg = Debug|x64
15 | {482E38D7-E7C4-420F-9FDB-58C36725F255}.Debug|x64.Build.0 = Debug|x64
16 | {482E38D7-E7C4-420F-9FDB-58C36725F255}.Release|x64.ActiveCfg = Release|x64
17 | {482E38D7-E7C4-420F-9FDB-58C36725F255}.Release|x64.Build.0 = Release|x64
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {27608E7A-8B26-45FA-B1D9-9B0FA6748BEC}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/App.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/App.xaml.cs:
--------------------------------------------------------------------------------
1 | using System.Configuration;
2 | using System.Data;
3 | using System.Windows;
4 |
5 | namespace DesktopApplication
6 | {
7 | ///
8 | /// Interaction logic for App.xaml
9 | ///
10 | public partial class App : Application
11 | {
12 | }
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Windows;
2 |
3 | [assembly: ThemeInfo(
4 | ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
5 | //(used if a resource is not found in the page,
6 | // or application resource dictionaries)
7 | ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
8 | //(used if a resource is not found in the page,
9 | // app, or any theme specific resource dictionaries)
10 | )]
11 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/DesktopApplication.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | WinExe
5 | net8.0-windows
6 | DesktopApplication
7 | enable
8 | enable
9 | true
10 | x64
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/MainWindow.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/MainWindow.xaml.cs:
--------------------------------------------------------------------------------
1 | using System.Text;
2 | using System.Windows;
3 | using System.Windows.Controls;
4 | using System.Windows.Data;
5 | using System.Windows.Documents;
6 | using System.Windows.Input;
7 | using System.Windows.Media;
8 | using System.Windows.Media.Imaging;
9 | using System.Windows.Navigation;
10 | using System.Windows.Shapes;
11 |
12 | namespace DesktopApplication
13 | {
14 | ///
15 | /// Interaction logic for MainWindow.xaml
16 | ///
17 | public partial class MainWindow : Window
18 | {
19 | public MainWindow()
20 | {
21 | InitializeComponent();
22 | }
23 | }
24 | }
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Application/DesktopApplication/Properties/PublishProfiles/FolderProfile.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 | Release
8 | x64
9 | ..\..\Installer\Deploy
10 | FileSystem
11 | <_TargetId>Folder
12 | net8.0-windows
13 | win-x64
14 | true
15 | false
16 | false
17 |
18 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/IISMeta.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Product.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/Banner.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/Banner.jpg
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/Dialog.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/Dialog.jpg
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/EULA.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}
2 | {\*\generator Riched20 6.2.9200}{\*\mmathPr\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
3 | \pard\nowidctlpar\f0\fs20 TODO: Place EULA Text Here. \par
4 | \par
5 | Special Note:\par
6 | \par
7 | The Windows Installer ScrollableText control is very old and is limited in the Rich Text that it can render. It is recommended to use the oldest version of Wordpad that you have to create this file and to test the installer on all of your platforms to ensure the EULA is readable.\par
8 | }
9 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/iswix-llc/iswix-tutorials/d5919f4d75836d52c818e3386f92d6d69ec34193/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/Resources/Icon.ico
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/DesktopApplication/UI.wxs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/WiX-v4-HeatWaveBuildTools/desktop-application/Installer/Installer.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 17
4 | VisualStudioVersion = 17.8.34322.80
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{B7DD6F7E-DEF8-4E67-B5B7-07EF123DB6F0}") = "DesktopApplication", "DesktopApplication\DesktopApplication.wixproj", "{4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|ARM64 = Debug|ARM64
11 | Debug|x64 = Debug|x64
12 | Debug|x86 = Debug|x86
13 | Release|ARM64 = Release|ARM64
14 | Release|x64 = Release|x64
15 | Release|x86 = Release|x86
16 | EndGlobalSection
17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
18 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Debug|ARM64.ActiveCfg = Debug|ARM64
19 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Debug|ARM64.Build.0 = Debug|ARM64
20 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Debug|x64.ActiveCfg = Debug|x64
21 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Debug|x64.Build.0 = Debug|x64
22 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Debug|x86.ActiveCfg = Debug|x86
23 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Debug|x86.Build.0 = Debug|x86
24 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Release|ARM64.ActiveCfg = Release|ARM64
25 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Release|ARM64.Build.0 = Release|ARM64
26 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Release|x64.ActiveCfg = Release|x64
27 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Release|x64.Build.0 = Release|x64
28 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Release|x86.ActiveCfg = Release|x86
29 | {4607DFDB-B66F-4772-8CBB-2404F5BC3C4F}.Release|x86.Build.0 = Release|x86
30 | EndGlobalSection
31 | GlobalSection(SolutionProperties) = preSolution
32 | HideSolutionNode = FALSE
33 | EndGlobalSection
34 | GlobalSection(ExtensibilityGlobals) = postSolution
35 | SolutionGuid = {5A0DE3B0-67EF-4744-AD83-7D64B9E1B90A}
36 | EndGlobalSection
37 | EndGlobal
38 |
--------------------------------------------------------------------------------