qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* Re: [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
       [not found]   ` <511CE63D.6050405@redhat.com>
@ 2013-03-25 20:50     ` Tomoki Sekiyama
  2013-03-26  7:09       ` Paolo Bonzini
  0 siblings, 1 reply; 6+ messages in thread
From: Tomoki Sekiyama @ 2013-03-25 20:50 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: mdroth, qemu-devel, lcapitulino, vrozenfe, tomoki.sekiyama,
	dle-discus

Hi,

Paolo Bonzini <pbonzini@redhat.com> wrote:
> Il 14/02/2013 07:10, Tomoki Sekiyama ha scritto:
> > diff --git a/qga/vss-win32-provider/qga-provider.idl
> b/qga/vss-win32-provider/qga-provider.idl
> > new file mode 100644
> > index 0000000..17abca0
> > --- /dev/null
> > +++ b/qga/vss-win32-provider/qga-provider.idl
> > @@ -0,0 +1,20 @@
> > +import "oaidl.idl";
> > +import "ocidl.idl";
> > +
> > +[
> > +    uuid(103B8142-6CE5-48A7-BDE1-794D3192FCF1),
> > +    version(1.0),
> > +    helpstring("QGAVSSProvider Type Library")
> > +]
> > +library QGAVSSHWProviderLib
> > +{
> > +    importlib("stdole2.tlb");
> > +    [
> > +        uuid(6E6A3492-8D4D-440C-9619-5E5D0CC31CA8),
> > +        helpstring("QGAVSSProvider Class")
> > +    ]
> > +    coclass QGAVSSHWProvider
> > +    {
> > +        [default] interface IUnknown;
> > +    };
> > +};
> 
> Ok, I checked widl and it chokes on the importlib line.  If that can be
> removed, it's fine to use widl.
> 
> The invocation is
> 
> 	widl -m32/-m64 -o qga-provider.tlb -t qga-provider.idl
> 
> where code to choose between -m32 and -m64 is already in the configure
> script (search for `case "$cpu"`).
> 
> Paolo

Unfortunately, if I remove importlib("stdole2.tlb"), generated .tlb seems
rejected to register into Windows COM+ Catalog.

Wine has stdole2.tlb in its fakedlls directory, but widl does not accept
this by

  error: Wrong or unsupported typelib magic 405a4d

Even if I copied native stdole2.tlb, widl fails with the same error.

Do you have any idea about this error?

Thanks,
Tomoki Sekiyama

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
  2013-03-25 20:50     ` [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze Tomoki Sekiyama
@ 2013-03-26  7:09       ` Paolo Bonzini
  2013-03-26  8:44         ` Vadim Rozenfeld
  0 siblings, 1 reply; 6+ messages in thread
From: Paolo Bonzini @ 2013-03-26  7:09 UTC (permalink / raw)
  To: tomoki.sekiyama
  Cc: qemu-devel, mdroth, lcapitulino, vrozenfe, dle-discus,
	Tomoki Sekiyama

Il 25/03/2013 21:50, Tomoki Sekiyama ha scritto:
> Hi,
> 
> Paolo Bonzini <pbonzini@redhat.com> wrote:
>> Il 14/02/2013 07:10, Tomoki Sekiyama ha scritto:
>>> diff --git a/qga/vss-win32-provider/qga-provider.idl
>> b/qga/vss-win32-provider/qga-provider.idl
>>> new file mode 100644
>>> index 0000000..17abca0
>>> --- /dev/null
>>> +++ b/qga/vss-win32-provider/qga-provider.idl
>>> @@ -0,0 +1,20 @@
>>> +import "oaidl.idl";
>>> +import "ocidl.idl";
>>> +
>>> +[
>>> +    uuid(103B8142-6CE5-48A7-BDE1-794D3192FCF1),
>>> +    version(1.0),
>>> +    helpstring("QGAVSSProvider Type Library")
>>> +]
>>> +library QGAVSSHWProviderLib
>>> +{
>>> +    importlib("stdole2.tlb");
>>> +    [
>>> +        uuid(6E6A3492-8D4D-440C-9619-5E5D0CC31CA8),
>>> +        helpstring("QGAVSSProvider Class")
>>> +    ]
>>> +    coclass QGAVSSHWProvider
>>> +    {
>>> +        [default] interface IUnknown;
>>> +    };
>>> +};
>>
>> Ok, I checked widl and it chokes on the importlib line.  If that can be
>> removed, it's fine to use widl.
>>
>> The invocation is
>>
>> 	widl -m32/-m64 -o qga-provider.tlb -t qga-provider.idl
>>
>> where code to choose between -m32 and -m64 is already in the configure
>> script (search for `case "$cpu"`).
>>
>> Paolo
> 
> Unfortunately, if I remove importlib("stdole2.tlb"), generated .tlb seems
> rejected to register into Windows COM+ Catalog.
> 
> Wine has stdole2.tlb in its fakedlls directory, but widl does not accept
> this by
> 
>   error: Wrong or unsupported typelib magic 405a4d
> 
> Even if I copied native stdole2.tlb, widl fails with the same error.
> 
> Do you have any idea about this error?

No, I suggest you ask on the Wine mailing lists.  In the meanwhile we
can include a precompiled .tlb file in the QEMU repository and use midl.

Paolo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
  2013-03-26  7:09       ` Paolo Bonzini
@ 2013-03-26  8:44         ` Vadim Rozenfeld
  2013-03-26 16:30           ` Tomoki Sekiyama
  0 siblings, 1 reply; 6+ messages in thread
From: Vadim Rozenfeld @ 2013-03-26  8:44 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: qemu-devel, mdroth, lcapitulino, tomoki.sekiyama, dle-discus,
	Tomoki Sekiyama

On Tue, 2013-03-26 at 08:09 +0100, Paolo Bonzini wrote:
> Il 25/03/2013 21:50, Tomoki Sekiyama ha scritto:
> > Hi,
> > 
> > Paolo Bonzini <pbonzini@redhat.com> wrote:
> >> Il 14/02/2013 07:10, Tomoki Sekiyama ha scritto:
> >>> diff --git a/qga/vss-win32-provider/qga-provider.idl
> >> b/qga/vss-win32-provider/qga-provider.idl
> >>> new file mode 100644
> >>> index 0000000..17abca0
> >>> --- /dev/null
> >>> +++ b/qga/vss-win32-provider/qga-provider.idl
> >>> @@ -0,0 +1,20 @@
> >>> +import "oaidl.idl";
> >>> +import "ocidl.idl";
> >>> +
> >>> +[
> >>> +    uuid(103B8142-6CE5-48A7-BDE1-794D3192FCF1),
> >>> +    version(1.0),
> >>> +    helpstring("QGAVSSProvider Type Library")
> >>> +]
> >>> +library QGAVSSHWProviderLib
> >>> +{
> >>> +    importlib("stdole2.tlb");
> >>> +    [
> >>> +        uuid(6E6A3492-8D4D-440C-9619-5E5D0CC31CA8),
> >>> +        helpstring("QGAVSSProvider Class")
> >>> +    ]
> >>> +    coclass QGAVSSHWProvider
> >>> +    {
> >>> +        [default] interface IUnknown;
> >>> +    };
> >>> +};
> >>
> >> Ok, I checked widl and it chokes on the importlib line.  If that can be
> >> removed, it's fine to use widl.
> >>
> >> The invocation is
> >>
> >> 	widl -m32/-m64 -o qga-provider.tlb -t qga-provider.idl
> >>
> >> where code to choose between -m32 and -m64 is already in the configure
> >> script (search for `case "$cpu"`).
> >>
> >> Paolo
> > 
> > Unfortunately, if I remove importlib("stdole2.tlb"), generated .tlb seems
> > rejected to register into Windows COM+ Catalog.
> > 
> > Wine has stdole2.tlb in its fakedlls directory, but widl does not accept
> > this by
> > 
> >   error: Wrong or unsupported typelib magic 405a4d
> > 
> > Even if I copied native stdole2.tlb, widl fails with the same error.
> > 
> > Do you have any idea about this error?

Seems like your tlb has nonstandard identifying characters. Check first
several bytes of the tlb file. Usually it should be something like '4D
53 46 54', or '4D 5A 90'
   
> 
> No, I suggest you ask on the Wine mailing lists.  In the meanwhile we
> can include a precompiled .tlb file in the QEMU repository and use midl.
> 
> Paolo
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
  2013-03-26  8:44         ` Vadim Rozenfeld
@ 2013-03-26 16:30           ` Tomoki Sekiyama
  2013-03-27 11:29             ` Vadim Rozenfeld
  0 siblings, 1 reply; 6+ messages in thread
From: Tomoki Sekiyama @ 2013-03-26 16:30 UTC (permalink / raw)
  To: Vadim Rozenfeld, Paolo Bonzini
  Cc: dle-discus@lists.sourceforge.jp, lcapitulino@redhat.com,
	Tomoki Sekiyama, mdroth@linux.vnet.ibm.com, qemu-devel@nongnu.org

On 3/26/13 4:44 , "Vadim Rozenfeld" <vrozenfe@redhat.com> wrote:

>On Tue, 2013-03-26 at 08:09 +0100, Paolo Bonzini wrote:
>> Il 25/03/2013 21:50, Tomoki Sekiyama ha scritto:
>>> Unfortunately, if I remove importlib("stdole2.tlb"), generated .tlb
>>>seems
>> > rejected to register into Windows COM+ Catalog.
>> > 
>> > Wine has stdole2.tlb in its fakedlls directory, but widl does not
>>accept
>> > this by
>> > 
>> >   error: Wrong or unsupported typelib magic 405a4d
>> > 
>> > Even if I copied native stdole2.tlb, widl fails with the same error.
>> > 
>> > Do you have any idea about this error?
>
>Seems like your tlb has nonstandard identifying characters. Check first
>several bytes of the tlb file. Usually it should be something like '4D
>53 46 54', or '4D 5A 90'

I found '4D 53 46 54' at offset 0x300 of stdole2.tlb.
Wine's stdole2.tlb also have the signature at offset 0x738.

(might have an additional header before the main part?)

Widl accepted the wine's stdole2.tlb when I removed the header,
but still, the generated qga-provider.tlb was not accepted by Windows...:(

>> 
>> No, I suggest you ask on the Wine mailing lists.  In the meanwhile we
>> can include a precompiled .tlb file in the QEMU repository and use midl.
>> 
>> Paolo

I will take this way so far.

Thanks,

Tomoki Sekiyama

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
  2013-03-26 16:30           ` Tomoki Sekiyama
@ 2013-03-27 11:29             ` Vadim Rozenfeld
  2013-03-27 14:41               ` Tomoki Sekiyama
  0 siblings, 1 reply; 6+ messages in thread
From: Vadim Rozenfeld @ 2013-03-27 11:29 UTC (permalink / raw)
  To: Tomoki Sekiyama
  Cc: qemu-devel@nongnu.org, mdroth@linux.vnet.ibm.com,
	lcapitulino@redhat.com, Paolo Bonzini,
	dle-discus@lists.sourceforge.jp, Tomoki Sekiyama

On Tue, 2013-03-26 at 16:30 +0000, Tomoki Sekiyama wrote:
> On 3/26/13 4:44 , "Vadim Rozenfeld" <vrozenfe@redhat.com> wrote:
> 
> >On Tue, 2013-03-26 at 08:09 +0100, Paolo Bonzini wrote:
> >> Il 25/03/2013 21:50, Tomoki Sekiyama ha scritto:
> >>> Unfortunately, if I remove importlib("stdole2.tlb"), generated .tlb
> >>>seems
> >> > rejected to register into Windows COM+ Catalog.
> >> > 
> >> > Wine has stdole2.tlb in its fakedlls directory, but widl does not
> >>accept
> >> > this by
> >> > 
> >> >   error: Wrong or unsupported typelib magic 405a4d
> >> > 
> >> > Even if I copied native stdole2.tlb, widl fails with the same error.
> >> > 
> >> > Do you have any idea about this error?
> >
> >Seems like your tlb has nonstandard identifying characters. Check first
> >several bytes of the tlb file. Usually it should be something like '4D
> >53 46 54', or '4D 5A 90'
> 
> I found '4D 53 46 54' at offset 0x300 of stdole2.tlb.
> Wine's stdole2.tlb also have the signature at offset 0x738.
> 

I rechecked stdole2.tlb provided by MS. All three versions (arm, x86,
and x64) begin with 'MSFT' (4D 53 46 54) and have 00 00 00 00  at offset
0x300

> (might have an additional header before the main part?)
> 
> Widl accepted the wine's stdole2.tlb when I removed the header,
> but still, the generated qga-provider.tlb was not accepted by Windows...:(
> 
> >> 
> >> No, I suggest you ask on the Wine mailing lists.  In the meanwhile we
> >> can include a precompiled .tlb file in the QEMU repository and use midl.
> >> 
> >> Paolo
> 
> I will take this way so far.
> 
> Thanks,
> 
> Tomoki Sekiyama
> 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
  2013-03-27 11:29             ` Vadim Rozenfeld
@ 2013-03-27 14:41               ` Tomoki Sekiyama
  0 siblings, 0 replies; 6+ messages in thread
From: Tomoki Sekiyama @ 2013-03-27 14:41 UTC (permalink / raw)
  To: Vadim Rozenfeld
  Cc: qemu-devel@nongnu.org, mdroth@linux.vnet.ibm.com,
	lcapitulino@redhat.com, Paolo Bonzini,
	dle-discus@lists.sourceforge.jp, Tomoki Sekiyama

On Tue, 2013-03-26 at 16:30 +0000, Tomoki Sekiyama wrote:
> On 3/26/13 4:44 , "Vadim Rozenfeld" <vrozenfe@redhat.com> wrote:
>
>>On Tue, 2013-03-26 at 08:09 +0100, Paolo Bonzini wrote:
>>> Il 25/03/2013 21:50, Tomoki Sekiyama ha scritto:
>>>> Unfortunately, if I remove importlib("stdole2.tlb"), generated .tlb
>>>>seems
>>> > rejected to register into Windows COM+ Catalog.
>>> >
>>> > Wine has stdole2.tlb in its fakedlls directory, but widl does not
>>>accept
>>> > this by
>>> >
>>> >   error: Wrong or unsupported typelib magic 405a4d
>>> >
>>> > Even if I copied native stdole2.tlb, widl fails with the same error.
>>> >
>>> > Do you have any idea about this error?
>>
>>Seems like your tlb has nonstandard identifying characters. Check first
>>several bytes of the tlb file. Usually it should be something like '4D
>>53 46 54', or '4D 5A 90'
>
> I found '4D 53 46 54' at offset 0x300 of stdole2.tlb.
> Wine's stdole2.tlb also have the signature at offset 0x738.
>

> I rechecked stdole2.tlb provided by MS. All three versions (arm, x86,
> and x64) begin with 'MSFT' (4D 53 46 54) and have 00 00 00 00  at offset
> 0x300

Oops, I was watching stdole2.tlb picked up from system32 directory.
Thank you for rechecking.

Still, it is not available in POSIX environment...

> (might have an additional header before the main part?)
>
> Widl accepted the wine's stdole2.tlb when I removed the header,
> but still, the generated qga-provider.tlb was not accepted by Windows...:(
>
> >>
> >> No, I suggest you ask on the Wine mailing lists.  In the meanwhile we
> >> can include a precompiled .tlb file in the QEMU repository and use midl.
> >>
> >> Paolo
>
> I will take this way so far.
>
> Thanks,
>
> Tomoki Sekiyama
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-03-27 14:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20130214061026.15062.54597.stgit@melchior2.sdl.hitachi.co.jp>
     [not found] ` <20130214061042.15062.91573.stgit@melchior2.sdl.hitachi.co.jp>
     [not found]   ` <511CE63D.6050405@redhat.com>
2013-03-25 20:50     ` [Qemu-devel] [RFC PATCH 04/10] qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze Tomoki Sekiyama
2013-03-26  7:09       ` Paolo Bonzini
2013-03-26  8:44         ` Vadim Rozenfeld
2013-03-26 16:30           ` Tomoki Sekiyama
2013-03-27 11:29             ` Vadim Rozenfeld
2013-03-27 14:41               ` Tomoki Sekiyama

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).