<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-14217</id>
	<title>Nabble - TnFox</title>
	<updated>2008-10-13T04:04:26Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/TnFox-f14217.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFox-f14217.html" />
	<subtitle type="html">&lt;a href=&quot;http://www.nedprod.com/TnFOX/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;TnFox&lt;/a&gt;&amp;nbsp;is a modern secure, robust, multithreaded, exception aware, internationalisable, portable GUI toolkit library designed for mission-critical work in C++ and Python forked from the FOX library.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-19961688</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-10-13T04:04:26Z</published>
	<updated>2008-10-13T04:04:26Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 6 Oct 2008 at 17:37, Ck wrote:
&lt;br&gt;&lt;br&gt;My apologies for the very late reply - my entire email processing 
&lt;br&gt;system died for most of last week and it took the past weekend to 
&lt;br&gt;extract my email.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; One more question.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Can't understand how to get ask from thread via IPC..
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; For example:
&lt;br&gt;&amp;gt; thread_1 requests from thread_2 some actions and wants to get the
&lt;br&gt;&amp;gt; result of this actions.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; void thread_1::req()
&lt;br&gt;&amp;gt; {
&lt;br&gt;&amp;gt; &amp;nbsp; Msg msg(bla-bla);
&lt;br&gt;&amp;gt; &amp;nbsp; sendMsg(msg);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; // here i want to use result from thread_2.
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; ..
&lt;br&gt;&amp;gt; thread_2::msgReceived(FXIPCMsg *rawmsg)
&lt;br&gt;&amp;gt; {
&lt;br&gt;&amp;gt; &amp;nbsp; Msg *i = (Msg*)rawmsg;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; FXString result = someAction(i-&amp;gt;data);
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; How to return result to thread_1?
&lt;/div&gt;&lt;br&gt;You need to define an Ack message for the message which will 
&lt;br&gt;transport your result back to the sender. Your sender can either wait 
&lt;br&gt;for the reply or move on with other processing, polling for the reply 
&lt;br&gt;or indeed having a separate handler for the reply whenever it 
&lt;br&gt;arrives.
&lt;br&gt;&lt;br&gt;If you have an Ack message defined, TnFOX will automatically collect 
&lt;br&gt;any C++ exceptions thrown by the remote side and return them to the 
&lt;br&gt;message sender. I vaguely remember a system in place for timeouts as 
&lt;br&gt;well, so if a message does not return in time you get notified and 
&lt;br&gt;the operation is cancelled.
&lt;br&gt;&lt;br&gt;If you check the TestIPC program for the &amp;quot;file access over IPC&amp;quot; 
&lt;br&gt;mechanism then this gives a good demonstration of how to efficiently 
&lt;br&gt;use Ack messages to maximise throughput and deal correctly with error 
&lt;br&gt;situations.
&lt;br&gt;&lt;br&gt;HTH,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19961688&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19961688.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19835602</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-10-06T03:37:21Z</published>
	<updated>2008-10-06T03:37:21Z</updated>
	<author>
		<name>Ck-15</name>
	</author>
	<content type="html">One more question.
&lt;br&gt;&lt;br&gt;Can't understand how to get ask from thread via IPC..
&lt;br&gt;&lt;br&gt;For example:
&lt;br&gt;thread_1 requests from thread_2 some actions and wants to get the
&lt;br&gt;result of this actions.
&lt;br&gt;&lt;br&gt;void thread_1::req()
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; Msg msg(bla-bla);
&lt;br&gt;&amp;nbsp; sendMsg(msg);
&lt;br&gt;&lt;br&gt;&amp;nbsp; // here i want to use result from thread_2.
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;..
&lt;br&gt;thread_2::msgReceived(FXIPCMsg *rawmsg)
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; Msg *i = (Msg*)rawmsg;
&lt;br&gt;&lt;br&gt;&amp;nbsp; FXString result = someAction(i-&amp;gt;data);
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;How to return result to thread_1?
&lt;br&gt;&lt;br&gt;Thanks.
&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19835602&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19835602.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19824129</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-10-05T05:28:46Z</published>
	<updated>2008-10-05T05:28:46Z</updated>
	<author>
		<name>Ck-15</name>
	</author>
	<content type="html">&amp;gt; If you are in the same process, just reuse the same QPipe instance
&lt;br&gt;&amp;gt; between threads.
&lt;br&gt;&lt;br&gt;Ok! Thanks.
&lt;br&gt;&lt;br&gt;&amp;gt; Hope that helps,
&lt;br&gt;&lt;br&gt;Yes.
&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19824129&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19824129.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19821767</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-10-04T08:53:39Z</published>
	<updated>2008-10-04T08:53:39Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 1 Oct 2008 at 5:17, Ck wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I do the following:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Server side:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;FXERRHM(pipe = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;pipe-&amp;gt;create(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp;FXERRHM(p = new ServerConnector(this, *pipe));
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Client1:
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(pipe1 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; &amp;gt; pipe1-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(wc = new ClientConnector(this, *pipe1));
&lt;br&gt;&amp;gt; &amp;gt; wc-&amp;gt;channel()-&amp;gt;start(true);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Client2:
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(pipe2 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; &amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe2));
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; but Client2 wait something on pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; How to connect 2 or 3 clients to server via QPipe?
&lt;br&gt;&amp;gt; Can you write simple example?
&lt;/div&gt;&lt;br&gt;Oh I see what you mean. You want two clients connecting to one server 
&lt;br&gt;pipe.
&lt;br&gt;&lt;br&gt;No that isn't supported because its behaviour doesn't match between 
&lt;br&gt;Windows and POSIX. You can have one server QPipe and one client QPipe 
&lt;br&gt;and multiple threads can simultaneously use both pipe objects at the 
&lt;br&gt;same time.
&lt;br&gt;&lt;br&gt;More than two QPipe objects per pipe is not supported. This is 
&lt;br&gt;because Windows uses a IP socket style system of detaching pipe 
&lt;br&gt;instances from a listening pipe whereas Unix does not.
&lt;br&gt;&lt;br&gt;If you want one server interface and multiple clients, QBlkSocket is 
&lt;br&gt;the only thing which does this.
&lt;br&gt;&lt;br&gt;If you want to cheat, you could fetch the internal HANDLE, duplicate 
&lt;br&gt;it with cross-process inheritability and pass it to the other 
&lt;br&gt;process. I am not sure if just doing an ReadFile() on the same pipe 
&lt;br&gt;instance string works - I am afraid I do not have the internet 
&lt;br&gt;available to me right now so I cannot check.
&lt;br&gt;&lt;br&gt;If you are in the same process, just reuse the same QPipe instance 
&lt;br&gt;between threads.
&lt;br&gt;&lt;br&gt;Hope that helps,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19821767&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19821767.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19754612</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-30T22:17:30Z</published>
	<updated>2008-09-30T22:17:30Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">Niall Douglas &amp;lt;s_sourceforge@...&amp;gt; writes:
&lt;br&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; TnFOX scares away most programmers - a lot of CS 
&lt;br&gt;&amp;gt; courses use it as a teaching aid for advanced C++ techniques but no 
&lt;br&gt;&amp;gt; one that I know of uses it for actual application programming.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;This scares me more than TnFox).
&lt;br&gt;Do you use TnFox?
&lt;br&gt;&lt;br&gt;&amp;gt; No you need to create() the server end of the pipe and open() the 
&lt;br&gt;&amp;gt; client end of the pipe.
&lt;br&gt;&lt;br&gt;I do not understand..
&lt;br&gt;&lt;br&gt;I do the following:
&lt;br&gt;&lt;br&gt;Server side:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; &amp;nbsp;pipe-&amp;gt;create(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;nbsp;FXERRHM(p = new ServerConnector(this, *pipe));
&lt;br&gt;&lt;br&gt;Client1:
&lt;br&gt;&amp;gt; FXERRHM(pipe1 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; pipe1-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; FXERRHM(wc = new ClientConnector(this, *pipe1));
&lt;br&gt;&amp;gt; wc-&amp;gt;channel()-&amp;gt;start(true);
&lt;br&gt;&lt;br&gt;Client2:
&lt;br&gt;&amp;gt; FXERRHM(pipe2 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe2));
&lt;br&gt;&lt;br&gt;but Client2 wait something on pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&lt;br&gt;How to connect 2 or 3 clients to server via QPipe?
&lt;br&gt;Can you write simple example?
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19754612&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19754612.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19731557</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-29T09:59:05Z</published>
	<updated>2008-09-29T09:59:05Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 28 Sep 2008 at 4:52, CK wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; Actually, you /could/ have multiple threads receiving too so long as only one
&lt;br&gt;&amp;gt; is doing it at any one time.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; So I can use many threads with QPipe to send messages without any extra
&lt;br&gt;&amp;gt; synchronisation?
&lt;br&gt;&amp;gt; In doc:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;Reads and writes are threadsafe, but you should avoid more than
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;two threads working with
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;the same pipe (the same as more than two processes) because ...
&lt;br&gt;&lt;br&gt;Yes so long as you can guarantee that no two threads will be writing 
&lt;br&gt;simultaneously. You can either employ a mutex, a wait object or 
&lt;br&gt;simply structure your code appropriately. If the messages are small 
&lt;br&gt;then you shouldn't even need any extra synchronisation so long as the 
&lt;br&gt;receiver processes messages quickly.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;gt; By the way, what kind of application are you developing?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm developing application for Stock market.
&lt;br&gt;&amp;gt; I need to rewrite dll for application named Anvil.
&lt;br&gt;&amp;gt; Old dll is singlethreaded and it can't work with big dataflow.
&lt;br&gt;&amp;gt; I trying to implement multithreaded architecture.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Already has passed a lot of time, and I still try to understand
&lt;br&gt;&amp;gt; some components. I found your fox-toolkit fork near 2 years ago.
&lt;br&gt;&amp;gt; Now I decided to use it in this project.
&lt;br&gt;&amp;gt; Jeroen's fox-toolkit and your TnFox are very intresting thigs).
&lt;br&gt;&amp;gt; But i never used TnFox before. Just a little fox-toolkit - hello-world
&lt;br&gt;&amp;gt; application)).
&lt;br&gt;&amp;gt; So sorry for stupid questions.
&lt;/div&gt;&lt;br&gt;That's no problem. TnFOX scares away most programmers - a lot of CS 
&lt;br&gt;courses use it as a teaching aid for advanced C++ techniques but no 
&lt;br&gt;one that I know of uses it for actual application programming.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Yet another couple of questions:
&lt;br&gt;&amp;gt; How to use QPipe with more than one sender thread?
&lt;br&gt;&amp;gt; On client side I tried to make the test:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(pipe1 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; &amp;gt; pipe1-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(wc = new ClientConnector(this, *pipe1));
&lt;br&gt;&amp;gt; &amp;gt; wc-&amp;gt;channel()-&amp;gt;start(true);
&lt;br&gt;&amp;gt; &amp;gt; ...
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(pipe2 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; &amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe2));
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; but
&lt;br&gt;&amp;gt; &amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; waiting something..
&lt;br&gt;&amp;gt; I checked with debugger. It happen on this line in qpipe.cxx:
&lt;br&gt;&amp;gt; &amp;gt; FXERRHWINFN(WaitNamedPipe(temp.buffer(), NMPWAIT_USE_DEFAULT_WAIT), readname);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; If I do like this:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe1));
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; everything goes fine and I can send messages via wc()-&amp;gt;channel() and
&lt;br&gt;&amp;gt; wc2-&amp;gt;cannel(). But maybe this is not correct?
&lt;/div&gt;&lt;br&gt;No you need to create() the server end of the pipe and open() the 
&lt;br&gt;client end of the pipe.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; How do you think maybe it is better to use event loops (FXEventLoop) for
&lt;br&gt;&amp;gt; communicating threads.
&lt;br&gt;&amp;gt; For async calls use postAsyncMessage (for example for sending data to GUI),
&lt;br&gt;&amp;gt; and for sync calls use:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; RetType SomeObject::syncCall()
&lt;br&gt;&amp;gt; {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;someThread-&amp;gt;getEventLoop()-&amp;gt;postAsyncMessage(bla-bla);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;waitReturnValue();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;return retVal;
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; void SomeObject::tryHandle(FXObject *sender, FXSelector sel, void *ptr)
&lt;br&gt;&amp;gt; {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;if(sender == someThread &amp;&amp; maybe_additional_condition){
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; retVal = ptr;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; endWait();
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;..
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; or something like this..
&lt;br&gt;&amp;gt; But i prefer to use IPC - it is easier.
&lt;/div&gt;&lt;br&gt;There's no synchronous call ability for async messages - it's a fire 
&lt;br&gt;&amp; forget system. You can of course fire an async message back again 
&lt;br&gt;when done.
&lt;br&gt;&lt;br&gt;The IPC mechanism is much better designed for this sort of stuff - 
&lt;br&gt;but then the threaded windowing system was originally designed as a 
&lt;br&gt;standalone patch for FOX and so I kept it separate. Jeroen refused 
&lt;br&gt;the patch unfortunately and is proceeding his own direction. I'll try 
&lt;br&gt;merging his changes with mine when FOX v1.8 comes out.
&lt;br&gt;&lt;br&gt;&amp;gt; Is method with EventLoops faster? or IPC faster?
&lt;br&gt;&amp;gt; In fact I planned to use EventLoops for async calls and IPC for sync calls...
&lt;br&gt;&lt;br&gt;IPC is definitely faster as it skips the windowing systems which is 
&lt;br&gt;slow.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I found some (maybe) bugs...
&lt;br&gt;&amp;gt; 1) Simple test:
&lt;br&gt;&amp;gt; &amp;nbsp;QFileInfo info;
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;info.setFile(&amp;quot;filename.suffix&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp;fxmessage(&amp;quot;1. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;&amp;gt; info.extension().text());
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;info.setFile(&amp;quot;c:\\path\\filename.suffix&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp;fxmessage(&amp;quot;2. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;&amp;gt; info.extension().text());
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;info.setFile(&amp;quot;/usr/local/filename.suffix&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp;fxmessage(&amp;quot;3. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;&amp;gt; info.extension().text());
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;info.setFile(&amp;quot;f.s&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp;fxmessage(&amp;quot;4. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;&amp;gt; info.extension().text());
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Output:
&lt;br&gt;&amp;gt; 1. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;&amp;gt; 2. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;&amp;gt; 3. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;&amp;gt; 4. Basename: &amp;nbsp;suffix:s
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Something wrong here)
&lt;/div&gt;&lt;br&gt;Oh yes. I'll tag that for doing something about it. Thanks.
&lt;br&gt;&lt;br&gt;&amp;gt; 2) In FXTable:
&lt;br&gt;&amp;gt; The &amp;quot;down&amp;quot;-arrow is displayed if we call
&lt;br&gt;&amp;gt; getColumnHeader()-&amp;gt;setArrowDir(FXHeaderItem::ARROW_NONE).
&lt;br&gt;&amp;gt; But it must be displayed if we call
&lt;br&gt;&amp;gt; getColumnHeader()-&amp;gt;setArrowDir(FXHeaderItem::ARROW_DOWN).
&lt;br&gt;&lt;br&gt;That's probably a bug in Jeroen's code, but I'll tag that too.
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19731557&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19731557.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19708936</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-27T21:52:05Z</published>
	<updated>2008-09-27T21:52:05Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">My mail server have problems.. I posted this answer from gmane.org.
&lt;br&gt;&lt;br&gt;&amp;gt; Actually, you /could/ have multiple threads receiving too so long as only one
&lt;br&gt;is doing it at any one time.
&lt;br&gt;&lt;br&gt;So I can use many threads with QPipe to send messages without any extra
&lt;br&gt;synchronisation?
&lt;br&gt;In doc:
&lt;br&gt;&amp;nbsp; &amp;nbsp;Reads and writes are threadsafe, but you should avoid more than
&lt;br&gt;&amp;nbsp; &amp;nbsp;two threads working with
&lt;br&gt;&amp;nbsp; &amp;nbsp;the same pipe (the same as more than two processes) because ...
&lt;br&gt;&lt;br&gt;&lt;br&gt;&amp;gt; I'll be honest: there has been a long standing bug in QLocalPipe as mentioned
&lt;br&gt;in Todo.txt which somehow causes it to fail when working under QSSLDevice. I
&lt;br&gt;have never discovered why it fails ...
&lt;br&gt;&lt;br&gt;It is sad.. I'll try to use QPipe.
&lt;br&gt;&lt;br&gt;&amp;gt; Still, try a QBlkSocket just to make sure, you never know.
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&lt;br&gt;Hm. I have some technical problems with testing QBlkSocket.
&lt;br&gt;Maybe I'll try it later.
&lt;br&gt;&lt;br&gt;&amp;gt; By the way, what kind of application are you developing?
&lt;br&gt;&lt;br&gt;I'm developing application for Stock market.
&lt;br&gt;I need to rewrite dll for application named Anvil.
&lt;br&gt;Old dll is singlethreaded and it can't work with big dataflow.
&lt;br&gt;I trying to implement multithreaded architecture.
&lt;br&gt;&lt;br&gt;Already has passed a lot of time, and I still try to understand
&lt;br&gt;some components. I found your fox-toolkit fork near 2 years ago.
&lt;br&gt;Now I decided to use it in this project.
&lt;br&gt;Jeroen's fox-toolkit and your TnFox are very intresting thigs).
&lt;br&gt;But i never used TnFox before. Just a little fox-toolkit - hello-world
&lt;br&gt;application)).
&lt;br&gt;So sorry for stupid questions.
&lt;br&gt;&lt;br&gt;Yet another couple of questions:
&lt;br&gt;How to use QPipe with more than one sender thread?
&lt;br&gt;On client side I tried to make the test:
&lt;br&gt;&lt;br&gt;&amp;gt; FXERRHM(pipe1 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; pipe1-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; FXERRHM(wc = new ClientConnector(this, *pipe1));
&lt;br&gt;&amp;gt; wc-&amp;gt;channel()-&amp;gt;start(true);
&lt;br&gt;&amp;gt; ...
&lt;br&gt;&amp;gt; FXERRHM(pipe2 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe2));
&lt;br&gt;&lt;br&gt;but
&lt;br&gt;&amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&lt;br&gt;waiting something..
&lt;br&gt;I checked with debugger. It happen on this line in qpipe.cxx:
&lt;br&gt;&amp;gt; FXERRHWINFN(WaitNamedPipe(temp.buffer(), NMPWAIT_USE_DEFAULT_WAIT), readname);
&lt;br&gt;&lt;br&gt;If I do like this:
&lt;br&gt;&lt;br&gt;&amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe1));
&lt;br&gt;&lt;br&gt;everything goes fine and I can send messages via wc()-&amp;gt;channel() and
&lt;br&gt;wc2-&amp;gt;cannel(). But maybe this is not correct?
&lt;br&gt;&lt;br&gt;How do you think maybe it is better to use event loops (FXEventLoop) for
&lt;br&gt;communicating threads.
&lt;br&gt;For async calls use postAsyncMessage (for example for sending data to GUI),
&lt;br&gt;and for sync calls use:
&lt;br&gt;&lt;br&gt;RetType SomeObject::syncCall()
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp;someThread-&amp;gt;getEventLoop()-&amp;gt;postAsyncMessage(bla-bla);
&lt;br&gt;&amp;nbsp; &amp;nbsp;waitReturnValue();
&lt;br&gt;&amp;nbsp; &amp;nbsp;return retVal;
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;void SomeObject::tryHandle(FXObject *sender, FXSelector sel, void *ptr)
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(sender == someThread &amp;&amp; maybe_additional_condition){
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; retVal = ptr;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; endWait();
&lt;br&gt;&amp;nbsp; &amp;nbsp;}
&lt;br&gt;&amp;nbsp; &amp;nbsp;..
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;or something like this..
&lt;br&gt;But i prefer to use IPC - it is easier.
&lt;br&gt;&lt;br&gt;Is method with EventLoops faster? or IPC faster?
&lt;br&gt;In fact I planned to use EventLoops for async calls and IPC for sync calls...
&lt;br&gt;&lt;br&gt;I found some (maybe) bugs...
&lt;br&gt;1) Simple test:
&lt;br&gt;&amp;nbsp;QFileInfo info;
&lt;br&gt;&lt;br&gt;&amp;nbsp;info.setFile(&amp;quot;filename.suffix&amp;quot;);
&lt;br&gt;&amp;nbsp;fxmessage(&amp;quot;1. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;&amp;nbsp;info.setFile(&amp;quot;c:\\path\\filename.suffix&amp;quot;);
&lt;br&gt;&amp;nbsp;fxmessage(&amp;quot;2. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;&amp;nbsp;info.setFile(&amp;quot;/usr/local/filename.suffix&amp;quot;);
&lt;br&gt;&amp;nbsp;fxmessage(&amp;quot;3. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;&amp;nbsp;info.setFile(&amp;quot;f.s&amp;quot;);
&lt;br&gt;&amp;nbsp;fxmessage(&amp;quot;4. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(),
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;Output:
&lt;br&gt;1. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;2. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;3. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;4. Basename: &amp;nbsp;suffix:s
&lt;br&gt;&lt;br&gt;Something wrong here)
&lt;br&gt;&lt;br&gt;2) In FXTable:
&lt;br&gt;The &amp;quot;down&amp;quot;-arrow is displayed if we call
&lt;br&gt;getColumnHeader()-&amp;gt;setArrowDir(FXHeaderItem::ARROW_NONE).
&lt;br&gt;But it must be displayed if we call
&lt;br&gt;getColumnHeader()-&amp;gt;setArrowDir(FXHeaderItem::ARROW_DOWN).
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thank you.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19708936&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19708936.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19814309</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-27T02:29:08Z</published>
	<updated>2008-09-27T02:29:08Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">&lt;br&gt;&amp;gt; Actually, you /could/ have multiple threads receiving too so long as 
&lt;br&gt;&amp;gt; only one is doing it at any one time.
&lt;br&gt;So I can use many threads with QPipe to send messages without any extra 
&lt;br&gt;synchronisation?
&lt;br&gt;In doc:
&lt;br&gt;&amp;nbsp; &amp;nbsp; Reads and writes are threadsafe, but you should avoid more than two 
&lt;br&gt;threads working with
&lt;br&gt;&amp;nbsp; &amp;nbsp; the same pipe (the same as more than two processes) because ...
&lt;br&gt;&lt;br&gt;&amp;gt; I'll be honest: there has been a long standing bug in QLocalPipe as 
&lt;br&gt;&amp;gt; mentioned in Todo.txt which somehow causes it to fail when working 
&lt;br&gt;&amp;gt; under QSSLDevice. I have never discovered why it fails ...
&lt;br&gt;It is sad.. I'll try to use QPipe.
&lt;br&gt;&lt;br&gt;&amp;gt; Still, try a QBlkSocket just to make sure, you never know.
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;Hm. I have some technical problems with testing QBlkSocket. Maybe I'll 
&lt;br&gt;try it later.
&lt;br&gt;&lt;br&gt;&amp;gt; By the way, what kind of application are you developing?
&lt;br&gt;I'm developing application for Stock market.
&lt;br&gt;I need to rewrite dll for application named Anvil.
&lt;br&gt;Old dll is singlethreaded and it can't work with big dataflow.
&lt;br&gt;I trying to implement multithreaded architecture.
&lt;br&gt;&lt;br&gt;Already has passed a lot of time, and I still try to understand some 
&lt;br&gt;components.
&lt;br&gt;I found your fox-toolkit fork near 2 years ago. I now I decided to use 
&lt;br&gt;it in this project.
&lt;br&gt;Jeroen's fox-toolkit and your TnFox are very intresting thigs)
&lt;br&gt;But i never used TnFox before. Just a little fox-toolkit - hello-world 
&lt;br&gt;application)).
&lt;br&gt;So sorry for stupid questions.
&lt;br&gt;&lt;br&gt;Yet another couple of questions:
&lt;br&gt;How to use QPipe with more than one sender thread?
&lt;br&gt;On client side I tried to make the test:
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp;&amp;gt; FXERRHM(pipe1 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;nbsp;&amp;gt; pipe1-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;nbsp;&amp;gt; FXERRHM(wc = new ClientConnector(this, *pipe1));
&lt;br&gt;&amp;nbsp;&amp;gt; wc-&amp;gt;channel()-&amp;gt;start(true);
&lt;br&gt;&amp;nbsp;&amp;gt; ...
&lt;br&gt;&amp;nbsp;&amp;gt; FXERRHM(pipe2 = new QPipe(&amp;quot;pipe&amp;quot;));
&lt;br&gt;&amp;nbsp;&amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;nbsp;&amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe2));
&lt;br&gt;&lt;br&gt;but
&lt;br&gt;&amp;nbsp;&amp;gt; pipe2-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;waiting something..
&lt;br&gt;I checked with debugger. It happen on this line in qpipe.cxx:
&lt;br&gt;&amp;nbsp;&amp;gt; FXERRHWINFN(WaitNamedPipe(temp.buffer(), NMPWAIT_USE_DEFAULT_WAIT), 
&lt;br&gt;readname);
&lt;br&gt;&lt;br&gt;If I do like this:
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;gt; FXERRHM(wc2 = new ClientConnector(this, *pipe1));
&lt;br&gt;&lt;br&gt;everything goes fine and I can send messages via wc()-&amp;gt;channel() and 
&lt;br&gt;wc2-&amp;gt;cannel(). But maybe this is not correct?
&lt;br&gt;&lt;br&gt;How do you think maybe it is better to use event loops (FXEventLoop) for 
&lt;br&gt;communicating threads.
&lt;br&gt;For async calls use postAsyncMessage (for example for sending data to 
&lt;br&gt;GUI), and for sync calls use:
&lt;br&gt;&lt;br&gt;RetType SomeObject::syncCall()
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; someThread-&amp;gt;getEventLoop()-&amp;gt;postAsyncMessage(bla-bla);
&lt;br&gt;&amp;nbsp; &amp;nbsp; waitReturnValue();
&lt;br&gt;&amp;nbsp; &amp;nbsp; return retVal;
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;void SomeObject::tryHandle(FXObject 
&lt;br&gt;&amp;lt;../../d5/d5a/class_f_x_1_1_f_x_object.html&amp;gt; *sender, FXSelector sel, 
&lt;br&gt;void *ptr)
&lt;br&gt;{
&lt;br&gt;&amp;nbsp; &amp;nbsp; if(sender == someThread &amp;&amp; maybe_additional_condition){
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;retVal = ptr;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;endWait();
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; ..
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;or something like this..
&lt;br&gt;But i prefer to use IPC - it is easier.
&lt;br&gt;&lt;br&gt;Is method with EventLoops faster? or IPC faster?
&lt;br&gt;In fact I planned to use EventLoops for async calls and IPC for sync 
&lt;br&gt;calls...
&lt;br&gt;&lt;br&gt;I found some (maybe) bugs...
&lt;br&gt;1) Simple test:
&lt;br&gt;&amp;nbsp; QFileInfo info;
&lt;br&gt;&lt;br&gt;&amp;nbsp; info.setFile(&amp;quot;filename.suffix&amp;quot;);
&lt;br&gt;&amp;nbsp; fxmessage(&amp;quot;1. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(), 
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;&amp;nbsp; info.setFile(&amp;quot;c:\\path\\filename.suffix&amp;quot;);
&lt;br&gt;&amp;nbsp; fxmessage(&amp;quot;2. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(), 
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;&amp;nbsp; info.setFile(&amp;quot;/usr/local/filename.suffix&amp;quot;);
&lt;br&gt;&amp;nbsp; fxmessage(&amp;quot;3. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(), 
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;&amp;nbsp; info.setFile(&amp;quot;f.s&amp;quot;);
&lt;br&gt;&amp;nbsp; fxmessage(&amp;quot;4. Basename:%s &amp;nbsp;suffix:%s\n&amp;quot;, info.baseName().text(), 
&lt;br&gt;info.extension().text());
&lt;br&gt;&lt;br&gt;Output:
&lt;br&gt;1. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;2. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;3. Basename:filenam &amp;nbsp;suffix:suffix
&lt;br&gt;4. Basename: &amp;nbsp;suffix:s
&lt;br&gt;&lt;br&gt;Something wrong here)
&lt;br&gt;&lt;br&gt;2) In FXTable:
&lt;br&gt;The &amp;quot;down&amp;quot;-arrow is displayed if we call 
&lt;br&gt;getColumnHeader()-&amp;gt;setArrowDir(FXHeaderItem::ARROW_NONE).
&lt;br&gt;But it must be displayed if we call 
&lt;br&gt;getColumnHeader()-&amp;gt;setArrowDir(FXHeaderItem::ARROW_DOWN).
&lt;br&gt;&lt;br&gt;&lt;br&gt;Thank you.
&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19814309&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19814309.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19683909</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-26T00:43:59Z</published>
	<updated>2008-09-26T00:43:59Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Sep 2008 at 2:24, Ck wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I found problem: Previously I compiled dll project with &amp;nbsp;FOX_BIGENDIAN
&lt;br&gt;&amp;gt; and now (after I looked at scons build log) I compile with FOX_BIGENDIAN 
&lt;br&gt;&amp;gt; = 0.
&lt;br&gt;&amp;gt; It works.
&lt;br&gt;&lt;br&gt;Well scons does the right thing here except on Mac OS X where for 
&lt;br&gt;some odd reason Apple have miscompiled python such that it sometimes 
&lt;br&gt;makes mistakes.
&lt;br&gt;&lt;br&gt;&amp;gt; I used QPipe for FXIPCChannel.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; As I understand, QPipe is not good choice for connecting more than 2 
&lt;br&gt;&amp;gt; threads...
&lt;br&gt;&amp;gt; (I checked maxAtomicLength() &amp;nbsp;- 4096).
&lt;br&gt;&lt;br&gt;There can only ever be one receiving thread but many sender threads. 
&lt;br&gt;This applies to QPipe, QLocalPipe or anything else.
&lt;br&gt;&lt;br&gt;Actually, you /could/ have multiple threads receiving too so long as 
&lt;br&gt;only one is doing it at any one time. I have a special case in Tn 
&lt;br&gt;where one thread receives one message and then hands off message 
&lt;br&gt;receiving to a child thread.
&lt;br&gt;&lt;br&gt;&amp;gt; QLocalPipe is better for me (for intra-process communications).
&lt;br&gt;&amp;gt; I checked QLocalPipe code: CHUNKSIZE (64*1024). Maybe this will be 
&lt;br&gt;&amp;gt; enough for &amp;nbsp;messages..
&lt;br&gt;&amp;gt; I can use QLocalPipe with many threads, rigth?
&lt;br&gt;&lt;br&gt;The 4Kb limit for QPipe is a system imposed limit. In fact it varies 
&lt;br&gt;on different operating systems ... Apple &amp; FreeBSD will automagically 
&lt;br&gt;extend the pipe buffer dynamically up to 16Kb, Windows will allocate 
&lt;br&gt;64Kb if you pass isDeepPipe=true to the QPipe constructor. Linux is 
&lt;br&gt;fixed at 4Kb no matter what.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; But I can't connect via QLocalPipe.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Here how I do this:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; On server side:
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QLocalPipe);
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;pipe-&amp;gt;create(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(p = new ServerConnector(this, *pipe));
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; On client side:
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QLocalPipe(Global::pipe-&amp;gt;clientEnd()));
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;pipe-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(wc = new ClientConnector(this, *pipe));
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; This is not worked..
&lt;br&gt;&amp;gt; If use QPipe in this way - It works.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Can you tell me where my mistake?
&lt;/div&gt;&lt;br&gt;I'll be honest: there has been a long standing bug in QLocalPipe as 
&lt;br&gt;mentioned in Todo.txt which somehow causes it to fail when working 
&lt;br&gt;under QSSLDevice. I have never discovered why it fails ... it has 
&lt;br&gt;always seemed to work under FXIPCChannel, indeed Tn uses it, so 
&lt;br&gt;obviously QSSLDevice sends some pattern of messages which makes it 
&lt;br&gt;trip over.
&lt;br&gt;&lt;br&gt;It is possible that by sheer chance your code happens to duplicate 
&lt;br&gt;this pattern and thus it fails. I can tell you that your code looks 
&lt;br&gt;absolutely fine and I can't see why it wouldn't work. As you said, if 
&lt;br&gt;it works via QPipe, it should work via QLocalPipe. Still, try a 
&lt;br&gt;QBlkSocket just to make sure, you never know.
&lt;br&gt;&lt;br&gt;&amp;gt; PS. BTW, Niall, in QLocalPipe documentation:
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; See QPipe for more information about how such objects work. One 
&lt;br&gt;&amp;gt; difference that there is no create(), instead there is an otherEnd() 
&lt;br&gt;&amp;gt; method which returns ...
&lt;br&gt;&amp;gt; otherEnd() ?? The typing error seems to me here... And Should be 
&lt;br&gt;&amp;gt; clientEnd() instead otherEnd().
&lt;br&gt;&lt;br&gt;Yes this is definitely a typing error. I'll flag this for fixing next 
&lt;br&gt;time I am on the desktop computer.
&lt;br&gt;&lt;br&gt;Thanks for the typo report, and sorry that I am not more useful for 
&lt;br&gt;QLocalPipe. By the way, what kind of application are you developing?
&lt;br&gt;&lt;br&gt;Thanks,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19683909&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19683909.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19682292</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-25T21:20:39Z</published>
	<updated>2008-09-25T21:20:39Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">Hello.
&lt;br&gt;Thanks for you answers, Niall.
&lt;br&gt;&lt;br&gt;I found problem: Previously I compiled dll project with &amp;nbsp;FOX_BIGENDIAN
&lt;br&gt;and now (after I looked at scons build log) I compile with FOX_BIGENDIAN 
&lt;br&gt;= 0.
&lt;br&gt;It works.
&lt;br&gt;&lt;br&gt;I used QPipe for FXIPCChannel.
&lt;br&gt;&lt;br&gt;As I understand, QPipe is not good choice for connecting more than 2 
&lt;br&gt;threads...
&lt;br&gt;(I checked maxAtomicLength() &amp;nbsp;- 4096).
&lt;br&gt;&lt;br&gt;QLocalPipe is better for me (for intra-process communications).
&lt;br&gt;I checked QLocalPipe code: CHUNKSIZE (64*1024). Maybe this will be 
&lt;br&gt;enough for &amp;nbsp;messages..
&lt;br&gt;I can use QLocalPipe with many threads, rigth?
&lt;br&gt;&lt;br&gt;But I can't connect via QLocalPipe.
&lt;br&gt;&lt;br&gt;Here how I do this:
&lt;br&gt;&lt;br&gt;On server side:
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QLocalPipe);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;pipe-&amp;gt;create(IO_ReadWrite);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(p = new ServerConnector(this, *pipe));
&lt;br&gt;&lt;br&gt;On client side:
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QLocalPipe(Global::pipe-&amp;gt;clientEnd()));
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;pipe-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(wc = new ClientConnector(this, *pipe));
&lt;br&gt;&lt;br&gt;This is not worked..
&lt;br&gt;If use QPipe in this way - It works.
&lt;br&gt;&lt;br&gt;Can you tell me where my mistake?
&lt;br&gt;&lt;br&gt;PS. BTW, Niall, in QLocalPipe documentation:
&lt;br&gt;&amp;nbsp;&amp;gt; See QPipe for more information about how such objects work. One 
&lt;br&gt;difference that there is no create(), instead there is an otherEnd() 
&lt;br&gt;method which returns ...
&lt;br&gt;otherEnd() ?? The typing error seems to me here... And Should be 
&lt;br&gt;clientEnd() instead otherEnd().
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19682292&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19682292.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19676548</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-25T12:24:03Z</published>
	<updated>2008-09-25T12:24:03Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">Hello.
