В теме 4 сообщения

Vitaliy_Piterskiy
Освоившийся

кто может помочь с лаунчером, делал не я брал с инета, вообщем когда я его запускаю нажимаю играть а он даже не закачивает сборку, и закрывается и все что делать я не могу понять, я просто в этом не совсем разбираюсь, кто разбирается помогите пж

Спойлер

using Microsoft.Win32;
using System;
using System.Diagnostics;
using System.IO;
using System.IO.Compression;
using System.Net;
using System.Security.Principal;
using System.Windows;
using System.Windows.Input;
using SampQueryApi;
using SettingsLauncher;

namespace test_project
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        //загрузка новостей
        int load_games = Settings.games;
        string IP_CONNECT = (string)Settings.ip;
        string URL_GAMES = (string)Settings.url;
        string IP_QUERY = (string)Settings.api;

        public MainWindow()
        {

            try
            {
                //Настройка API SAMP
                SampQuery api = new SampQuery(IP_QUERY, 7777); //PORT СМЕНИТЬ 
                SampServerInfoData data = api.GetServerInfo();

                //компоненты
                InitializeComponent();

                //настройки счетчика API
                player.Content = data.Players + " / " + data.MaxPlayers;
                progress2.Value = data.Players;

                //Настройка новостей
                
                    //текст
                info.Content = NewsSettings.text;
                info.FontSize = 10; //шрифт ( 10 - нормально видно )

                     //заголовок
                text_up.Content = NewsSettings.up;
                text_up.FontSize = 16;

            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
            }

        }
       
        //загрузка + запуск ( проверка )
        void FindeGamesFile()
        {
            try
            {
                var exePath = AppDomain.CurrentDomain.BaseDirectory;
                var path_config = System.IO.Path.Combine(exePath, "fh221.paks");
                if(File.Exists(path_config))
                {
                    load_games = 1;
                    info_text.Content = "Проверка файлов завершена. Игра готова к запуску!";
                }

            }
            catch (Exception ex)
            {
                 MessageBox.Show(ex.Message);
            }
        }

        void GamesStartLoading()
        {
            FindeGamesFile();
            var exePath = AppDomain.CurrentDomain.BaseDirectory;
            var bin = System.IO.Path.Combine(exePath, "bin/GtaSA/");
            if (load_games == 1)
            {
                try
                {
                    WebClient webclient = new WebClient();
                    var path = System.IO.Path.Combine(exePath, "game_blaze.zip");
                    Uri uri = new Uri("https://vk.com/update_archive.zip");
                    Stopwatch sw = new Stopwatch();
                    webclient.DownloadFileAsync(uri, path);
                    webclient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged);
                    webclient.DownloadFileCompleted += new System.ComponentModel.AsyncCompletedEventHandler(webClient_DownloadFileCompleted);
                    void webClient_DownloadProgressChanged(object sender, System.Net.DownloadProgressChangedEventArgs e)
                    {
                        progress1.Value = e.ProgressPercentage;
                        text_2.Content = "" + (Convert.ToDouble(e.BytesReceived) / 1024 / 1024).ToString("0,00") + " МБ" + "  /  " + (Convert.ToDouble(e.TotalBytesToReceive) / 1024 / 1024).ToString("0.00") + " МБ";
                    }
                    void webClient_DownloadFileCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
                    {
                        string sourceArchiveFileName = "game_blaze.zip";
                        progress1.Value = 0;
                        ZipFile.ExtractToDirectory(sourceArchiveFileName, bin);
                        System.IO.File.Delete(path);
                        info_text.Content = "Загрузка игры завершена.";
                        load_games = 1;
                        var path_game = System.IO.Path.Combine(exePath, "fh221.paks");
                        File.Create(path_game);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }

            }
            else Start();

        }
        void Start()
        {
            try
            {
                if (text1.Text == "Nick_Name")
                {
                    MessageBox.Show("Вы не указали NickName", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);

                }
                else if (text1.Text == "")
                {
                    MessageBox.Show("Вы не указали NickName", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
                }
                else if (text1.Text == "Nick")
                {
                    MessageBox.Show("Вы не указали NickName", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);

                }
                else if(text1.Text == "Введите ваш ник")
                {
                    MessageBox.Show("Вы не указали NickName", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
                }
                var exePath = AppDomain.CurrentDomain.BaseDirectory;


                var samp = System.IO.Path.Combine(exePath, "bin/GtaSA/samp.exe");
                var gta_sa = System.IO.Path.Combine(exePath, "bin/GtaSA/gta_sa.exe");

                //сборки запускать нельзя, только если она ваша и есть samp.exe
                if (System.IO.File.Exists(samp) || System.IO.File.Exists(gta_sa))
                {
                    string nick = text1.Text;
                    string sid = WindowsIdentity.GetCurrent().User.Value;
                    string nick_user = sid + "\\Software\\SAMP";
                    RegistryKey savekey = Registry.Users.CreateSubKey(nick_user);
                    savekey.SetValue("PlayerName", nick);
                    savekey.Close();
                    Process.Start(samp, IP_CONNECT);
                    //System.Diagnostics.Process.Start(samp, "-c -n " + nick + " -h 127.0.0.1 -p 7777");


                }
                else MessageBox.Show("У вас не найдены системные файлы для старта игры.\n" + "Скачать вы можете их на форуме");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        //Двигательные функции Form + Закрывание формы и сворачивание 

        //закрыть
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            this.Close();
        }
        //сворачивание
        private void Button_2(object sender, RoutedEventArgs e)
        {
            this.WindowState = WindowState.Minimized;
        }
        //перетягивание
        private void Window_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            this.DragMove();
        }

        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            //магазин
            System.Diagnostics.Process.Start("http://vk.com/");
        }

        private void Button_Click_2(object sender, RoutedEventArgs e)
        {
            //сайт
            System.Diagnostics.Process.Start("http://vk.com/");
        }

        private void Button_Click_3(object sender, RoutedEventArgs e)
        {
            //форум
            System.Diagnostics.Process.Start("http://vk.com/");
        }
        //запуск и проверка
        private void Button_Click_4(object sender, RoutedEventArgs e)
        {
            GamesStartLoading();
        }
    }
}
 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
