Как извлечь ресурсы добавляемые через EmbeddedResources.Add на другой стороне?

Чтобы извлечь ресурсы, добавленные через метод EmbeddedResources.Add в C#, вам понадобится использовать рефлексию и получить доступ к сборке, в которой хранятся ресурсы.

Вот подробный шаг за шагом алгоритм, который позволит вам извлечь ресурсы:

  1. Подключите пространство имен System.Reflection.
using System.Reflection;
  1. Получите текущую сборку, в которой хранятся ваши ресурсы, используя метод Assembly.GetExecutingAssembly().
Assembly assembly = Assembly.GetExecutingAssembly();
  1. Получите список всех ресурсов, содержащихся в сборке, с помощью метода assembly.GetManifestResourceNames(). Этот метод вернет массив строк, содержащий имена всех ресурсов.
string[] resourceNames = assembly.GetManifestResourceNames();
  1. Проходя по каждому имени ресурса в массиве resourceNames, вы можете выбрать нужные вам ресурсы. Для этого снова используйте рефлексию и метод assembly.GetManifestResourceStream(resourceName).
foreach (string resourceName in resourceNames)
{
    using (var stream = assembly.GetManifestResourceStream(resourceName))
    {
        // Обработка ресурсов
    }
}
  1. Внутри цикла вы можете использовать stream для работы с ресурсами. Например, если ваш ресурс является текстовым файлом, вы можете прочитать его содержимое с помощью класса StreamReader.
using (var reader = new StreamReader(stream))
{
    string content = reader.ReadToEnd();
    // Обработка текстового файла
}
  1. После обработки ресурса закройте поток, используя конструкцию using.
using (var stream = assembly.GetManifestResourceStream(resourceName))
{
    // Обработка ресурса
}

Таким образом, вы сможете извлечь ресурсы, добавленные через EmbeddedResources.Add на другой стороне, используя рефлексию и методы предоставляемые классом Assembly.