&lt;br&gt;Thanks for you answers, Niall.
&lt;br&gt;&lt;br&gt;I found problem: Previously I compiled dll project with &amp;nbsp;FOX_BIGENDIAN
&lt;br&gt;and now (after I looked at scons build log) I compile with FOX_BIGENDIAN 
&lt;br&gt;= 0.
&lt;br&gt;It works.
&lt;br&gt;&lt;br&gt;I used QPipe for FXIPCChannel.
&lt;br&gt;&lt;br&gt;As I understand, QPipe is not good choice for connecting more than 2 
&lt;br&gt;threads...
&lt;br&gt;(I checked maxAtomicLength() &amp;nbsp;- 4096).
&lt;br&gt;&lt;br&gt;QLocalPipe is better for me (for intra-process communications).
&lt;br&gt;I checked QLocalPipe code: CHUNKSIZE (64*1024). Maybe this will be 
&lt;br&gt;enough for &amp;nbsp;messages..
&lt;br&gt;I can use QLocalPipe with many threads, rigth?
&lt;br&gt;&lt;br&gt;But I can't connect via QLocalPipe.
&lt;br&gt;&lt;br&gt;Here how I do this:
&lt;br&gt;&lt;br&gt;On server side:
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QLocalPipe);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;pipe-&amp;gt;create(IO_ReadWrite);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(p = new ServerConnector(this, *pipe));
&lt;br&gt;&lt;br&gt;On client side:
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(pipe = new QLocalPipe(Global::pipe-&amp;gt;clientEnd()));
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;pipe-&amp;gt;open(IO_ReadWrite);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(wc = new ClientConnector(this, *pipe));
&lt;br&gt;&lt;br&gt;This is not worked..
&lt;br&gt;If use QPipe in this way - It works.
&lt;br&gt;&lt;br&gt;Can you tell me where my mistake?
&lt;br&gt;&lt;br&gt;PS. BTW, Niall, in QLocalPipe documentation:
&lt;br&gt;&amp;nbsp;&amp;gt; See QPipe for more information about how such objects work. One 
&lt;br&gt;difference that there is no create(), instead there is an otherEnd() 
&lt;br&gt;method which returns ...
&lt;br&gt;otherEnd() ?? The typing error seems to me here... And Should be 
&lt;br&gt;clientEnd() instead otherEnd().
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19676548&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19676548.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19622736</id>
	<title>Re: IPC message sending problems</title>
	<published>2008-09-23T00:37:32Z</published>
	<updated>2008-09-23T00:37:32Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">&lt;br&gt;&amp;gt;&amp;gt; The attached message was received as a bounce, but either the bounce
