<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=text/html;charset=gb2312 http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 9.00.7930.16406"><LINK rel=stylesheet
href="BLOCKQUOTE{margin-Top: 0px; margin-Bottom: 0px; margin-Left: 2em}"></HEAD>
<BODY
style="MARGIN: 10px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt; PADDING-TOP: 15px"
id=MailContainerBody leftMargin=0 topMargin=0 CanvasTabStop="true"
name="Compose message area">
<DIV><FONT size=3 face=Calibri>Hi,</FONT></DIV>
<DIV><FONT size=3 face=Calibri></FONT> </DIV>
<DIV><FONT size=3 face=Calibri>So, at first, are you sure that conn !=
IntPtr.Zero and pDomain != IntPtr.Zero.</FONT></DIV>
<DIV><FONT size=3 face=Calibri>if both pointer are ok, can you please check the
DomainInfo marshal, I have just sended patch today around this structure, and I
think the patch is not yet pushed to the git.</FONT></DIV>
<DIV><FONT size=3 face=Calibri>The DomainInfo structure must be marshaled in
this way :</FONT></DIV>
<DIV><FONT size=3 face=Calibri></FONT> </DIV>
<DIV><FONT color=#808080 size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas>
<P>///</FONT></FONT></FONT><FONT color=#008000 size=2 face=Consolas><FONT
color=#008000 size=2 face=Consolas><FONT color=#008000 size=2 face=Consolas>
</FONT></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT
color=#808080 size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> Structure to handle domain
informations</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P>[</FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>StructLayout</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas>(</FONT></FONT><FONT color=#2b91af size=2
face=Consolas><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas>LayoutKind</FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>.Sequential)]</P>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>public</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT
color=#0000ff size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>class</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT
color=#2b91af size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>DomainInfo</P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P>{</P>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> The running state, one of
virDomainState.</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>private</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> </FONT></FONT><FONT color=#0000ff size=2
face=Consolas><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas>byte</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> state;</P>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> The maximum memory in KBytes
allowed.</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P>[</FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>MarshalAs</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas>(</FONT></FONT><FONT color=#2b91af size=2
face=Consolas><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas>UnmanagedType</FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>.SysUInt)]</P>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>public</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT
color=#2b91af size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>UIntPtr</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> maxMem;</P>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> The memory in KBytes used by the
domain.</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P>[</FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>MarshalAs</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas>(</FONT></FONT><FONT color=#2b91af size=2
face=Consolas><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas>UnmanagedType</FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>.SysUInt)]</P>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>public</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT
color=#2b91af size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>UIntPtr</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> memory;</P>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> The number of virtual CPUs for the
domain.</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>public</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT
color=#0000ff size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>ushort</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> nrVirtCpu;</P>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> The CPU time used in
nanoseconds.</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P>[</FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>MarshalAs</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas>(</FONT></FONT><FONT color=#2b91af size=2
face=Consolas><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas>UnmanagedType</FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>.SysUInt)]</P>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>public</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT
color=#2b91af size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>UIntPtr</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> cpuTime;</P>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> The running state, one of
virDomainState.</P></FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas>
<P></FONT></FONT><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas><FONT color=#808080 size=2
face=Consolas>///</FONT></FONT></FONT><FONT color=#008000 size=2
face=Consolas><FONT color=#008000 size=2 face=Consolas><FONT color=#008000
size=2 face=Consolas> </FONT></FONT></FONT><FONT color=#808080 size=2
face=Consolas><FONT color=#808080 size=2 face=Consolas><FONT color=#808080
size=2 face=Consolas></summary></P></FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>
<P></FONT></FONT><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas><FONT color=#0000ff size=2
face=Consolas>public</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT size=2
face=Consolas> </FONT></FONT><FONT color=#2b91af size=2 face=Consolas><FONT
color=#2b91af size=2 face=Consolas><FONT color=#2b91af size=2
face=Consolas>DomainState</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> State { </FONT></FONT><FONT color=#0000ff size=2
face=Consolas><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas>get</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> { </FONT></FONT><FONT color=#0000ff size=2
face=Consolas><FONT color=#0000ff size=2 face=Consolas><FONT color=#0000ff
size=2 face=Consolas>return</FONT></FONT></FONT><FONT size=2 face=Consolas><FONT
size=2 face=Consolas> (</FONT></FONT><FONT color=#2b91af size=2
face=Consolas><FONT color=#2b91af size=2 face=Consolas><FONT color=#2b91af
size=2 face=Consolas>DomainState</FONT></FONT></FONT><FONT size=2
face=Consolas><FONT size=2 face=Consolas>)state; } }</P>
<P>}</P>
<P> </P>
<P><FONT size=3 face=Calibri>Also, another important thing change : the libvirt
bindings project must have an x86 target to make this marshaling working. This
is also in the patch.</FONT></P>
<P><FONT size=3 face=Calibri></FONT> </P>
<P><FONT size=3 face=Calibri>Another thing, you can also use
Errors.GetLastErro() method to identify the problem, it return an error class
which can inform you about the problem.</FONT></P>
<P><FONT size=3 face=Calibri></FONT> </P>
<P><FONT size=3 face=Calibri>Best regards,</FONT></P>
<P><FONT size=3 face=Calibri></FONT> </P>
<P><FONT size=3 face=Calibri>Arnaud</FONT></P>
<P><FONT size=3 face=Calibri></FONT> </P>
<P><FONT size=3 face=Calibri>PS : are you sure also that libvirt dll is compiled
with xen support ?</FONT></P></FONT></FONT></DIV>
<DIV style="FONT: 10pt Tahoma">
<DIV><BR></DIV>
<DIV style="BACKGROUND: #f5f5f5">
<DIV style="font-color: black"><B>From:</B> <A title=lancerhuang@163.com
href="mailto:lancerhuang@163.com">»ÆÁÁ</A> </DIV>
<DIV><B>Sent:</B> Saturday, October 30, 2010 7:07 PM</DIV>
<DIV><B>To:</B> <A title=arnaud.champion@devatom.fr
href="mailto:arnaud.champion@devatom.fr">arnaud.champion</A> </DIV>
<DIV><B>Subject:</B> SPAM-LOW: Domain.GetInfo error</DIV></DIV></DIV>
<DIV><BR></DIV>
<DIV><FONT size=2 face=Verdana>Dear Arnaud</FONT></DIV>
<DIV> </DIV>
<DIV>Here is my test code. Function Domain.GetInfo return -1 and I don't know
where is the mistake.</DIV>
<DIV>Would you do me a favor to point out the problem? Thank you!</DIV>
<DIV> </DIV>
<DIV>Code:</DIV>
<DIV> </DIV>
<DIV> IntPtr conn =
Connect.Open("xen+tcp://192.168.0.1?no_verify=1");<BR> String
DomainName = e.Node.Text;<BR> IntPtr pDomain =
Domain.LookupByName(conn, DomainName);</DIV>
<DIV> </DIV>
<DIV> DomainInfo aInfo = new
DomainInfo();<BR> if (Domain.GetInfo(pDomain, aInfo) ==
-1)<BR> {<BR> MessageBox.Show("Get Info
error");<BR> return;<BR> }</DIV>
<DIV><FONT size=2 face=Verdana></FONT> </DIV>
<DIV align=left><FONT color=#c0c0c0 size=2 face=Verdana>2010-10-31
</FONT></DIV><FONT size=2 face=Verdana>
<HR style="WIDTH: 122px; HEIGHT: 2px" align=left SIZE=2>
<DIV><FONT color=#c0c0c0 size=2 face=Verdana><SPAN>»ÆÁÁ</SPAN>
</FONT></DIV></FONT></BODY></HTML>