1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Результаты поиска

  1. Fituchini
    предыдущая версия Немного наловчившись выкладываю тут "основание" для редактора. "Съев собаку" на c# & mysql код написан для дальнейшего развития программы. Уже написаны классы для работы с программой. Знай только выводи. Учёл все советы которые писали в предыдущей версии. Доделывать буду по мере свободного времени. Сейчас вплотную занялся этим редактором под Android. Скомпилированную версию приложил файл host - содерижт ip файл mysql.ini прост База_Данных:pw Логин:tester Пароль:0000 Порт:3306 Программа делалась для такой базы [IMG] [IMG] Ну и ес-сно создаём пользователя и даём фул привилегии с любым хостом [IMG] в mysql в конфигурационном файле ищем строку bind adress и прописываем нули [IMG] Скомпилированная версия и конечно же исходники прикреплены p.s. Программа не есть ресурсы базы. Создаёт коннект читает или записывает и разрывает соединение. для теста коннекта кнопка TestConnect
    Автор темы: Fituchini, 21 июл 2019, ответов - 21, в разделе: PW Разработки
  2. Fituchini
  3. Fituchini
    Всему форуму огромный привет! Исходя последних событий про ПВ, а именно то что в неё играют всё меньше и меньше народу, нужно либо чем то другим заняться либо запилить эмулятор. Но Вашему вниманию предлагаю уникальный в своём роде ассет для Юнити 3D. uMMORPG - это мощный инструмент позволит вам создать собственную ПВ. Конечно не за 5 минут но за 5 лет точно:D шучу. При ПОТНОЙ работе за пол года можно неплохо реализовать полноценную карту с квестами, классы, эффекты мобы и петы. Две ссылки. Одна исходник (*.unitypackage), вторая ссылка это сбилдиный проект (только для локалхоста). ИСХОДИНК Сбилдиная версия Так же прикрепляю видео демонстрацию. [media] Все данные сохраняются в локальной папке проекта %localRow% где запускается сервер. Если погасить сервер и снова запустить все данные будут на месте. А именно позиция, уровень эквип ну в общем всё. Наеюсь тут расшевелится раздел unity.
    Автор темы: Fituchini, 11 окт 2018, ответов - 13, в разделе: Unity
  4. Fituchini
  5. Fituchini
  6. Fituchini
    Доброго времени суток господа. Поделитесь кому не жалко регистрацией для расширенной MySQLi <?php $config = array ( 'host' => 'localhost', // Хост 'user' => 'root', // Имя пользователя 'pass' => 'password', // Пароль от БД 'name' => 'pw', // Название БД 'gold' => '10000', // Количество голда ); if (isset($_POST['login'])) { $link = mysql_connect($config['host'], $config['user'], $config['pass']) or die ("Нет соединения с MySQL"); mysql_select_db($config['name'], $link) or die ("Базы ".$DBName." не существует o_O"); $Login = $_POST['login']; $Pass = $_POST['passwd']; $Repass = $_POST['repasswd']; $Email = $_POST['email']; $Login = StrToLower(Trim($Login)); $Pass = StrToLower(Trim($Pass)); $Repass = StrToLower(Trim($Repass)); $Email = Trim($Email); if (empty($Login) || empty($Pass) || empty($Repass) || empty($Email)) { echo "Все поля заполнены не верно!"; } elseif (ereg("[^0-9a-zA-Z_-]", $Login, $Txt)) { echo "Не верный формат логина"; } elseif (ereg("[^0-9a-zA-Z_-]", $Pass, $Txt)) { echo "Не верный формат пароля"; } elseif (ereg("[^0-9a-zA-Z_-]", $Repass, $Txt)) { echo "Не верный формат повтора пароля"; } elseif (StrPos('\'', $Email)) { echo "Не верный формат E-Mail"; } elseif ((StrLen($Login) < 4) or (StrLen($Login) > 10)) { echo "Логин должен содержать не менее 4 и не более 10 смволов."; } else { $Result = MySQL_Query("SELECT name FROM users WHERE name='$Login'") or ("Can't execute query."); if (MySQL_Num_Rows($Result)) { echo "<font color='red'>Логин</font> <b>".$Login."</b> <font color='red'>уже есть в базе -_-</font>"; } elseif ((StrLen($Pass) < 4) or (StrLen($Pass) > 10)) { echo "Пароль должен содержать не менее 4 и не более 10 смволов."; } elseif ((StrLen($Repass) < 4) or (StrLen($Repass) > 10)) { echo "Повтор пароля должен содержать не менее 4 и не более 10 смволов"; } elseif ((StrLen($Email) < 4) or (StrLen($Email) > 25)) { echo "E-Mail должен содержать не менее 4 и не более 25 смволов"; } else { $Result = MySQL_Query("SELECT name FROM users WHERE name='$Email'") or ("Can't execute query."); if (MySQL_Num_Rows($Result)) { echo "<font color='red'>E-Mail</font> <b>".$Email."</b> <font color='red'>уже есть в базе -_-</font>"; } elseif ($Pass != $Repass) { echo "Пароли не совпадают"; } else { //$Salt = $Login.$Pass; //$Salt = md5($Salt); //$Salt = "0x".$Salt; $Salt = base64_encode(md5($Login.$Pass, true)); MySQL_Query("call adduser('$Login', '$Salt', '0', '0', '0', '0', '$Email', '0', '0', '0', '0', '0', '0', '0', '', '', '$Salt')") or die ("Аккаунт не зарегистрирован"); $mysqlresult=MySQL_Query("select * from `users` WHERE `name`='$Login'"); $User_ID=MySQL_result($mysqlresult,0,'ID'); MySQL_Query("call usecash({$User_ID},1,0,1,0,".$config['gold'].",1,@Error)") or die ("Голд не выдан"); echo "<font color='green'>Аккаунт <b>".$Login."</b> Успешно зарегистрирован :) Ваш ID: ".$User_ID." <br/> ".$config['gold']." голда начислено. Голд придет в течении 5-10 минут"; } } } Ста } echo $Data; ?> Старенькая это чехня.
    Автор темы: Fituchini, 12 сен 2018, ответов - 2, в разделе: Ищу
  7. Fituchini
    Добрый день граждане. Помогите с решением проблемы. Поставил себе IPS форум. Пользуюсь такой, а потом появилась потребность скрывать под хайд ссылочки. Да вот только не просто схайдить, а дать условие на отображение. Скрипты в шаре не дают таких возможностей. В самом популярном присутствует только такое. [_hide] тут текст [/hide] А нужно чтобы было такого плана [_hide условие]text[/hide] Условие одно, пишем ручками [_hide p=int] где p= < Это константа чтобы сработало условие, int количество постов. Заглянул в скрипт который популярный. И чего то приуныл. При попытке сделать нечто похожее получил какашку. Вот оригинал настроек [ATTACH] вот после моего криворукого вмешательства [ATTACH] Естественно нифига не работает. Помогите с настройкой. Код прячется тут if ( in_array("hide", $types) ) { $content = preg_replace('/\[hide\](.+?)\[\/hide\]/is', \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global' )->bim_hide_box("$1"), $content); } if ( self::bypassHiddenContent($this) ) { return $content; } # Hide content $msg = \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global' )->bim_hide_msg(self::$forceHide, $this->getUnHideAction()); preg_match_all('#<a[^>]+href=([\'"])(.+?)\1[^>]*>(.+?)<\/a>#', $content, $match); if ( in_array("hide", $types) ) { $content = preg_replace('/<!--startHideContent-->(.+?)<!--endHideContent-->/is', $msg, $content); } if ( in_array("HIDE-test", $types) ) { $content2 = preg_replace('/<!--startHideContent-->(.+?)<!--endHideContent-->/is', $msg, $content); } for ( $u = 0 ; $u < count( $match[0] ) ; $u++ ) { if ( in_array("images", $types) && mb_stripos($match[3][$u], "<img ") !== false ) { $content = str_replace( $match[0][$u], $msg, $content); } if ( in_array("links", $types) ) { if ( mb_strpos($match[0][$u], "external nofollow") !== FALSE ) { $content = str_replace( $match[0][$u], $msg, $content); } } if ( in_array("attachment", $types) && mb_stripos($match[2][$u], "attachment.php") !== false ) { $content = str_replace( $match[0][$u], $msg, $content); } } if ( in_array("images", $types) ) { $content = preg_replace('#<img((?!data-emoticon).)*src=([\'"])(.+?)\1[^>]*>#', $msg, $content); } if ( in_array("code", $types) ) { $content = preg_replace('/<pre class="ipsCode(.*?)">(.+?)<\/pre>/is', $msg, $content); } Прикрепляю полный скрипт Помогите пожалуйста в дополнении скрипта. Известные данные // загрузить текущего пользователя $memberTest = \IPS\Member::loggedIn(); // Имя echo $memberTest->name; //Репутация echo $memberTest->pp_reputation_points; //Посты echo $memberTest->member_post;
    Автор темы: Fituchini, 20 авг 2018, ответов - 1, в разделе: PHP
  8. Fituchini
    Доброго времени суток граждане. Подскажите пожалуйста с pck архивом. два ключа public static int KEY_1 = -1466731422; public static int KEY_2 = -240896429; упаковка идёт следующим образом public static void pack(string dir) { string pck = dir.Replace(".arch\\", "").Replace(".arch", "") + "x"; string[] files = Directory.GetFiles(dir, "*", SearchOption.AllDirectories); MessageBox.Show("В каталоге найдено файлов: " + files.Length " , "info", MessageBoxButtons.OK, MessageBoxIcon.Information); for (int a = 0; a < files.Length; ++a) { files[a] = files[a].Replace(dir, "").Replace("/", "\\").Remove(0, 1); } long fileTableOffset = 0; List<fileTableEntry> fileTable = new List<fileTableEntry>(); BinaryWriter bw = new BinaryWriter(new FileStream(pck, FileMode.Create, FileAccess.ReadWrite)); bw.Write(FSIG_1); bw.Write(0); bw.Write(FSIG_2); for (int a = 0; a < files.Length; ++a) { fileTableEntry fte = new fileTableEntry(); MemoryStream fileMs = new MemoryStream(File.ReadAllBytes(dir + "\\" + files[a])); fte.filePath = files[a]; fte.fileDataOffset = (uint)bw.BaseStream.Position; fte.fileDataDecompressedSize = (int)fileMs.Length; MemoryStream ms = new MemoryStream(); CompressStream(fileMs, ms, (int)fileMs.Length); byte[] buffer = ms.ToArray(); fte.fileDataCompressedSize = buffer.Length; bw.Write(buffer); fileTable.Add(fte); string tmp_Y = string.Format(" \rЗаписано файлов: {0}/{1}\r\n", a, files.Length); File.AppendAllText(@"pack.log", DateTime.Now.ToLongDateString()+ " в " + DateTime.Now.ToLongTimeString() + tmp_Y); } fileTableOffset = bw.BaseStream.Position; for (int a = 0; a < fileTable.Count; ++a) { byte[] buffer = writeTableEntry(fileTable[a]); bw.Write(buffer.Length ^ KEY_1); bw.Write(buffer.Length ^ KEY_2); bw.Write(buffer); string tmp_Z = string.Format(" \rЗаписано таблиц файлов: {0}/{1}\r\n", a, fileTable.Count); File.AppendAllText(@"pack.log", DateTime.Now.ToLongDateString() + " в " + DateTime.Now.ToLongTimeString() + tmp_Z); } bw.Write(ASIG_1); bw.Write((short)2); bw.Write((short)2); bw.Write((uint)(fileTableOffset ^ KEY_1)); bw.Write(0); bw.Write(Encoding.Default.GetBytes("Angelica File Package, Perfect World.")); byte[] nuller = new byte[215]; bw.Write(nuller); bw.Write(ASIG_2); bw.Write(fileTable.Count); bw.Write((short)2); bw.Write((short)2); bw.BaseStream.Seek(4, SeekOrigin.Begin); bw.Write((uint)bw.BaseStream.Length); bw.Close(); Split(pck); } Почему при архивировании фалов весом ~2.5Гб говорит о нехватке memory? неужели максимально pck архив 2147483392 байта(как написано в гайде)? ведь максимальное значение 2147483647 - ну допустим ошибка как то можно увеличить лимит? Допустим unsigned _int32 или int64. или ограничено типизацией?
    Автор темы: Fituchini, 17 июл 2018, ответов - 11, в разделе: C/C++
  9. Fituchini
  10. Fituchini
  11. Fituchini
  12. Fituchini
  13. Fituchini
  14. Fituchini
    Доброго времени господа постояльцы форума. Помогите с решение проблемы. 10 компов. На каждом запущена программа. Она связывается с сервером на сокетах. Сервер соединение принимает. Говорит мол, хорошо. Так вооот. Создаю новую форму, так сказать админ панель. Как мне отловить тех кто уже запустил программу? А так же передать методы которые там написаны. Например сделать скриншот Сервер тут SERVER using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net.Sockets; using System.Text; using System.Threading.Tasks; namespace serverTCP { class Program { static void Main(string[] args) { StreamWriter streamWriter; StreamReader streamReader; NetworkStream networkStream; TcpListener tcpListener = new TcpListener(5555); tcpListener.Start(); Console.WriteLine("Сервер запущен."); Console.WriteLine("IP-адрес: локальный сервер"); Console.WriteLine("Порт: 5555"); Console.WriteLine(); Socket serverSocket = tcpListener.AcceptSocket(); DirectoryInfo MyDirectory = new DirectoryInfo(@"D:\test"); try { if (serverSocket.Connected) { Console.WriteLine("Server: Клиент принят."); networkStream = new NetworkStream(serverSocket); streamWriter = new StreamWriter(networkStream); streamReader = new StreamReader(networkStream); string ResultString = ""; using (StreamWriter sw = new StreamWriter(@"D:\test\test.txt")) { foreach (var i in MyDirectory.GetFileSystemInfos()) { ResultString = ResultString + i.FullName + "\r\n"; sw.WriteLine(i.FullName); } sw.WriteLine(); sw.WriteLine(DateTime.Now); ResultString = ResultString + "\r\n" + DateTime.Now; } //Console.WriteLine(ResultString); streamWriter.WriteLine(ResultString); streamWriter.Flush(); Console.WriteLine(streamReader.ReadLine()); } if (serverSocket.Connected) serverSocket.Close(); Console.Read(); } catch (SocketException j) { Console.WriteLine(j); } } } } Тут клиент using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Net.Sockets; using System.Text; using System.Threading; using System.Windows.Forms; using System.Timers; using System; using System.IO; using ScreenHost; namespace Updater { public partial class Form1 : Form { System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer(); int timerCounter = 15; //счётчик для таймера public Form1() { InitializeComponent(); timer.Interval = 1000; //интервал между срабатываниями 1000 миллисекунд timer.Tick += new EventHandler(timer1_Tick); //подписываемся на события Tick timer.Start(); String strVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); this.Text = "Консольная панель v. " + strVersion; //this.Text = "Updater v. " + FormUpdater.my_version; } private void Form1_Load(object sender, EventArgs e) { TcpClient tcpClient; NetworkStream networkStream; StreamReader streamReader; StreamWriter streamWriter; try { tcpClient = new TcpClient("192.168.12.31", 5555); networkStream = tcpClient.GetStream(); streamReader = new StreamReader(networkStream); streamWriter = new StreamWriter(networkStream); streamWriter.WriteLine("Client: ГОТОВ"); streamWriter.Flush(); } catch (SocketException) { MessageBox.Show("Вы не подключены к серверу!\n\r\n\rВозможно сервер выключен\n\rПрограмма будет работать в автономном режиме ", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } private void оПрограммеToolStripMenuItem_Click(object sender, EventArgs e) { AboutBox1 abt = new AboutBox1();//название твоей формы abt.ShowDialog(); } private void button1_Click(object sender, EventArgs e) { if (!File.Exists(@"\\192.168.12.31\upd\list")) { MessageBox.Show("Загрузка невозможна \rПозовите системного Администратора\n\rОшибка в пути", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } using (StreamReader sr = File.OpenText(@"\\192.168.12.31\upd\list")) { String input; while ((input = sr.ReadLine()) != null) { comboBox1.Items.Add(input); } comboBox1.Text = comboBox1.Items[0].ToString(); // MessageBox.Show("Успешно обновлено", "инфо", MessageBoxButtons.OK, MessageBoxIcon.Information); } } private void button2_Click(object sender, EventArgs e) { if (comboBox1.Text.Equals("")) { MessageBox.Show("Ваше поле пустое! \r Вы не обновили 'список исполнителей' \r \r Во избежании ошибок обновите список или выберите исполнителя из списка", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } string errMsg = "Недопустимое имя! \r\n\r Вы НЕ выбрали имя исполнителя \n Во избежании ошибок обновите список или выберите \r исполнителя из списка"; string i = comboBox1.Text.ToString(); switch (i) { case "...": MessageBox.Show(errMsg, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); break; case "**********": MessageBox.Show(errMsg, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } } private void button3_Click(object sender, EventArgs e) { MessageBox.Show(SystemInformation.UserName + "\n\r" + Environment.MachineName); } private void button4_Click(object sender, EventArgs e) { Process pc = new Process(); pc.StartInfo.Verb = "runas"; pc.StartInfo.FileName = "cmd"; pc.StartInfo.Arguments = "/c net user admin6 019925 /add && pause"; pc.Start(); //System.Diagnostics.Process.Start("cmd.exe", "/c systeminfo"); //Thread.Sleep(3000); //System.Diagnostics.Process.Start("cmd.exe", "/c date"); } private void timer1_Tick(object sender, EventArgs e) { //В леэбл выводим значение timerCounter уменьшеное на 1 this.label2.Text = (--timerCounter).ToString(); if (label2.Text == "0") { timer.Stop(); MessageBox.Show("Время вышло"); } } } }
    Автор темы: Fituchini, 30 авг 2017, ответов - 4, в разделе: .NET
  15. Fituchini
    Сдам в аренду сервер [ATTACH] 6 ядер. ОЗУ 12гб Место 200гб Статический Ip. Расположение в Ижевске. У провайдера кто предоставляет интернет. Фото сервера могу скинуть. Таких 2 машины. По 1500р. За каждую. Траффик не ограничен. 100мб. Либо 1 машину 24гб ОЗУ, 200-400гб 8-12 ядер От 2000 до 2500р. Предустановленная версия ос на ваш выбор. Ubuntu 12.04.5 , win 7 x64/86 Win server 2012 r2 desktop версия, консольной нет. Так же возможны и другие дистрибутивы, например freeBSD, Debian. Полный ssh доступ к машине. Или RDP. Для вашего "пруфа" дам неделю аренды безвозмездно. Так сказать обкатать, проверить пощупать. Всё подробности как что и зачем пишите только не в личку, захожу не каждый день. Viber +79512003131 https://vk.com/anomal6 P. S. Люди которые были замечены в мошенничестве, или которые как сказал бы Путин. В. В "потерявшие доверие", прошу не пишите, не тратьте время. Доверие это дело такое
    Автор темы: Fituchini, 23 апр 2017, ответов - 5, в разделе: Услуги
  16. Fituchini
  17. Fituchini
  18. Fituchini
  19. Fituchini
  20. Fituchini