&lt;br&gt;&amp;gt;&amp;gt; format was not recognized, or no member addresses could be extracted
&lt;br&gt;&amp;gt;&amp;gt; from it. &amp;nbsp;This mailing list has been configured to send all
&lt;br&gt;&amp;gt;&amp;gt; unrecognized bounce messages to the list administrator(s).
&lt;br&gt;&amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Looks like you had a problem reaching the list.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;Sorry, i wrote wrong email - &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19622736&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;tnfox-discussion-bounces@...&lt;/a&gt;
&lt;br&gt;&amp;gt; Are you sure you are defining &amp; registering the message chunk 
&lt;br&gt;&amp;gt; correctly as per the documentation and source code examples?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;I looked at the docs &amp; TestIPC example and I do the only the following 
&lt;br&gt;steps for defining &amp; registering IPC messages:
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;gt; typedef FX::FXIPCMsgChunkCodeAlloc&amp;lt;0x80, true&amp;gt; MsgChunkBegin;
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;gt; struct TestMarketMsg_Error : public FX::FXIPCMsg
&lt;br&gt;&amp;nbsp;&amp;gt; {
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; typedef FX::FXIPCMsgChunkCodeAlloc&amp;lt;MsgChunkBegin::code, false&amp;gt; id;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; typedef FX::FXIPCMsgRegister&amp;lt;id, TestMarketMsg_Error&amp;gt; regtype;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; int code;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; TestMarketMsg_Error() : FX::FXIPCMsg(id::code), code(0) { }
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; TestMarketMsg_Error(int c): FX::FXIPCMsg(id::code), code(c){}
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; void &amp;nbsp; endianise(FX::FXStream &amp;ds) const { ds &amp;lt;&amp;lt; code; }
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; void deendianise(FX::FXStream &amp;ds) &amp;nbsp; &amp;nbsp; &amp;nbsp; { ds &amp;gt;&amp;gt; code; }
&lt;br&gt;&amp;nbsp;&amp;gt; };
&lt;br&gt;&amp;nbsp;&amp;gt; 
&lt;br&gt;//--------------------------------------------------------------------------------
&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;gt; struct TestMarketMsg_Action : public FX::FXIPCMsg
&lt;br&gt;&amp;nbsp;&amp;gt; {
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; typedef 
&lt;br&gt;FX::FXIPCMsgChunkCodeAlloc&amp;lt;TestMarketMsg_Error::id::nextcode, false&amp;gt; id;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; typedef FX::FXIPCMsgRegister&amp;lt;id, TestMarketMsg_Action&amp;gt; regtype;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; int code;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; TestMarketMsg_Action(int c=0)
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; : FX::FXIPCMsg(id::code), code(c){ }
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; void &amp;nbsp; endianise(FX::FXStream &amp;ds) const { ds &amp;lt;&amp;lt; code; }
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; void deendianise(FX::FXStream &amp;ds) &amp;nbsp; &amp;nbsp; &amp;nbsp; { ds &amp;gt;&amp;gt; code; }
&lt;br&gt;&amp;nbsp;&amp;gt; };
&lt;br&gt;&amp;nbsp;&amp;gt; 
&lt;br&gt;//--------------------------------------------------------------------------------
&lt;br&gt;&amp;nbsp;&amp;gt;
&lt;br&gt;&amp;nbsp;&amp;gt; typedef FX::FXIPCMsgChunk&amp;lt;FX::Generic::TL::create&amp;lt;
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; TestMarketMsg_Error::regtype,
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; TestMarketMsg_Action::regtype
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;gt;::value&amp;gt; MsgChunk;
&lt;br&gt;&lt;br&gt;and in class:
&lt;br&gt;&amp;nbsp;&amp;gt; void IPCController::channelInstall()
&lt;br&gt;&amp;nbsp;&amp;gt; {
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp;FXERRHM(m_chunk = new MsgChunk(&amp;m_channel-&amp;gt;registry()));
&lt;br&gt;&amp;nbsp;&amp;gt; ...
&lt;br&gt;&lt;br&gt;after
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;TestMarketMsg_Action act(1);
&lt;br&gt;&amp;nbsp;&amp;gt; &amp;nbsp;wc-&amp;gt;channel()-&amp;gt;sendMsg(act);
&lt;br&gt;I have the exception.
&lt;br&gt;&lt;br&gt;&amp;gt; Your error above suggests a serialisation/deserialisation mismatch in 
&lt;br&gt;&amp;gt; the message sent before that message - the exception you got is a 
&lt;br&gt;&amp;gt; trap for that problem. There is some #ifdef DEBUG code in the 
&lt;br&gt;&amp;gt; FXIPCChannel source which may help and there are even more debug 
&lt;br&gt;&amp;gt; outputs which can be commented into working too. One of them even 
&lt;br&gt;&amp;gt; dumps a byte output of bytes received &amp; sent so you should definitely 
&lt;br&gt;&amp;gt; find where the problem is.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;Ok, I'll try to use this.
&lt;br&gt;&lt;br&gt;Thanks for your answers, Niall.
&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19622736&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19622736.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19616772</id>
	<title>Re: Uncaught bounce notification</title>
	<published>2008-09-22T13:43:33Z</published>
	<updated>2008-09-22T13:43:33Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 22 Sep 2008 at 11:10, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19616772&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;sitelist-bounces@...&lt;/a&gt; 
&lt;br&gt;wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; The attached message was received as a bounce, but either the bounce
&lt;br&gt;&amp;gt; format was not recognized, or no member addresses could be extracted
&lt;br&gt;&amp;gt; from it. &amp;nbsp;This mailing list has been configured to send all
&lt;br&gt;&amp;gt; unrecognized bounce messages to the list administrator(s).
&lt;br&gt;&lt;br&gt;Looks like you had a problem reaching the list.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I decided to use IPC framework for threads communication.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; After sending message from thread to main thread:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;FXERRHM(wc = new WindowConnector(this, *pipe));
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;wc-&amp;gt;channel()-&amp;gt;start(true);
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; ...
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;TestMarketMsg_Action act(1);
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp;wc-&amp;gt;channel()-&amp;gt;sendMsg(act);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; the exception is generated:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; Thread 5808 sending msg 0x83 (struct TestMarketMsg_Action), len=34
&lt;br&gt;&amp;gt; &amp;nbsp;bytes &amp;gt; FXException id 1 created, 'Maximum message size exceeded
&lt;br&gt;&amp;gt; &amp;nbsp;(570425344 
&lt;br&gt;&amp;gt; with limit of 65536)'
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; at line 387 in src\FXIPC.cxx thread 2656
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; Exception occurred in thread 2656 (IPC channel monitor): Maximum 
&lt;br&gt;&amp;gt; message size exceeded
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; (570425344 with limit of 65536) (code 0x7C8B4603 file
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; src\FXIPC.cxx line 387 in FX::FXIPCChannel::doReception() thread 2656)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; Stack backtrace:
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x620021B1:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;FX::FXException::FXException +0x41 &amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file fxexception.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line 
&lt;br&gt;&amp;gt; no 389)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x62250EF4:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;FX::FXIPCChannel::doReception +0x6b4 &amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file fxipc.cxx &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line 
&lt;br&gt;&amp;gt; no 387)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x6224E127:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;FX::FXIPCChannel::run +0x27
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file fxipc.h &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line no
&lt;br&gt;&amp;gt; 817)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x6231F834:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;FX::QThreadPrivate::run +0x1e4
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file qthread.cxx &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line no
&lt;br&gt;&amp;gt; 1030)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x623211B9:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;FX::start_thread +0xb9
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file qthread.cxx &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line no
&lt;br&gt;&amp;gt; 788)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x623210EC:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;FX::start_threadwin +0xc
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file qthread.cxx &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line no
&lt;br&gt;&amp;gt; 841)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; 0x7C80B6A3:&amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GetModuleFileNameA +0x1b4
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;(file &amp;lt;unknown&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; line no
&lt;br&gt;&amp;gt; 0)
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; &amp;lt;backtrace ends&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; Thread 2656 (IPC channel monitor) cleanup
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; Attempting to send Disconnect message to other end of IPC connection &amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;Thread 2656 sending msg 0x1 (struct FX::FXIPCMsg_Disconnect), len=18 
&lt;br&gt;&amp;gt; bytes
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; Succeeded in sending Disconnect message to other end of IPC connection! &amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp;Thread 560 received msg 0x1 (struct FX::FXIPCMsg_Disconnect), len=18 
&lt;br&gt;&amp;gt; bytes
&lt;br&gt;&amp;gt; &amp;nbsp;&amp;gt; class WindowConnector *@02DAB320: msgReceived()
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I think the exception is generated at reception in main thread.
&lt;br&gt;&amp;gt; I do not know, what else i must post for detecting the problem..
&lt;br&gt;&amp;gt; Strange what message size is 570425344..
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Where I could wrong?
&lt;/div&gt;&lt;br&gt;Are you sure you are defining &amp; registering the message chunk 
&lt;br&gt;correctly as per the documentation and source code examples?
&lt;br&gt;&lt;br&gt;Your error above suggests a serialisation/deserialisation mismatch in 
&lt;br&gt;the message sent before that message - the exception you got is a 
&lt;br&gt;trap for that problem. There is some #ifdef DEBUG code in the 
&lt;br&gt;FXIPCChannel source which may help and there are even more debug 
&lt;br&gt;outputs which can be commented into working too. One of them even 
&lt;br&gt;dumps a byte output of bytes received &amp; sent so you should definitely 
&lt;br&gt;find where the problem is.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19616772&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-Uncaught-bounce-notification-tp19616772p19616772.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19514158</id>
	<title>Re: TnFox application in DLL and threads</title>
	<published>2008-09-16T08:22:22Z</published>
	<updated>2008-09-16T08:22:22Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 15 Sep 2008 at 15:44, Ck wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; If your main thread is a MFC thread, then you'll need to pump the FOX 
