У меня постоянно выдает выдает ошибку: Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object. at SnakeManager.Program.Main() in C:\Users\zmeyskiy\source\repos\SnakeManager\SnakeManager\Program.cs:line 25 at SnakeManager.Program.<Main>() Код Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object. at SnakeManager.Program.Main() in C:\Users\zmeyskiy\source\repos\SnakeManager\SnakeManager\Program.cs:line 25 at SnakeManager.Program.<Main>() Мой код: SocketGuild guild = Discord.client.GetGuild(id); foreach (SocketGuildUser user in guild.Users) { if (!Directory.Exists("C:\\SnakeManager\\users\\" + user.Id)) { Directory.CreateDirectory("C:\\SnakeManager\\users\\" + user.Id); } } CSHARP SocketGuild guild = Discord.client.GetGuild(id); foreach (SocketGuildUser user in guild.Users) { if (!Directory.Exists("C:\\SnakeManager\\users\\" + user.Id)) { Directory.CreateDirectory("C:\\SnakeManager\\users\\" + user.Id); } } Также я пробовал уже много вариантов, но каждый из них выдает одну и ту же ошибку. Надеюсь на вашу помощь. (Ошибка в строке с перечислением, тоесть foreach)
Ну и что сложного? Смотри какие есть данные в user по мимо Id. Закомментируй часть кода if (!Directory.Exists("C:\\SnakeManager\\users\\" + user.Id)) { Directory.CreateDirectory("C:\\SnakeManager\\users\\" + user.Id); } CSHARP if (!Directory.Exists("C:\\SnakeManager\\users\\" + user.Id)) { Directory.CreateDirectory("C:\\SnakeManager\\users\\" + user.Id); } И посмотри какие вообще есть данные от user. Try-Catch добавь и смотри какие будут ошибки тоже
muhtarstudio, выкладывай весь код, то что ты скинул это ерунда. Ты можешь не правильно передавать id от туда и не находит сервер и прочее.
r3xq1, я засунул в трай катч, и ошибка там одна. после перевода я получил: "В экземпляре объекта не задана ссылка на объект.", но какой нахуй обьект ? как мне это решать
Банальный ответ от GPT, смотри и исправляй. using Discord; using Discord.WebSocket; using System; using System.IO; using System.Threading.Tasks; class Program { private static DiscordSocketClient _client; static async Task Main(string[] args) { _client = new DiscordSocketClient(); // Здесь добавьте событие Ready, чтобы бот подключился к серверу _client.Ready += OnReady; // Здесь добавьте ваш токен бота string token = "YOUR_BOT_TOKEN"; await _client.LoginAsync(TokenType.Bot, token); await _client.StartAsync(); // Ждем, пока бот не завершит выполнение await Task.Delay(-1); } private static async Task OnReady() { ulong guildId = YOUR_GUILD_ID; // Замените YOUR_GUILD_ID на ID сервера var guild = _client.GetGuild(guildId); foreach (var user in guild.Users) { string userFolderPath = $"C:\\SnakeManager\\users\\{user.Id}"; if (!Directory.Exists(userFolderPath)) { Directory.CreateDirectory(userFolderPath); Console.WriteLine($"Создана папка для пользователя {user.Username}: {userFolderPath}"); } } } } CSHARP using Discord; using Discord.WebSocket; using System; using System.IO; using System.Threading.Tasks; class Program { private static DiscordSocketClient _client; static async Task Main(string[] args) { _client = new DiscordSocketClient(); // Здесь добавьте событие Ready, чтобы бот подключился к серверу _client.Ready += OnReady; // Здесь добавьте ваш токен бота string token = "YOUR_BOT_TOKEN"; await _client.LoginAsync(TokenType.Bot, token); await _client.StartAsync(); // Ждем, пока бот не завершит выполнение await Task.Delay(-1); } private static async Task OnReady() { ulong guildId = YOUR_GUILD_ID; // Замените YOUR_GUILD_ID на ID сервера var guild = _client.GetGuild(guildId); foreach (var user in guild.Users) { string userFolderPath = $"C:\\SnakeManager\\users\\{user.Id}"; if (!Directory.Exists(userFolderPath)) { Directory.CreateDirectory(userFolderPath); Console.WriteLine($"Создана папка для пользователя {user.Username}: {userFolderPath}"); } } } }
r3xq1, using Discord.WebSocket; namespace SnakeManager { class Program { public static async Task Main() { if (!Directory.Exists("C:\\SnakeManager")) { Directory.CreateDirectory("C:\\SnakeManager"); } if (!Directory.Exists("C:\\SnakeManager\\users")) { Directory.CreateDirectory("C:\\SnakeManager\\users"); } await Discord.initialize("токен"); await Discord.enable(); try { SocketGuild guild = Discord.client.GetGuild(айди); foreach (SocketGuildUser? user in guild.Users) { if (!Directory.Exists("C:\\SnakeManager\\users\\" + user.Id)) { Directory.CreateDirectory("C:\\SnakeManager\\users\\" + user.Id); } } } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadKey(); } } } CSHARP using Discord.WebSocket; namespace SnakeManager { class Program { public static async Task Main() { if (!Directory.Exists("C:\\SnakeManager")) { Directory.CreateDirectory("C:\\SnakeManager"); } if (!Directory.Exists("C:\\SnakeManager\\users")) { Directory.CreateDirectory("C:\\SnakeManager\\users"); } await Discord.initialize("токен"); await Discord.enable(); try { SocketGuild guild = Discord.client.GetGuild(айди); foreach (SocketGuildUser? user in guild.Users) { if (!Directory.Exists("C:\\SnakeManager\\users\\" + user.Id)) { Directory.CreateDirectory("C:\\SnakeManager\\users\\" + user.Id); } } } catch (Exception e) { Console.WriteLine(e.Message); } Console.ReadKey(); } } } using Discord.WebSocket; using Discord; namespace SnakeManager { class Discord { public static DiscordSocketClient client; public static SocketTextChannel channel; public static async Task initialize(string token) { client = new DiscordSocketClient(); await client.LoginAsync(TokenType.Bot, token); } public static async Task enable() { await client.StartAsync(); } public static async Task disable() { await client.StopAsync(); await client.DisposeAsync(); } public static async Task sendMessage(string id, string message) { channel = (SocketTextChannel) client.GetChannel(ulong.Parse(id)); await channel.SendMessageAsync(message); } public static async Task sendFile(string id, string path) { channel = (SocketTextChannel) client.GetChannel(ulong.Parse(id)); await channel.SendFileAsync(path); } } } CSHARP using Discord.WebSocket; using Discord; namespace SnakeManager { class Discord { public static DiscordSocketClient client; public static SocketTextChannel channel; public static async Task initialize(string token) { client = new DiscordSocketClient(); await client.LoginAsync(TokenType.Bot, token); } public static async Task enable() { await client.StartAsync(); } public static async Task disable() { await client.StopAsync(); await client.DisposeAsync(); } public static async Task sendMessage(string id, string message) { channel = (SocketTextChannel) client.GetChannel(ulong.Parse(id)); await channel.SendMessageAsync(message); } public static async Task sendFile(string id, string path) { channel = (SocketTextChannel) client.GetChannel(ulong.Parse(id)); await channel.SendFileAsync(path); } } }
r3xq1, также Id сервера у меня правильный, я его копировал с дискорда. также я тестил другие сервера, и на них тоже самое