isLobree
Новичок

Привет в ссылке на сборку , должен быть DropBox и оканчиваться на 0 (или 1, точно не помню)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vitaliy_Piterskiy
Освоившийся

@isLobree а как добавить это я не разбираюсь

да и еще такая проблема когда я открываю в visual studio то пишет вот что

скрин

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vitaliy_Piterskiy
Освоившийся
В 13.10.2023 в 07:12, Vitaliy_Piterskiy сказал:

@isLobree а как это сделать я не разбираюсь

 

 

с этим разобрался другая проблема загрузка начинается и прерывается

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • KeinKotov
      От KeinKotov
      Всём ещё раз здравствуйте. 
      Вообщем начал я разработку своего проекта и понял... Я ничерта не понял. Я смотрел видео. Читал книги. Решил попробовать сделать тдм сервер в точности по видео и у меня не получилось. В видео он сохранил несколько позиций спавна в массив и потом через функцию по очерёдности i++ доставал эти позиции, то есть каждый игрок должен был появляться на следующей позиции. Я сделал всё в точности как у него, прям всё. У меня сравнится на нулевых координатах с id3 скином, хотя в массиве совершенно другие скины. Откуда он берёт точку спавна и скин, почему не достаёт значения из массива я так понять и не смог, хотя сделал всё в точности как у него. По конец даже комментарии и координаты скопировал, ну ничего не помогает. Видео 8ми летней давности, может оно уже не актуально для нынешнего времени, может сейчас новая версия pawn и там совершенно по другому я так и не разобрался. Пожалуйста, подскажите мне что делать. Я прочитал несколько книг про Pawno. Сейчас я хочу сесть и делать код по каким то примерам с объяснениями, но в просторах интернета нету новых уроков по Pawno. Старые я не решаюсь смотреть т.к. думаю что это всё же проблема в том что раньше был другой синтаксис. Помогите пожалуйста
    • Smileee
      От Smileee
      Куплю мобильный проект, что бы был интересный и не слитый, что то интересное. Пишите в личные
    • KeinKotov
      От KeinKotov
      Всем привет. Меня зовут Kein. Я первый день на вашем форуме.
      Хочу поделиться с вами своей историей о моей пути в скриптинге сампа и создании своего сервера, историей которая только началась.
      Мне 22 года, работаю на стройке, есть жена и полугодовалая дочь. В скриптинг я пошёл потому что всегда любил самп, играл в него лет с 12, но на данный момент у меня большие хотелки к серверам сампа и нечего подходящего я найти не могу. Идей для реализации механик у меня полно, а слушать меня никто не хочет. Вот я и принял решение изучить скриптинг и создать свой сервер. Я уже понял насколько это тяжело, но я взялся за это основательно. Сервер с оригинальным модом будет открыт. Только неизвестно когда, учить мне ещё много.
      Вот собственно поэтому я и решил вести блог тут, я хочу делиться своими успехами, рассказывать о том что нашёл на просторах интернета или придумал сам, да и новичкам начинать будет проще видя мой путь. На данный момент с pawn я знаком только по лп "Основы pawn" на канале "PawnStart" И читаю книгу "PawnBook v5".Подскажите пожалуйста, если я не правильно начал изучать pawn, то что следует сделать первым делом?
      Я обещаю что я открою свой сервер, так что следите за дальнейшими постами. Всех обнял
    • maximBO$$
      От maximBO$$
      не могу скачать файлы сервера, ошибки на скрине
      функциями 0.3дл на сервере пользоваться не могу
       
      фото ошибок
       

    • Козельский Ярослав
      От Козельский Ярослав
      Люди, скажите пожалуйста, где мне взять основу для лаунчера который можно будет выставить в магазин приложений после изменения дизайна и ip серверов?