myawesomeprogram.cs
Код: Выделить всё
namespace myawesomenamespace
{
internal static class myawesomeprogram
{
[STAThread]
static void Main()
{
ApplicationConfiguration.Initialize();
Application.Run(new myawesomeform());
}
}
}
Код: Выделить всё
namespace myawesomenamespace
{
partial class myawesomeform
{
private System.ComponentModel.IContainer components = null;
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
private void InitializeComponent()
{
myawesomewebview = new Microsoft.Web.WebView2.WinForms.WebView2();
((System.ComponentModel.ISupportInitialize)myawesomewebview).BeginInit();
SuspendLayout();
myawesomewebview.AllowExternalDrop = true;
myawesomewebview.CreationProperties = null;
myawesomewebview.DefaultBackgroundColor = Color.White;
myawesomewebview.Dock = DockStyle.Fill;
myawesomewebview.Location = new Point(0, 0);
myawesomewebview.Name = "myawesomewebview";
myawesomewebview.Size = new Size(800, 450);
myawesomewebview.TabIndex = 4;
myawesomewebview.ZoomFactor = 1D;
AutoScaleDimensions = new SizeF(7F, 15F);
AutoScaleMode = AutoScaleMode.Font;
ClientSize = new Size(800, 450);
Controls.Add(myawesomewebview);
Name = "myawesomeform";
Text = "myawesomeform";
WindowState = FormWindowState.Maximized;
Load += myawesomeform_Load;
((System.ComponentModel.ISupportInitialize)myawesomewebview).EndInit();
ResumeLayout(false);
}
private Microsoft.Web.WebView2.WinForms.WebView2 myawesomewebview;
}
}
Код: Выделить всё
using Microsoft.Web.WebView2.Core;
namespace myawesomenamespace
{
public partial class myawesomeform : Form
{
private Random? myawesomerandom;
public myawesomeform()
{
InitializeComponent();
}
private async void myawesomeform_Load(object sender, EventArgs e)
{
CoreWebView2Environment? myawesomeenvironment = await CoreWebView2Environment.CreateAsync();
await myawesomewebview.EnsureCoreWebView2Async(myawesomeenvironment);
myawesomerandom = new Random();
await Task.Delay(myawesomerandom.Next(1000, 2000));
myawesomewebview.Source = new Uri("http://lixxx.co.uk");
await Task.Delay(myawesomerandom.Next(1000, 2000));
myawesomewebview.Source = new Uri("http://lmfgtfy.co.uk");
}
}
}
Я настроил профиль публикации с конфигурацией выпуска, целевой платформой Windows .net 8.0, целевая среда выполнения win x64, автономный режим развертывания с использованием одного файла и готовность к запуску параметров компиляции.
Опубликованный файл .exe в опубликованном каталоге работает правильно.
Когда я вырезаю и вставляю весь опубликованный каталог на 64-битный сервер AMD с ОС Windows Server 2022 и запускаю .exe, приложение загружается и сразу отображает диалоговое окно необработанной ошибки с текстом исключения «Система». .IO.FileNotFoundException: система не может найти указанный файл. (0x80070002)».
Приложению требовалась запись в текстовый файл, но я удалил его из последних сборок.
На сервере установлен пакет хостинга .net 8.0 и среда выполнения .net 8.0 x64.
Подробнее здесь: https://stackoverflow.com/questions/788 ... eption-the
Мобильная версия