<HTML><HEAD></HEAD>
<BODY dir=ltr>
<DIV dir=ltr>
<DIV style="FONT-FAMILY: 'Calibri'; COLOR: #000000; FONT-SIZE: 12pt">
<DIV>Hello,</DIV>
<DIV> </DIV>
<DIV align=justify>I have been trying to compile and run Qyoto on Windows. I 
have manage to compile qyoto.dll and qt-dotnet.dll along with their smoke 
dependencies, using Visual Studio 2008 and 2010. </DIV>
<DIV align=justify>I had to comment out some parts of the code dealing with 
QAccessibleBridgePlugin and QAccessibleBridgeFactory in smokeqt and some parts 
dealing with QDBus in qyoto, to avoid undefined reference linking errors. If I 
understood well, those parts of Qt are not used on Windows so they do not exist 
in the binaries. Am I right? I also had to do minor modifications to CMake files 
and Visual Studio project files generated by them. For example, the compiler was 
set by default to the MS C# 2.0 compiler, which cannot compile qt-dotnet because 
it uses extension methods (C# 3.5). Changing the CMAKE_CSharp_COMPILER did not 
work. I edited qt-dotnet.vcxproj by hand.</DIV>
<DIV align=justify>I am saying all this so that if I did something I shouldn’t 
have someone can tell me. I had no experience with CMake or Qt internals before 
this, so I am trying stuff a bit blindly.</DIV>
<DIV align=justify> </DIV>
<DIV align=justify>So as I said I now have qyoto.dll, qt-dotnet.dll, 
smokebase.dll, and a dozen smokeqt*.dll. I wrote a small program to test the 
library:</DIV>
<DIV align=justify> </DIV>
<DIV><FONT size=2 face="Courier New">static int Main(string[] args)</FONT></DIV>
<DIV><FONT size=2 face="Courier New">{</FONT></DIV>
<DIV><FONT size=2 face="Courier New">  new QApplication(args);</FONT></DIV>
<DIV><FONT size=2 face="Courier New">  return 
QApplication.Exec();</FONT></DIV>
<DIV><FONT size=2 face="Courier New">}</FONT></DIV>
<DIV><FONT face="Courier New"></FONT> </DIV>
<DIV>The QApplication contructor ultimatly calls the native method 
CallSmokeMethod, which in turn raises an AccessViolationException. I’m kind of 
stuck. Prior messages in this mailing list about this exception refer to old 
qyoto code that has been fixed already. Could someone help me?</DIV>
<DIV> </DIV>
<DIV>Tools I am using:</DIV>
<DIV>- Windows 7 x64</DIV>
<DIV>- Visual Studio 2010 (also tried with 2008)</DIV>
<DIV>- CMake 2.8</DIV>
<DIV>- Qt 4.7.1 VS2008</DIV>
<DIV>- latest source code from qyoto, smokeqt and smokegen git 
repositories</DIV>
<DIV> </DIV>
<DIV>The trace (with some French but I am sure no one will bother :)):</DIV>
<DIV> </DIV>
<DIV><FONT size=2 face="Courier New">Exception non gérée: 
System.AccessViolationException: Tentative de lecture ou d'écriture de mémoire 
protégée. Cela indique souvent qu'une autre mémoire est endommagée.</FONT></DIV>
<DIV><FONT size=2 face="Courier New">   … 
Qyoto.SmokeInvocation.CallSmokeMethod(IntPtr smoke, Int32 methodId, IntPtr 
target, IntPtr sp, Int32 items)</FONT></DIV>
<DIV><FONT size=2 face="Courier New">   … 
Qyoto.SmokeInvocation.Invoke(String mungedName, String signature, Type 
returnType, Object[] args)</FONT></DIV>
<DIV><FONT size=2 face="Courier New">   … 
Qyoto.QApplication..ctor(String[] argv)</FONT></DIV>
<DIV><FONT size=2 face="Courier New">   … 
ConsoleApplication1.Program.Main(String[] args) dans C:\...\Program.cs:ligne 
12</FONT></DIV>
<DIV> </DIV>
<DIV>Hugo Wood</DIV></DIV></DIV></BODY></HTML>