<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Проблемы с сервером на луашке]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Проблемы с сервером на луашке форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Mon, 27 Apr 2026 11:17:40 +0300</pubDate>
		<item>
			<title>Проблемы с сервером на луашке </title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message64830/topic7549/">Проблемы с сервером на луашке </a></b> <i>После обновления сокета и некоторых библиотек при подключении к серверу квик плюется этой ошибкой ACCESS VIOLATION at address 00000001800163A0 на пред версии сокета все работает</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			stopped = false -- Остановка файла<br />socket = require(&quot;socket&quot;) -- Указатель для работы с sockets<br />json = require( &quot;json&quot; ) -- Указатель для работы с json<br />IPAddr = &quot;127.0.0.1&quot; --IP Адрес<br />IPPort = 3585		 --IP Port	 <br />client = nil<br />-- Функция вызывается перед вызовом main<br />function OnInit(path)<br /> &nbsp;-- create a TCP socket and bind it to the local host, at port IPPort<br /> &nbsp;server = assert(socket.bind(&quot;*&quot;, IPPort))<br /> &nbsp;message(string.format(&quot;Server started. IP: %s; Port: %d\n&quot;, IPAddr, IPPort), 1)<br />end<br /><br />-- Функция вызывается перед остановкой скрипта<br />local stopped = false -- для норм остановки скрипта<br />function OnStop()<br />	stopped = true<br />	return 2000<br />end <br />-- Функция вызывается перед закрытием квика<br />function OnClose()<br /> &nbsp;if client then client:close() end<br /> &nbsp;stopped = true -- закрыли квик, надо остановить исполнение кода<br />end<br /> <br />-- Основная функция выполнения скрипта<br />function main()<br /> &nbsp;client = server:accept()--ждем коннекта<br /> &nbsp;sleep(1)<br /> &nbsp;while not stopped do<br /> &nbsp; &nbsp;line, err = client:receive()--принятие данных из питона<br /> &nbsp; &nbsp;if line ~= nil then <br /> &nbsp; &nbsp;local result = assert(load(line.. &quot;&quot;))()--воспроизведение команд из питона<br />	end<br /> &nbsp; &nbsp;--if result ~= nil then message(&#39;&#39;..result) end<br /> &nbsp; &nbsp;if result == nil &nbsp;then result = &quot;{}&quot; end<br /> &nbsp; &nbsp;if type(result) == &quot;table&quot; &nbsp;then result = json.encode(result) end<br /> &nbsp; &nbsp;if type(result) == &quot;boolean&quot; &nbsp;then result = (result and 1 or 0) end<br /> &nbsp; &nbsp;if not err then client:send(&#39;&#39;..result..&quot;\n&quot;) end -- отдача данных из питона (пока не знаю че делать)<br />end<br />end <br />
			<i>08.08.2022 23:03:47, abdula amin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message64830/topic7549/</link>
			<guid>http://forum.quik.ru/messages/forum10/message64830/topic7549/</guid>
			<pubDate>Mon, 08 Aug 2022 23:03:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