&lt;br&gt;&amp;gt; &amp;gt; message dispatch system manually from within the MFC message loop.
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt; How to do this?
&lt;br&gt;&amp;gt; Can you give an example?
&lt;br&gt;&lt;br&gt;Look at the source for TnFXApp::run() and FXApp::run(). Basically it 
&lt;br&gt;runs via getNextEvent() and dispatchEvent().
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I think I need to use FXObject...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; struct Data;
&lt;br&gt;&amp;gt; class Receiver: public FXObject
&lt;br&gt;&amp;gt; {
&lt;br&gt;&amp;gt; public:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; ...
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; /** For sync calls. */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; void syncCall(Data *data);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; /** For async calls. */
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; long &amp;nbsp;tryHandle (FXObject *sender, FXSelector sel, void *ptr);
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; For sync call from worker thread I can do:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; m_receiver-&amp;gt;syncCall(m_data);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; For async:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; m_receiver-&amp;gt;getEventLoop()-&amp;gt;postAsyncMessage(bla bla);
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; How to pump Receiver message system from MFC message lopp?
&lt;/div&gt;&lt;br&gt;See above.
&lt;br&gt;&lt;br&gt;If you wish to invoke some synchronous call which isn't threadsafe, 
&lt;br&gt;you should set up a message handler which receives async messages 
&lt;br&gt;from other threads and executes the required call. I personally would 
&lt;br&gt;have it pass a BoundFunctor such that any thread can invoke any 
&lt;br&gt;function in any other thread arbitrarily. I have an implementation of 
&lt;br&gt;this actually in Tn but not TnFOX - it wouldn't be hard to port over 
&lt;br&gt;though. I might add that to the todo list actually.
&lt;br&gt;&lt;br&gt;&amp;gt; PS Is this ok, what I write to you personally instead of to maillist?
&lt;br&gt;&lt;br&gt;I'd prefer the mailing list so others can search it in the future.
&lt;br&gt;&lt;br&gt;HTH,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19514158&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFox-application-in-DLL-and-threads-tp19439923p19514158.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19470521</id>
	<title>Re: TnFox application in DLL and threads</title>
	<published>2008-09-13T06:26:59Z</published>
	<updated>2008-09-13T06:26:59Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 12 Sep 2008 at 0:15, Ck wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; But program's API is not threadsafe. And I must call API functions from 
&lt;br&gt;&amp;gt; the dll thread.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; In dll many threads with calculations and some GUI windows.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Worker thread must call API functions (but it can't).
&lt;br&gt;&amp;gt; I decided to send events/messages to main dll thread so API can be 
&lt;br&gt;&amp;gt; safely called.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; How I can attached to dll thread?
&lt;br&gt;&amp;gt; Can i receive in main (dll) thread event form worker thread?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I use MFC, TnFOX-0.88-FOXv1.6.33, MCVC++ 2005.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; PS Sorry for english)
&lt;/div&gt;&lt;br&gt;TnFOX copies the Windows model, so each thread has its own window 
&lt;br&gt;stack which only it can access. Multiple threads can have multiple 
&lt;br&gt;window stacks.
&lt;br&gt;&lt;br&gt;As you correctly point out, if a worker thread wishes to access a 
&lt;br&gt;window stack belonging to a different thread, it must post a message 
&lt;br&gt;to that thread using TnFXApp::postAsyncMessage() or more conveniently
&lt;br&gt;wndh-&amp;gt;getEventLoop()-&amp;gt;postAsyncMessage().
&lt;br&gt;&lt;br&gt;If your main thread is a MFC thread, then you'll need to pump the FOX 
&lt;br&gt;message dispatch system manually from within the MFC message loop.
&lt;br&gt;&lt;br&gt;Does this help? Your email was a bit unclear.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19470521&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFox-application-in-DLL-and-threads-tp19439923p19470521.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-19439923</id>
	<title>TnFox application in DLL and threads</title>
	<published>2008-09-11T10:15:54Z</published>
	<updated>2008-09-11T10:15:54Z</updated>
	<author>
		<name>CK-8</name>
	</author>
	<content type="html">Hi.
&lt;br&gt;&lt;br&gt;I'm writing dll for some program.
&lt;br&gt;And i want to use TnFox in this dll.
&lt;br&gt;&lt;br&gt;I found topics:
&lt;br&gt;&amp;nbsp; &amp;nbsp;Using tnfox in a COM component
&lt;br&gt;&amp;nbsp; &amp;nbsp;Question about launching application itself in a separate thread
&lt;br&gt;&lt;br&gt;and tried to create Window in dll.
&lt;br&gt;Ok. TnFox application works fine in dll.
&lt;br&gt;&lt;br&gt;But program's API is not threadsafe. And I must call API functions from 
&lt;br&gt;the dll thread.
&lt;br&gt;&lt;br&gt;In dll many threads with calculations and some GUI windows.
&lt;br&gt;&lt;br&gt;Worker thread must call API functions (but it can't).
&lt;br&gt;I decided to send events/messages to main dll thread so API can be 
&lt;br&gt;safely called.
&lt;br&gt;&lt;br&gt;How I can attached to dll thread?
&lt;br&gt;Can i receive in main (dll) thread event form worker thread?
&lt;br&gt;&lt;br&gt;I use MFC, TnFOX-0.88-FOXv1.6.33, MCVC++ 2005.
&lt;br&gt;&lt;br&gt;PS Sorry for english)
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
&lt;br&gt;Build the coolest Linux based applications with Moblin SDK &amp; win great prizes
&lt;br&gt;Grand prize is a trip for two to an Open Source event anywhere in the world
&lt;br&gt;&lt;a href=&quot;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://moblin-contest.org/redirect.php?banner_id=100&amp;url=/&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=19439923&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFox-application-in-DLL-and-threads-tp19439923p19439923.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-4299453</id>
	<title>Re: Question about launching application itself in a separate thread</title>
	<published>2006-05-09T07:03:51Z</published>
	<updated>2006-05-09T07:03:51Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 8 May 2006 at 11:15, David De Weerdt wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I'm wondering how I can accomplish the following:
&lt;br&gt;&amp;gt; I want to use COM to start the GUI from a client process. So I have a
&lt;br&gt;&amp;gt; COM-server process running that has a launch command which is called
&lt;br&gt;&amp;gt; by the COM-client.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; this launch command on the server basically looks like:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; int launch(int argc, char** argv) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FX::FXProcess myprocess(argc, argv);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; FX::TnFXApp application(&amp;quot;foo&amp;quot;, &amp;quot;bar&amp;quot;);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; application.init(argc, argv);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; MyThread primaryLoop(&amp;application);
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return application.run(primaryLoop);
&lt;br&gt;&amp;gt; }
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; but of course this does not return until the application ends. What I
&lt;br&gt;&amp;gt; want is that the primaryLoop starts (and thus starts the GUI), the GUI
&lt;br&gt;&amp;gt; is kept running and that this launch function still returns.
&lt;br&gt;&amp;gt; In the past I did this with putting the application.run method in an
&lt;br&gt;&amp;gt; FXThread, but I can not do this in TnFOX anymore.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I think it is trivial what i want to do, but i cannot see how to do it :-)
&lt;/div&gt;&lt;br&gt;What you could do, and I stress this will only work on Windows, is 
&lt;br&gt;run the message pump for MyThread and just not bother for the main 
&lt;br&gt;thread.
&lt;br&gt;&lt;br&gt;Therefore, you'd do everything you're doing except that instead of 
&lt;br&gt;return application.run(primaryLoop), you'd invoke 
&lt;br&gt;primaryLoop.start(true). This will cause launch() to return 
&lt;br&gt;immediately, which means FXProcess will get destroyed along with 
&lt;br&gt;TnFXApp.
&lt;br&gt;&lt;br&gt;Therefore you need to move those into static FXAutoPtr's so they 
&lt;br&gt;persist as long as TnFOX code is running. You should then at some 
&lt;br&gt;point before program termination but after the TnFOX code has 
&lt;br&gt;finished destroy the TnFXApp and the FXProcess.
&lt;br&gt;&lt;br&gt;If you want some hints on how to do this, look at the code in 
&lt;br&gt;Python/converters.cxx which has to temporarily instantiate a 
&lt;br&gt;FXProcess when TnFOX is loaded into python as a module and then 
&lt;br&gt;correctly deinitialise stuff when it gets kicked out of python. It 
&lt;br&gt;uses FXPtrHold rather than FXAutoPtr, but the process is very 
&lt;br&gt;similar.
&lt;br&gt;&lt;br&gt;Hope this helps.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;Using Tomcat but need to do more? Need to support web services, security?
&lt;br&gt;Get stuff done quickly with pre-integrated technology to make your job easier
&lt;br&gt;Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=4299453&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Question-about-launching-application-itself-in-a-separate-thread-tp4285667p4299453.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-4292033</id>
	<title>Re: Re: followup on</title>
	<published>2006-05-06T12:42:22Z</published>
	<updated>2006-05-06T12:42:22Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 5 May 2006 at 10:36, David De Weerdt wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; apparantly CopyCursor is a macro that is defined by winuser.h, so
