Я написал простое Windows приложение, использующее C#
для управления ботами Telegram с помощью Telegram Bots API
Раньше оно работало нормально. но в последнее время он не работает и автоматически закрывается. Когда я запускаю его в режиме отладки, он говорит: An unhandled exception of type 'System.AggregateException' occurred in mscorlib.dll
и ссылается на эту строку: Telegram.Bot.Types.Update[] update = bot.GetUpdatesAsync(offset).Result;
Весь код моего приложения находится здесь:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Threading;
namespace bot_test1
{
public partial class Form1 : Form
{
private static string Token = "";
private Thread botThread;
Telegram.Bot.TelegramBotClient bot;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void btnStart_Click(object sender, EventArgs e)
{
Token = txtToken.Text;
botThread = new Thread(new ThreadStart(runBot));
botThread.Start();
}
void runBot()
{
bot = new Telegram.Bot.TelegramBotClient(Token);
this.Invoke(new Action(() =>
{
lblStatus.Text = "Online";
lblStatus.ForeColor = Color.Green;
}));
int offset = 0;
while (true)
{
Telegram.Bot.Types.Update[] update = bot.GetUpdatesAsync(offset).Result;
foreach (var up in update)
{
offset = up.Id + 1;
if (up.Message == null)
continue;
var text = up.Message.Text;
var from = up.Message.From;
var chatId = up.Message.Chat.Id;
if (text.Contains("/start"))
{
StringBuilder sb = new StringBuilder();
sb.AppendLine(from.Username + " Welcome to this bot!");
bot.SendTextMessageAsync(chatId, sb.ToString());
}
}
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
botThread.Abort();
}
}
}
Я не смог найти в чем проблема. Я также искал net, но не смог найти решение. Не могли бы вы направить меня?
PS. Есть более подробная информация об ошибке:
System.AggregateException was unhandled
HResult=-2146233088
Message=One or more errors occurred.
Source=mscorlib
StackTrace:
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at System.Threading.Tasks.Task`1.get_Result()
at bot_test1.Form1.runBot() in C:\Users\Person1\Documents\Visual Studio 2015\Projects\bot_test1\bot_test1\Form1.cs:line 47
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
HResult=-2146233088
Message=An error occurred while sending the request.
Source=mscorlib
StackTrace:
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Telegram.Bot.TelegramBotClient.<MakeRequestAsync>d__54`1.MoveNext()
InnerException:
HResult=-2146233079
Message=The request was aborted: Could not create SSL/TLS secure channel.
Source=System
StackTrace:
at System.Net.HttpWebRequest.EndGetRequestStream(IAsyncResult asyncResult, TransportContext& context)
at System.Net.Http.HttpClientHandler.GetRequestStreamCallback(IAsyncResult ar)
InnerException: