Установщик Windows с CustomInstaller и ошибкой 1001. Невозможно получить типы установщика в сборке dll.C#

Место общения программистов C#
Ответить
Anonymous
 Установщик Windows с CustomInstaller и ошибкой 1001. Невозможно получить типы установщика в сборке dll.

Сообщение Anonymous »

Мое решение состоит из 3 проектов: проект для CustomInstaller, проект для моего приложения WPF и моего установщика установки.
После создания установщика установки и его запуска в середине процесса у меня появляется сообщение об ошибке:

Ошибка 1001. Невозможно получить типы установщика в C:\Miopro\MS4\Miopro.Setup.Prequires.dll. сборка. --> Невозможно загрузить один или несколько запрошенных типов. Получите свойство LoaderExceptions для получения дополнительной информации.

Вот мое решение для Visual Studio 2022:
  • Miopro.Setup.Prequires

    Библиотека классов
  • .Net 7.0
  • Платформа Целевой x86
[*]Miopro.Suite.Wpf
  • WPF Windows Приложение
  • .Net 7.0
  • Цель платформы x86
[*]Miopro.Setup
  • Проект установки установщика Windows
  • Активная конфигурация (отладка)
  • Диспетчер конфигураций имеет все проекты с платформой Любой процессор
  • Файловая система на целевом компьютере

    Папка приложения Расположение по умолчанию: C: [Производитель]\MS4
  • Папка приложения

    Основной вывод из Miopro.Setup.Prequires
  • Опубликовать элементы из Miopro.Setup.Prequires
  • Опубликовать элементы из Miopro.Suite.Wpf


[*]Пользовательские действия
  • Установить

    < li>Основной вывод из Miopro.Setup.Prequires





Окружающая среда:
  • Windows 11 ( x64)
Файловая система
Изображение

Пользовательское действие
Изображение

Класс CustomInstaller

Код: Выделить всё

using System;
using System.ComponentModel;
using System.Configuration.Install;
using System.Diagnostics;
using System.IO;

namespace Miopro.Setup.Prerequisites
{
[RunInstaller(true)]
public class CustomInstaller : Installer
{
public CustomInstaller() :  base()
{
this.Committed += new InstallEventHandler(CustomInstaller_Committed);
this.Committing += new InstallEventHandler(CustomInstaller_Committing);
}

public static void Main()
{
WriteToEventLog("Install");
}

/// 
/// Event handler for 'Committing' event.
/// 
/// 

/// 
private void CustomInstaller_Committing(object sender, InstallEventArgs e)
{
WriteToEventLog("Committing Event occurred.");
}

/// 
/// Event handler for 'Committed' event.
/// 
/// 
/// 
private void CustomInstaller_Committed(object sender, InstallEventArgs e)
{
WriteToEventLog("Committed Event occurred.");
}

public override void Install(System.Collections.IDictionary stateSaver)
{
base.Install(stateSaver);
}

/// 
///
/// 
/// 
public override void Commit(System.Collections.IDictionary savedState)
{
base.Commit(savedState);
}

/// 
///
/// 
/// 
public override void Rollback(System.Collections.IDictionary savedState)
{
base.Rollback(savedState);
}

/// 
///
/// 
/// 
public override void Uninstall(System.Collections.IDictionary savedState)
{
base.Uninstall(savedState);
}

private static void WriteToEventLog(string message)
{
string source = "Miopro.Setup.Prerequisites.CustomInstaller";
string log = "Application";

if (!EventLog.SourceExists(source))
{
EventLog.CreateEventSource(source, log);
}

EventLog.WriteEntry(source, message, EventLogEntryType.Information);
}
}
}
Итак, во время установки я вижу Miopro.Setup.Prequires.dll в расположении по умолчанию в папке приложения, поэтому он доступен.
Изображение
Я уже подготовил здесь несколько постов, но ни одного из них мы говорим о CustomInstaller в разделе «Пользовательские действия». Какова возможная причина появления этого сообщения об ошибке?

Подробнее здесь: https://stackoverflow.com/questions/789 ... nstaller-t
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»