&lt;br&gt;&amp;gt; &amp;gt; including winuser.h will result in this compilation problem. Renaming
&lt;br&gt;&amp;gt; &amp;gt; all references to CopyCursor from CopyCursor to TnCopyCursor for
&lt;br&gt;&amp;gt; &amp;gt; example, resolved the problem.
&lt;br&gt;&lt;br&gt;I have committed fixes to SVN at 
&lt;br&gt;&lt;a href=&quot;http://svn.berlios.de/viewcvs/tnfox/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://svn.berlios.de/viewcvs/tnfox/&lt;/a&gt;.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;Using Tomcat but need to do more? Need to support web services, security?
&lt;br&gt;Get stuff done quickly with pre-integrated technology to make your job easier
&lt;br&gt;Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=4292033&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/followup-on-%22building-issue-with-TnFox-0.86%22-tp4244333p4292033.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-4245603</id>
	<title>Re: Re: followup on</title>
	<published>2006-05-05T05:36:40Z</published>
	<updated>2006-05-05T05:36:40Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 5 May 2006 at 10:36, David De Weerdt wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; Ok, found the problem,
&lt;br&gt;&amp;gt; &amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; apparantly CopyCursor is a macro that is defined by winuser.h, so
&lt;br&gt;&amp;gt; &amp;gt; including winuser.h will result in this compilation problem. Renaming
&lt;br&gt;&amp;gt; &amp;gt; all references to CopyCursor from CopyCursor to TnCopyCursor for
&lt;br&gt;&amp;gt; &amp;gt; example, resolved the problem.
&lt;br&gt;&lt;br&gt;How wonderful of Microsoft! :(
&lt;br&gt;&lt;br&gt;I'll commit a fix to SVN, but in the meantime your problems appear to 
&lt;br&gt;be caused by defining FXINLINE_MUTEX_IMPLEMENTATION. If you can wait 
&lt;br&gt;to tomorrow I'll have a full fix in SVN as I don't think it's ever 
&lt;br&gt;been tested on msvc8. Until then, best undefine it!
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;Using Tomcat but need to do more? Need to support web services, security?
&lt;br&gt;Get stuff done quickly with pre-integrated technology to make your job easier
&lt;br&gt;Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=4245603&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/followup-on-%22building-issue-with-TnFox-0.86%22-tp4244333p4245603.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-4244953</id>
	<title>Re: followup on</title>
	<published>2006-05-05T04:36:34Z</published>
	<updated>2006-05-05T04:36:34Z</updated>
	<author>
		<name>David De Weerdt</name>
	</author>
	<content type="html">&amp;gt; 
&lt;br&gt;&amp;gt; Ok, found the problem,
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; apparantly CopyCursor is a macro that is defined by winuser.h, so
&lt;br&gt;&amp;gt; including winuser.h will result in this compilation problem. Renaming
&lt;br&gt;&amp;gt; all references to CopyCursor from CopyCursor to TnCopyCursor for
&lt;br&gt;&amp;gt; example, resolved the problem.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; David De Weerdt
&lt;br&gt;&lt;br&gt;Compilation went fine now, but now I am unable to link:
&lt;br&gt;&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;private: int __thiscall
&lt;br&gt;FX::FXAtomicInt::get(void)const &amp;quot; (?get@FXAtomicInt@FX@@ABEHXZ) already defined
&lt;br&gt;in FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;public: __thiscall FX::FXAtomicInt::operator
&lt;br&gt;int(void)const &amp;quot; (??BFXAtomicInt@FX@@QBEHXZ) already defined in FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;private: int __thiscall
&lt;br&gt;FX::FXAtomicInt::set(int)&amp;quot; (?set@FXAtomicInt@FX@@AAEHH@Z) already defined in
&lt;br&gt;FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;public: int __thiscall
&lt;br&gt;FX::FXAtomicInt::operator=(int)&amp;quot; (??4FXAtomicInt@FX@@QAEHH@Z) already defined in
&lt;br&gt;FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;private: int __thiscall
&lt;br&gt;FX::FXAtomicInt::incp(void)&amp;quot; (?incp@FXAtomicInt@FX@@AAEHXZ) already defined in
&lt;br&gt;FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;public: int __thiscall
&lt;br&gt;FX::FXAtomicInt::operator++(int)&amp;quot; (??EFXAtomicInt@FX@@QAEHH@Z) already defined
&lt;br&gt;in FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;private: int __thiscall
&lt;br&gt;FX::FXAtomicInt::pinc(void)&amp;quot; (?pinc@FXAtomicInt@FX@@AAEHXZ) already defined in
&lt;br&gt;FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;public: int __thiscall
&lt;br&gt;FX::FXAtomicInt::operator++(void)&amp;quot; (??EFXAtomicInt@FX@@QAEHXZ) already defined
&lt;br&gt;in FXApp.obj
&lt;br&gt;FXColorWheel.obj : error LNK2005: &amp;quot;private: int __thiscall
&lt;br&gt;FX::FXAtomicInt::finc(void)&amp;quot; (?finc@FXAtomicInt@FX@@AAEHXZ) already defined in
&lt;br&gt;FXApp.obj
&lt;br&gt;...
&lt;br&gt;&lt;br&gt;I get this for a lot of files, always the symbol already seems to be defined in
&lt;br&gt;FXApp.obj, even for TnFXApp.obj I get this problem.
&lt;br&gt;&lt;br&gt;Am I alone with this problem? :-)
&lt;br&gt;&lt;br&gt;David De Weerdt
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;Using Tomcat but need to do more? Need to support web services, security?
&lt;br&gt;Get stuff done quickly with pre-integrated technology to make your job easier
&lt;br&gt;Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=120709&amp;bid=263057&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=4244953&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/followup-on-%22building-issue-with-TnFox-0.86%22-tp4244333p4244953.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3145809</id>
	<title>Re: build error on FXApp.cpp</title>
	<published>2006-02-27T06:10:14Z</published>
	<updated>2006-02-27T06:10:14Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 21:11, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3145809&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jayn@...&lt;/a&gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I see now that I did have the Fox compatibility definition in the
