Я решил оставить свой другой вопрос , чтобы умереть, поскольку я подумал о новой идее, использующей метод Джеффри Рихтера, написанный на этой странице , для объединения библиотеки .dll с моим приложением. Поэтому я добавил свой файл .dll как встроенный ресурс, а также добавил его в качестве ссылки. Затем в Program.cs (я понятия не имею, куда должен идти код, который он разместил), я добавил это:
...
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
string[] args = Environment.GetCommandLineArgs();
if (args.Length > 1)
_in = args[1];
SingleInstanceController controller = new SingleInstanceController();
controller.Run(args);
AppDomain.CurrentDomain.AssemblyResolve += (sender, argsx) =>
{
String resourceName = "AssemblyLoadingAndReflection." +
new AssemblyName(argsx.Name).Name + ".dll";
using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName))
{
Byte[] assemblyData = new Byte[stream.Length];
stream.Read(assemblyData, 0, assemblyData.Length);
return Assembly.Load(assemblyData);
}
}
;
Должен ли я изменить resourceName на что-то другое? Правильно ли я добавил (в нужном месте)?
Теперь проблема в том, что по-прежнему не удается найти и загрузить сборку, и я не уверен, что сделал неправильно. Любая помощь будет оценена.