быстро динамически загружать сборки - PullRequest
0 голосов
/ 13 апреля 2020

Я пытаюсь сделать мое приложение полностью переносимым (все зависимости встроены в исполняемый файл), за исключением того факта, что оно довольно медленное. Для полной загрузки приложения требуется около 1,2 секунды, и я обнаружил, что загрузка сборок из ресурсов (двоичный файл встроен как «встроенный ресурс») довольно медленная. (400мс). Есть ли способ быстро динамически загружать мои зависимости? (Также было бы замечательно, если бы кто-нибудь мог сказать мне, как ускорить InitializeComponent) Вот мой код:

            AppDomain.CurrentDomain.AssemblyResolve += (sender, e) =>
            {
                string resource = nameof(Ink_Pad) + "." + new AssemblyName(e.Name).Name + ".dll";
                using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resource))
                {
                    byte[] data = new byte[stream.Length];
                    stream.Read(data, 0, data.Length);

                    return Assembly.Load(data);
                }
            };

Спасибо

...