&lt;br&gt;&amp;gt; SConstruct file for the fox_tests that I sent you, and so that was the
&lt;br&gt;&amp;gt; problem with image.cpp that I sent. &amp;nbsp;But I see that gltest.cpp still fails
&lt;br&gt;&amp;gt; in both cases, as well as memmap.cpp.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Without FX_FOXCOMPAT defined, these &amp;nbsp;four fail
&lt;br&gt;&amp;gt; 1. gltest.cpp &amp;nbsp;gltest.cpp:163: error: call of overloaded 'strdup(const
&lt;br&gt;&amp;gt; char*&amp;)' is ambiguous
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 2. memmap.cpp memmap.cpp:52: error: 'FXMemMap' was not declared in this scope
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 3. imageviewer.cpp imageviewer.cpp:522: error: 'FXFileStream' was not
&lt;br&gt;&amp;gt; declared in this scope
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 4. image.cpp image.cpp:363: error: 'FXFileStream' was not declared in this
&lt;br&gt;&amp;gt; scope
&lt;/div&gt;&lt;br&gt;Yeah, FXFileStream and FXMemMap are among the classes only supported 
&lt;br&gt;with the FX_FOXCOMPAT option. I put a note about this in 
&lt;br&gt;foxtests/!ReadmeFirst.txt
&lt;br&gt;&lt;br&gt;&amp;gt; With FX_FOXCOMPAT defined, adding the line below to your SConscript
&lt;br&gt;&amp;gt; env['CPPDEFINES']+=[ &amp;quot;FX_FOXCOMPAT&amp;quot; ]
&lt;br&gt;&amp;gt; only these two fail, but I'm guessing the problem may be that the entire
&lt;br&gt;&amp;gt; library needs to be rebuilt with that FX_FOXCOMPAT defined. &amp;nbsp;Is that
&lt;br&gt;&amp;gt; right?
&lt;br&gt;&lt;br&gt;Yes, the entire library needs to be rebuilt. It's easier just to set 
&lt;br&gt;the option inside config.py rather than hack the SConstruct files.
&lt;br&gt;&lt;br&gt;&amp;gt; 1. gltest.cpp ... the strdup problem
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 2. memmap.cpp ... memmap.cpp:52: undefined reference to
&lt;br&gt;&amp;gt; `FX::FXMemMap::FXMemMap()'
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I'm not sure the compatibility option is necessary for these examples. 
&lt;br&gt;&amp;gt; I'll look at what changes are required to fix the 4 examples so that they
&lt;br&gt;&amp;gt; work with FX_FOXCOMPAT undefined.
&lt;br&gt;&lt;br&gt;Well, I'm hesitant to change the code too much. FXMemMap should be 
&lt;br&gt;replaced with QMemMap which probably means rewriting the test. I 
&lt;br&gt;think that can't be ported.
&lt;br&gt;&lt;br&gt;FXFileStream is much easier - if you use FXFile plus a FXStream, then 
&lt;br&gt;both of these are present without FX_FOXCOMPAT and you're still not 
&lt;br&gt;using any TnFOX-specific code.
&lt;br&gt;&lt;br&gt;As far as the strdup problem in gltest.cpp, I'm definitely not 
&lt;br&gt;getting that on either SuSE 10 or Windows anymore. Of course, if 
&lt;br&gt;you're still having a problem, a simple FX::strdup may be the only 
&lt;br&gt;answer.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3145809&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-build-error-on-FXApp.cpp-tp3129877p3145809.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3138442</id>
	<title>Re: TnFOX Size?</title>
	<published>2006-02-26T16:04:03Z</published>
	<updated>2006-02-26T16:04:03Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 17:57, The Devils Jester wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; When looking on the TnFOXDocs.h I noticed that with the compatiblity layer
&lt;br&gt;&amp;gt; turned off, that it says these are not compiled:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Not compiled:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXDirBox
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXDirDialog
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXDirList
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXDirSelector
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXDLL
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXDriveBox
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXFileDialog
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXFileList
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXFileSelector
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXPrintDialog
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXReplaceDialog
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; \li FX::FXSearchDialog
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; is that old info, or could that be the reson I get FXFile issues?
&lt;/div&gt;&lt;br&gt;No that's when you define BUILDING_TCOMMON. You'll never do that in 
&lt;br&gt;all likelihood.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3138442&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFOX-Size--tp3129694p3138442.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3138341</id>
	<title>Re: Trying to move from FOX 1.6.0 (dev) to TnFOX, some errors encountered:</title>
	<published>2006-02-26T16:03:06Z</published>
	<updated>2006-02-26T16:03:06Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 17:37, The Devils Jester wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I dont see a foxtests folder, I will look at the one in TestSUite and see I
&lt;br&gt;&amp;gt; can make heads or tails of it, this is how I normally compile my app:
&lt;br&gt;&lt;br&gt;Sorry, got bogged down with fixing a separate issue. It's in SVN now.
&lt;br&gt;&lt;br&gt;&amp;gt; g++ main.cpp -o myapp -L/usr/lib -L/usr/X11R6/lib -lGL -L./system -lpng -
&lt;br&gt;&amp;gt; lfmod-3.74.1 -lFOX-1.6 -lXext &amp;nbsp;-ldl -lpthread -lX11 -lz -fpic -DHAVE_GL_H=1
&lt;br&gt;&amp;gt; -DHAVE_PNG_H=1 -I ./include/FOX -I ./include/FMOD
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I need to somehow make scons do that exact thing, is there some kind of auto
&lt;br&gt;&amp;gt; scon file generator?
&lt;br&gt;&lt;br&gt;It can be as simple as:
&lt;br&gt;&lt;br&gt;env=Environment()
&lt;br&gt;env.Program(&amp;quot;main.cpp&amp;quot;, LIBPATH=['/usr/lib', '/usr/X11R6/lib'], 
&lt;br&gt;LIBS=['GL', 'png', 'fmod-3.74.1', 'FOX-1.6', 'Xext', 'dl', 'pthread', 
&lt;br&gt;'X11', 'z'], CPPFLAGS=['-fpic'], CPPDEFINES=[('HAVE_GL_H', 1), 
&lt;br&gt;('HAVE_PNG_H', 1)], INCLUDES=['./include/FOX', './include/FMOD'])
&lt;br&gt;&lt;br&gt;However, both FOX and TnFOX require a little more than that and more 
&lt;br&gt;importantly, a lot of the above is autogenerated for you. Look at 
&lt;br&gt;that foxtests folder.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3138341&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Trying-to-move-from-FOX-1.6.0-%28dev%29-to-TnFOX%2C-some-errors-encountered%3A-tp3130045p3138341.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3138354</id>
	<title>Re: build error on FXApp.cpp</title>
	<published>2006-02-26T15:57:50Z</published>
	<updated>2006-02-26T15:57:50Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 11:39, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3138354&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;jayn@...&lt;/a&gt; wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 1. had to specify FX::strdup(tmp) to keep the compiler from aborting
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; with
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; a conflict error from one included by string.h in gltest.cpp
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Should be fixed in SVN. Haven't tested it though.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; This one not fixed. &amp;nbsp;Several strdup definitions in the includes, but I
&lt;br&gt;&amp;gt; haven't looked into this further.
&lt;br&gt;&lt;br&gt;I've added the fox test suite. I fixed these strdup problems by 
&lt;br&gt;adding WIN32_LEAN_AND_MEAN to fx3d.h so it doesn't include WinSock.h
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;nbsp; /home/jay/tnfox/TnFOX/include/fx.h:294: error: 'timeval' is already
&lt;br&gt;&amp;gt; declared in this scope
&lt;br&gt;&amp;gt; &amp;nbsp; /home/jay/tnfox/TnFOX/include/fx.h:299: error: 'strdup' is already
&lt;br&gt;&amp;gt; declared in this scope
&lt;br&gt;&amp;gt; &amp;nbsp; ../Tn/TFileBySyncDev.cxx: In member function 'void
&lt;br&gt;&amp;gt; Tn::TFileBySyncDevPrivate::dynchkBuffers()':
&lt;br&gt;&amp;gt; &amp;nbsp; ../Tn/TFileBySyncDev.cxx:133: warning: format '%d' expects type 'int',
&lt;br&gt;&amp;gt; but argument 2 has type 'size_t'
&lt;br&gt;&amp;gt; &amp;nbsp; ../Tn/TFileBySyncDev.cxx: In member function
&lt;br&gt;&amp;gt; 'FX::FXIPCChannel::HandledCode
&lt;br&gt;&amp;gt; Tn::TFileBySyncDevPrivate::msgReceived(FX::FXIPCMsg*)':
&lt;br&gt;&amp;gt; &amp;nbsp; ../Tn/TFileBySyncDev.cxx:260: warning: converting negative value
&lt;br&gt;&amp;gt; '-0x00000000000000001' to 'unsigned int'
&lt;br&gt;&amp;gt; &amp;nbsp; scons: *** [Debug_g++_x64_0/main.o] Error 1
&lt;br&gt;&amp;gt; &amp;nbsp; scons: building terminated because of errors.
&lt;/div&gt;&lt;br&gt;Fixed.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt; If ControlPanel.cpp defines its own DEFAULT_SPACING, it will need
&lt;br&gt;&amp;gt; &amp;gt; changing. I fixed the QSSLDevice.h problem by renaming None to
&lt;br&gt;&amp;gt; &amp;gt; NoEncryption. It's in SVN.
&lt;br&gt;&lt;br&gt;Fixed this.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 3. groupbox.cpp doesn't compile because of conflicting definitions of
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; timeval shown below.
&lt;br&gt;&amp;gt; &amp;gt; Hopefully fixed in SVN but not tested.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; This not fixed either. See 3. above
&lt;br&gt;&lt;br&gt;Fixed this.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 4. iconlist.cpp builds, but on running produces a bunch of assert
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; messages.
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; TYPE:SEL_UPDATE &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ID:1 &amp;nbsp; &amp;nbsp; SENDER: FXIconList &amp;nbsp; &amp;nbsp; &amp;nbsp;PTR:
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 0x00000000 #1 &amp;nbsp; src/FXDebugTarget.cpp:155:
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; FXASSERT(ARRAYNUMBER(messageTypeName)==SEL_LAST) failed.
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 2 &amp;nbsp; Deleted secure heap
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Unhandled Signal 0x2 (User interrupt)
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; at address (nil) - immediate exit!
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Dunno about this one.
&lt;/div&gt;&lt;br&gt;Fixed the assertion error.
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 5. imageviewer.cpp builds, but on running and selecting a gif file, it
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; aborts with an error below (the first two exceptions are at startup).
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; [jay@localhost tests]$ ./imageviewer
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; FXApp: Using font 'luxi sans,80,normal,normal' for normal font
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; FXException id 1 created, 'File '/home/jay/.foxrc/FoxTest/FoxTest' not
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; found' at line 275 in src/QFile.cxx thread -1425916512
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; FXException id 2 created, 'File '/home/jay/.foxrc/FoxTest/ImageViewer'
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; not
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; found' at line 275 in src/QFile.cxx thread -1425916512
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Deleted secure heap
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; Unhandled Signal 0xb (Segmentation fault [Address not mapped to object])
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; &amp;nbsp; &amp;nbsp; at address (nil) - immediate exit!
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Oh dear. I will investigate when I next get time.
&lt;/div&gt;&lt;br&gt;Fixed.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; 6.memmap.cpp fails to build. &amp;nbsp;I haven't looked into this.
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; memmap.o(.text+0xcc): In function `main':
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; /home/jay/tnfox/TnFOX/fox_tests/tests/memmap.cpp:52: undefined reference
&lt;br&gt;&amp;gt; &amp;gt;&amp;gt; to `FX::FXMemMap::FXMemMap()'
&lt;br&gt;&amp;gt; &amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; It should work if you enable the FOX compat layer in config.py.
&lt;br&gt;&lt;br&gt;Tested this and indeed it does work. Did you compile your TnFOX 
&lt;br&gt;library with the compat layer on?
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3138354&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Re%3A-build-error-on-FXApp.cpp-tp3129877p3138354.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3137699</id>
	<title>Re: TnFOX Size?</title>
	<published>2006-02-26T14:57:32Z</published>
	<updated>2006-02-26T14:57:32Z</updated>
	<author>
		<name>Leto Atreides</name>
	</author>
	<content type="html">When looking on the TnFOXDocs.h I noticed that with the compatiblity layer turned off, that it says these are not compiled:&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Not compiled:&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXDirBox&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXDirDialog&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXDirList&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXDirSelector&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXDLL&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXDriveBox&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXFileDialog&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXFileList&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXFileSelector&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXPrintDialog&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXReplaceDialog&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; \li FX::FXSearchDialog&lt;br&gt;
&lt;br&gt;
is that old info, or could that be the reson I get FXFile issues?&lt;br&gt;
&lt;br&gt;
--------------------------------------------------------------------------&lt;br&gt;Talent is not something you learn, its something you refine.&lt;br&gt;&lt;br&gt;If you make something that any idiot can use, only idiots will use it. 
&lt;br&gt;

</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFOX-Size--tp3129694p3137699.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3137529</id>
	<title>Re: Trying to move from FOX 1.6.0 (dev) to TnFOX, some errors encountered:</title>
	<published>2006-02-26T14:37:43Z</published>
	<updated>2006-02-26T14:37:43Z</updated>
	<author>
		<name>Leto Atreides</name>
	</author>
	<content type="html">I dont see a foxtests folder, I will look at the one in TestSUite and
see I can make heads or tails of it, this is how I normally compile my
app: &lt;br&gt;
&lt;br&gt;
(a shell script that does the following)&lt;br&gt;
&lt;br&gt;
g++ main.cpp -o myapp -L/usr/lib -L/usr/X11R6/lib -lGL -L./system -lpng
-lfmod-3.74.1 -lFOX-1.6 -lXext&amp;nbsp; -ldl -lpthread -lX11 -lz -fpic
-DHAVE_GL_H=1&amp;nbsp; -DHAVE_PNG_H=1 -I ./include/FOX -I ./include/FMOD&lt;br&gt;
&lt;br&gt;
I need to somehow make scons do that exact thing, is there some kind of auto scon file generator?&lt;br&gt;&lt;br&gt;&lt;div&gt;&lt;span class=&quot;gmail_quote&quot;&gt;On 2/26/06, &lt;b class=&quot;gmail_sendername&quot;&gt;Niall Douglas&lt;/b&gt; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3137529&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;s_sourceforge@...&lt;/a&gt;&amp;gt; wrote:&lt;/span&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;On 26 Feb 2006 at 12:16, The Devils Jester wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I will attempt to make a small test app using the same functions that I am&lt;br&gt;&amp;gt; using, see if it compiles (if not, I will mail the source).&amp;nbsp;&amp;nbsp;I can also&lt;br&gt;&amp;gt; attempt to compile the test suite to see if its the compiler or not.
&lt;br&gt;&lt;br&gt;You can try the new set of FOX tests in SVN. Actually, I haven't&lt;br&gt;uploaded it yet but I will within the hour.&lt;br&gt;&lt;br&gt;&amp;gt; Do you have any quick and easy ways to make a scons setup so I can use that&lt;br&gt;&amp;gt; to compile my app and maybe get a better understanding of whats going on?
&lt;br&gt;&lt;br&gt;Scons is very easy to use. I'd recommend copying the&lt;br&gt;foxtests/SConstruct file and altering as appropriate. I derived that&lt;br&gt;SConstruct from the TestSuite/CommonSConstruct.py in about five&lt;br&gt;minutes.&lt;br&gt;&lt;br&gt;Obviously, you may find the scons man page useful. There are FAQ's
&lt;br&gt;and tutorials on the web too. BTW, I'll apologise now for the&lt;br&gt;structure of my SConstruct files - I began them well before scons&lt;br&gt;matured and I had to work around misfeatures.&lt;br&gt;&lt;br&gt;Cheers,&lt;br&gt;Niall&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;-------------------------------------------------------&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;amp;kid=110944&amp;amp;bid=241720&amp;amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;amp;kid=110944&amp;amp;bid=241720&amp;amp;dat=121642
&lt;/a&gt;&lt;br&gt;_______________________________________________&lt;br&gt;Tnfox-discussion mailing list&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3137529&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;
https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;&lt;br clear=&quot;all&quot;&gt;&lt;br&gt;-- &lt;br&gt;Talent is not something you learn, its something you refine.&lt;br&gt;&lt;br&gt;If you make something that any idiot can use, only idiots will use it. 
&lt;br&gt;&lt;br&gt;&amp;lt;a href=&amp;quot;&lt;a href=&quot;http://www.spreadfirefox.com/?q=affiliates&amp;amp;amp;id=0&amp;amp;amp;t=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.spreadfirefox.com/?q=affiliates&amp;amp;amp;id=0&amp;amp;amp;t=1&lt;/a&gt;&amp;quot;&amp;gt;Get Firefox!&amp;lt;/a&amp;gt;
</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Trying-to-move-from-FOX-1.6.0-%28dev%29-to-TnFOX%2C-some-errors-encountered%3A-tp3130045p3137529.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3137141</id>
	<title>Re: Trying to move from FOX 1.6.0 (dev) to TnFOX, some errors encountered:</title>
	<published>2006-02-26T13:52:20Z</published>
	<updated>2006-02-26T13:52:20Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 12:16, The Devils Jester wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I will attempt to make a small test app using the same functions that I am
&lt;br&gt;&amp;gt; using, see if it compiles (if not, I will mail the source). &amp;nbsp;I can also
&lt;br&gt;&amp;gt; attempt to compile the test suite to see if its the compiler or not.
&lt;br&gt;&lt;br&gt;You can try the new set of FOX tests in SVN. Actually, I haven't 
&lt;br&gt;uploaded it yet but I will within the hour.
&lt;br&gt;&lt;br&gt;&amp;gt; Do you have any quick and easy ways to make a scons setup so I can use that
&lt;br&gt;&amp;gt; to compile my app and maybe get a better understanding of whats going on?
&lt;br&gt;&lt;br&gt;Scons is very easy to use. I'd recommend copying the 
&lt;br&gt;foxtests/SConstruct file and altering as appropriate. I derived that 
&lt;br&gt;SConstruct from the TestSuite/CommonSConstruct.py in about five 
&lt;br&gt;minutes.
&lt;br&gt;&lt;br&gt;Obviously, you may find the scons man page useful. There are FAQ's 
&lt;br&gt;and tutorials on the web too. BTW, I'll apologise now for the 
&lt;br&gt;structure of my SConstruct files - I began them well before scons 
&lt;br&gt;matured and I had to work around misfeatures.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3137141&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Trying-to-move-from-FOX-1.6.0-%28dev%29-to-TnFOX%2C-some-errors-encountered%3A-tp3130045p3137141.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3136747</id>
	<title>Re: TnFOX Size?</title>
	<published>2006-02-26T13:09:07Z</published>
	<updated>2006-02-26T13:09:07Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 12:12, The Devils Jester wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I actually did use 3.4 for the compile of TnFOX (3.3 wouldnt work), and its
&lt;br&gt;&amp;gt; still a pretty large lib compared to FOX. &amp;nbsp;Stripping can probably take a
&lt;br&gt;&amp;gt; small chunk away but not enough to make a large difference.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; What is all being compiled into TnFOX that makes it so much larger? &amp;nbsp;All I
&lt;br&gt;&amp;gt; need is basic GUI code with the IPC features.
&lt;br&gt;&lt;br&gt;Well there's an additional 35,000 lines of code in there which is 
&lt;br&gt;about a third more than FOX v1.4. Here are some figures (for 
&lt;br&gt;msvc7.1):
&lt;br&gt;&lt;br&gt;FOX 1.6 (with /O2): 2.14Mb
&lt;br&gt;TnFOX no GUI: 0.95Mb
&lt;br&gt;TnFOX minimal: 2.97Mb (+39%)
&lt;br&gt;TnFOX full: 4.4Mb (+106%)
&lt;br&gt;&lt;br&gt;If you want something approaching minimal, see the FAQ section in 
&lt;br&gt;include/TnFOXDocs.h from SVN. But in short, disable the FOX compat 
&lt;br&gt;layer, disable openssl and the graphics libs (in sconslib.py) and 
&lt;br&gt;delete the embedded copy of sqlite3 in the src directory.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3136747&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFOX-Size--tp3129694p3136747.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3135609</id>
	<title>Re: Trying to move from FOX 1.6.0 (dev) to TnFOX, some errors encountered:</title>
	<published>2006-02-26T11:16:03Z</published>
	<updated>2006-02-26T11:16:03Z</updated>
	<author>
		<name>Leto Atreides</name>
	</author>
	<content type="html">I will attempt to make a small test app using the same functions that I am using, see if it compiles (if not, I will mail the source).&amp;nbsp; I can also attempt to compile the test suite to see if its the compiler or not.&lt;br&gt;&lt;br&gt;
Do you have any quick and easy ways to make a scons setup so I can use that to compile my app and maybe get a better understanding of whats going on?&lt;br&gt;&lt;br&gt;&lt;div&gt;&lt;span class=&quot;gmail_quote&quot;&gt;On 2/26/06, &lt;b class=&quot;gmail_sendername&quot;&gt;
Niall Douglas&lt;/b&gt; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3135609&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;s_sourceforge@...&lt;/a&gt;&amp;gt; wrote:&lt;/span&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;
On 26 Feb 2006 at 9:53, The Devils Jester wrote:&lt;br&gt;&lt;br&gt;&amp;gt; I dont use scons or make or anything of the sort, its always been too&lt;br&gt;&amp;gt; complicated and too many files just to compile an app.&amp;nbsp;&amp;nbsp;I use a simple .sh&lt;br&gt;&amp;gt; script which calls g++ with my options (and a .bat which calls borland on
&lt;br&gt;&amp;gt; win), it may not be as portable as a makefile or scons, but it is much&lt;br&gt;&amp;gt; cleaner, smaller and easier.&lt;br&gt;&lt;br&gt;Ok, but you'll understand you may run into problems I can't see&lt;br&gt;because of this.&lt;br&gt;&lt;br&gt;&amp;gt; I dont mind a portable workarround for the timeval issue, as you stated I
&lt;br&gt;&amp;gt; would rather do this than make an unportable solution.&amp;nbsp;&amp;nbsp;What is your&lt;br&gt;&amp;gt; solution here?&lt;br&gt;&lt;br&gt;Well, try the latest from SVN. In fx.h it tells the compiler to&lt;br&gt;always use FX::timeval rather than ::timeval. This is fine unless you
&lt;br&gt;do direct calls into Unix, then you'll need to put a '::' before your&lt;br&gt;timeval.&lt;br&gt;&lt;br&gt;&amp;gt; I include fx.h and fx3d.h as the very first thing in my code so its not&lt;br&gt;&amp;gt; related to that in anyway.&amp;nbsp;&amp;nbsp;I get hundreds of errors from these FXFile and
&lt;br&gt;&amp;gt; friends because I have so many used in my app.&amp;nbsp;&amp;nbsp;I can attempt to include the&lt;br&gt;&amp;gt; FXSystem, FXDir, FXFile, etc... directly and see if that changes anything.&lt;br&gt;&lt;br&gt;fx.h includes everything. I don't see that as the problem.
&lt;br&gt;&lt;br&gt;&amp;gt; I dont use any fox thread or memory functions, or any similar low level&lt;br&gt;&amp;gt; functions, just the gui, string manipulation and file info.&amp;nbsp;&amp;nbsp;The only errors&lt;br&gt;&amp;gt; that I get are the file and directory missing function ones.&amp;nbsp;&amp;nbsp;Everything
&lt;br&gt;&amp;gt; else looks like it will compile without a hitch.&lt;br&gt;&lt;br&gt;It should all compile definitely - for example, nearly the entire FOX&lt;br&gt;examples suite compiles and runs perfectly even without the FOX&lt;br&gt;compat layer. Some of the FOX emulations aren't well tested and may
&lt;br&gt;cause problems, but they should all compile.&lt;br&gt;&lt;br&gt;Can you give me an example of some source which causes errors?&lt;br&gt;&lt;br&gt;Cheers,&lt;br&gt;Niall&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;amp;kid=110944&amp;amp;bid=241720&amp;amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;amp;kid=110944&amp;amp;bid=241720&amp;amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3135609&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion
&lt;/a&gt;&lt;br&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;&lt;br clear=&quot;all&quot;&gt;&lt;br&gt;-- &lt;br&gt;Talent is not something you learn, its something you refine.&lt;br&gt;&lt;br&gt;If you make something that any idiot can use, only idiots will use it. &lt;br&gt;&lt;br&gt;&amp;lt;a href=&amp;quot;
&lt;a href=&quot;http://www.spreadfirefox.com/?q=affiliates&amp;amp;amp;id=0&amp;amp;amp;t=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.spreadfirefox.com/?q=affiliates&amp;amp;amp;id=0&amp;amp;amp;t=1&lt;/a&gt;&amp;quot;&amp;gt;Get Firefox!&amp;lt;/a&amp;gt;
</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Trying-to-move-from-FOX-1.6.0-%28dev%29-to-TnFOX%2C-some-errors-encountered%3A-tp3130045p3135609.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3135614</id>
	<title>Re: TnFOX Size?</title>
	<published>2006-02-26T11:12:06Z</published>
	<updated>2006-02-26T11:12:06Z</updated>
	<author>
		<name>Leto Atreides</name>
	</author>
	<content type="html">I actually did use 3.4 for the compile of TnFOX (3.3 wouldnt work), and its still a pretty large lib compared to FOX.&amp;nbsp; Stripping can probably take a small chunk away but not enough to make a large difference.&amp;nbsp; &lt;br&gt;&lt;br&gt;What is all being compiled into TnFOX that makes it so much larger?&amp;nbsp; All I need is basic GUI code with the IPC features.
&lt;br&gt;&lt;br&gt;&lt;div&gt;&lt;span class=&quot;gmail_quote&quot;&gt;On 2/26/06, &lt;b class=&quot;gmail_sendername&quot;&gt;Niall Douglas&lt;/b&gt; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3135614&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;s_sourceforge@...&lt;/a&gt;&amp;gt; wrote:&lt;/span&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;&quot;&gt;
On 26 Feb 2006 at 9:43, The Devils Jester wrote:&lt;br&gt;&lt;br&gt;&amp;gt; I only care about turning off the features that I dont use that would have&lt;br&gt;&amp;gt; large impact on the lib size.&amp;nbsp;&amp;nbsp;7.5ish MB compared to 3.5ish MB is a huge&lt;br&gt;&amp;gt; difference.&amp;nbsp;&amp;nbsp;Know of any specific features that add alot of space?
&lt;br&gt;&lt;br&gt;Yes, GCC 3.3's template parser is not very good and generates a lot&lt;br&gt;of unnecessary code. This adds around 2Mb of unnecessary code. As&lt;br&gt;TnFOX uses a lot of templates, it's not like it can be compiled out.&lt;br&gt;&lt;br&gt;
Best thing is to move to a better compiler. They totally replaced the&lt;br&gt;template parser in 3.4 and the output shrinks massively, as well as&lt;br&gt;running a lot faster.&lt;br&gt;&lt;br&gt;If that's simply not possible, don't worry you'll get the binary
&lt;br&gt;shrink when Knoppix upgrades to 3.4. The current situation will be&lt;br&gt;temporary.&lt;br&gt;&lt;br&gt;Cheers,&lt;br&gt;Niall&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast&lt;br&gt;and join the prime developer group breaking into this new coding territory!&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;amp;kid=110944&amp;amp;bid=241720&amp;amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;
http://sel.as-us.falkag.net/sel?cmd=lnk&amp;amp;kid=110944&amp;amp;bid=241720&amp;amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________&lt;br&gt;Tnfox-discussion mailing list&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3135614&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;&lt;br clear=&quot;all&quot;&gt;
&lt;br&gt;-- &lt;br&gt;Talent is not something you learn, its something you refine.&lt;br&gt;&lt;br&gt;If you make something that any idiot can use, only idiots will use it. &lt;br&gt;&lt;br&gt;&amp;lt;a href=&amp;quot;&lt;a href=&quot;http://www.spreadfirefox.com/?q=affiliates&amp;amp;amp;id=0&amp;amp;amp;t=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;
http://www.spreadfirefox.com/?q=affiliates&amp;amp;amp;id=0&amp;amp;amp;t=1&lt;/a&gt;&amp;quot;&amp;gt;Get Firefox!&amp;lt;/a&amp;gt;
</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFOX-Size--tp3129694p3135614.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3134743</id>
	<title>Re: Trying to move from FOX 1.6.0 (dev) to TnFOX, some errors encountered:</title>
	<published>2006-02-26T09:40:11Z</published>
	<updated>2006-02-26T09:40:11Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 9:53, The Devils Jester wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I dont use scons or make or anything of the sort, its always been too
&lt;br&gt;&amp;gt; complicated and too many files just to compile an app. &amp;nbsp;I use a simple .sh
&lt;br&gt;&amp;gt; script which calls g++ with my options (and a .bat which calls borland on
&lt;br&gt;&amp;gt; win), it may not be as portable as a makefile or scons, but it is much
&lt;br&gt;&amp;gt; cleaner, smaller and easier.
&lt;br&gt;&lt;br&gt;Ok, but you'll understand you may run into problems I can't see 
&lt;br&gt;because of this.
&lt;br&gt;&lt;br&gt;&amp;gt; I dont mind a portable workarround for the timeval issue, as you stated I
&lt;br&gt;&amp;gt; would rather do this than make an unportable solution. &amp;nbsp;What is your
&lt;br&gt;&amp;gt; solution here?
&lt;br&gt;&lt;br&gt;Well, try the latest from SVN. In fx.h it tells the compiler to 
&lt;br&gt;always use FX::timeval rather than ::timeval. This is fine unless you 
&lt;br&gt;do direct calls into Unix, then you'll need to put a '::' before your 
&lt;br&gt;timeval.
&lt;br&gt;&lt;br&gt;&amp;gt; I include fx.h and fx3d.h as the very first thing in my code so its not
&lt;br&gt;&amp;gt; related to that in anyway. &amp;nbsp;I get hundreds of errors from these FXFile and
&lt;br&gt;&amp;gt; friends because I have so many used in my app. &amp;nbsp;I can attempt to include the
&lt;br&gt;&amp;gt; FXSystem, FXDir, FXFile, etc... directly and see if that changes anything.
&lt;br&gt;&lt;br&gt;fx.h includes everything. I don't see that as the problem.
&lt;br&gt;&lt;br&gt;&amp;gt; I dont use any fox thread or memory functions, or any similar low level
&lt;br&gt;&amp;gt; functions, just the gui, string manipulation and file info. &amp;nbsp;The only errors
&lt;br&gt;&amp;gt; that I get are the file and directory missing function ones. &amp;nbsp;Everything
&lt;br&gt;&amp;gt; else looks like it will compile without a hitch.
&lt;br&gt;&lt;br&gt;It should all compile definitely - for example, nearly the entire FOX 
&lt;br&gt;examples suite compiles and runs perfectly even without the FOX 
&lt;br&gt;compat layer. Some of the FOX emulations aren't well tested and may 
&lt;br&gt;cause problems, but they should all compile.
&lt;br&gt;&lt;br&gt;Can you give me an example of some source which causes errors?
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3134743&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Trying-to-move-from-FOX-1.6.0-%28dev%29-to-TnFOX%2C-some-errors-encountered%3A-tp3130045p3134743.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-3134702</id>
	<title>Re: TnFOX Size?</title>
	<published>2006-02-26T09:40:11Z</published>
	<updated>2006-02-26T09:40:11Z</updated>
	<author>
		<name>Niall Douglas</name>
	</author>
	<content type="html">On 26 Feb 2006 at 9:43, The Devils Jester wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I only care about turning off the features that I dont use that would have
&lt;br&gt;&amp;gt; large impact on the lib size. &amp;nbsp;7.5ish MB compared to 3.5ish MB is a huge
&lt;br&gt;&amp;gt; difference. &amp;nbsp;Know of any specific features that add alot of space?
&lt;br&gt;&lt;br&gt;Yes, GCC 3.3's template parser is not very good and generates a lot 
&lt;br&gt;of unnecessary code. This adds around 2Mb of unnecessary code. As 
&lt;br&gt;TnFOX uses a lot of templates, it's not like it can be compiled out.
&lt;br&gt;&lt;br&gt;Best thing is to move to a better compiler. They totally replaced the 
&lt;br&gt;template parser in 3.4 and the output shrinks massively, as well as 
&lt;br&gt;running a lot faster.
&lt;br&gt;&lt;br&gt;If that's simply not possible, don't worry you'll get the binary 
&lt;br&gt;shrink when Knoppix upgrades to 3.4. The current situation will be 
&lt;br&gt;temporary.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;Niall
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;-------------------------------------------------------
&lt;br&gt;This SF.Net email is sponsored by xPML, a groundbreaking scripting language
&lt;br&gt;that extends applications into web and mobile media. Attend the live webcast
&lt;br&gt;and join the prime developer group breaking into this new coding territory!
&lt;br&gt;&lt;a href=&quot;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sel.as-us.falkag.net/sel?cmd=lnk&amp;kid=110944&amp;bid=241720&amp;dat=121642&lt;/a&gt;&lt;br&gt;_______________________________________________
&lt;br&gt;Tnfox-discussion mailing list
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=3134702&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;Tnfox-discussion@...&lt;/a&gt;
&lt;br&gt;&lt;a href=&quot;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;https://lists.sourceforge.net/lists/listinfo/tnfox-discussion&lt;/a&gt;&lt;br&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/TnFOX-Size--tp3129694p3134702.html" />
</entry>

</feed>
