<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Invalid Context из CreateDataSource]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Invalid Context из CreateDataSource форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Thu, 16 Apr 2026 10:36:04 +0300</pubDate>
		<item>
			<title>Invalid Context из CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message16575/topic1849/">Invalid Context из CreateDataSource</a></b> <i>при работе с Lua из С++</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			не, дело не в этом было. <br />как оказалось я передавал lua_State не из main <br />
			<i>05.06.2016 18:08:58, Павел Bosco.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message16575/topic1849/</link>
			<guid>http://forum.quik.ru/messages/forum10/message16575/topic1849/</guid>
			<pubDate>Sun, 05 Jun 2016 18:08:58 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Invalid Context из CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message16566/topic1849/">Invalid Context из CreateDataSource</a></b> <i>при работе с Lua из С++</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Наверное вместо &quot;Si-6.16&quot; надо передавать &quot;SiM6&quot;. <br />
			<i>04.06.2016 11:37:21, Constantin.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message16566/topic1849/</link>
			<guid>http://forum.quik.ru/messages/forum10/message16566/topic1849/</guid>
			<pubDate>Sat, 04 Jun 2016 11:37:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Invalid Context из CreateDataSource</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message16564/topic1849/">Invalid Context из CreateDataSource</a></b> <i>при работе с Lua из С++</i> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Пытаюсь работать с Lua из dll<br />вот такой код, см ниже. Функция testDS вызывается из lua, без параметров<br />и по идее должна возвращать датасорс, по аналогии с CreateDataSource<br /><br />функция message - это аналог Lua message, выдаёт окошко с сообщением в квике<br />сообщения по ходу программы такие<br />before create datasource<br />pcall succeeded<br />after create datasource<br />2<br />ds is nil<br />invalid context<br />nil<br /><br />вопрос: что означает сообщение об ошибке &quot;invalid context&quot; при вызове createdatasource? <br />что не так?<br />спасибо!<br /><br />
====code====
<pre>int testS(lua_State *L, LPCSTR cl, LPCSTR sec, double interval){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lua_getglobal(L, "CreateDataSource");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lua_pushstring(L, cl);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lua_pushstring(L, sec);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lua_pushnumber(L, interval);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, "before create datasource");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (lua_pcall(L, 3, 2, 0)!=0){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, "pcall unsucceeded");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, lua_tostring(L, -2));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} else {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, "pcall succeeded");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, "after create datasource");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;char x&#91;10&#93;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;itoa(lua_gettop(L), x, 10);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, x);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (lua_isnil(L, -2)){
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, "ds is nil");
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, lua_tostring(L, -1));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lua_remove(L, -1);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// -2 = массив
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, lua_typename(L, lua_type(L, -1)));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;message(L, lua_tostring(L, -1));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 1;
}

int testDS(lua_State *L){
&nbsp;&nbsp;&nbsp;testS(L, "SPBFUT", "Si-6.16", 1);
&nbsp;&nbsp;&nbsp;return 1;
}
</pre>
============= <br />
			<i>03.06.2016 15:03:21, Павел Bosco.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message16564/topic1849/</link>
			<guid>http://forum.quik.ru/messages/forum10/message16564/topic1849/</guid>
			<pubDate>Fri, 03 Jun 2016 15:03:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
