[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for 2.5 1/1] qga: added another non-interactive
From: |
Michael Roth |
Subject: |
Re: [Qemu-devel] [PATCH for 2.5 1/1] qga: added another non-interactive gspawn() helper file. |
Date: |
Wed, 25 Nov 2015 16:21:24 -0600 |
User-agent: |
alot/0.3.6 |
Quoting Denis V. Lunev (2015-11-25 13:02:26)
> From: Yuri Pudgorodskiy <address@hidden>
>
> With previous commit we added gspawn-win64-helper-console.exe,
> required for gspawn() mingw implementation.
> Unfortunatly when running as a service without interactive
> desktop, gspawn() also requires another helper app.
>
> Added gspawn-win64-helper.exe and gspawn-win32-helper.exe
> for corresponding architectures.
>
> Signed-off-by: Yuri Pudgorodskiy <address@hidden>
> Signed-off-by: Denis V. Lunev <address@hidden>
> CC: Michael Roth <address@hidden>
Thanks, applied to qga tree with minor whitespace fixup:
https://github.com/mdroth/qemu/commits/qga
I noticed something testing this though: if we run qemu-ga
from a console, then exec something like ipconfig with
capture-output: true, qemu-ga returns that output via
guest-exec-status.
If we run it as a service however, there's no output.
# with qemu-ga started via console
{'execute':'guest-exec','arguments':{'path':'/Windows/System32/ipconfig.exe',
'capture-output':true}}
{"return": {"pid": 1644}}
{'execute':'guest-exec-status','arguments':{'pid':1644}}
{"return": {"exitcode": 0, "out-data":
"DQpXaW5kb3dzIElQIENvbmZpZ3VyYXRpb24NCg0KDQpFdGhlcm5ldCBhZGFwdGVyIExvY2FsIEFyZWEgQ29ubmVjdGlvbiAyOg0KDQogICBDb25uZWN0aW9uLXNwZWNpZmljIEROUyBTdWZmaXggIC4gOiANCiAgIExpbmstbG9jYWwgSVB2NiBBZGRyZXNzIC4gLiAuIC4gLiA6IGZlODA6OjMwMDU6NmRjOjNjNmE6NTQ2NCUxNA0KICAgSVB2NCBBZGRyZXNzLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDogMTkyLjE2OC4xMjIuMTQNCiAgIFN1Ym5ldCBNYXNrIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiA6IDI1NS4yNTUuMjU1LjANCiAgIERlZmF1bHQgR2F0ZXdheSAuIC4gLiAuIC4gLiAuIC4gLiA6IDE5Mi4xNjguMTIyLjENCg0KVHVubmVsIGFkYXB0ZXIgaXNhdGFwLns3Q0Q3OTAwQy05NThCLTRBRUMtQkUwRC0yMTNERjM1NjQ2MEZ9Og0KDQogICBNZWRpYSBTdGF0ZSAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gOiBNZWRpYSBkaXNjb25uZWN0ZWQNCiAgIENvbm5lY3Rpb24tc3BlY2lmaWMgRE5TIFN1ZmZpeCAgLiA6IA0KDQpUdW5uZWwgYWRhcHRlciBMb2NhbCBBcmVhIENvbm5lY3Rpb24qIDExOg0KDQogICBNZWRpYSBTdGF0ZSAuIC4gLiAuIC4gLiAuIC4gLiAuIC4gOiBNZWRpYSBkaXNjb25uZWN0ZWQNCiAgIENvbm5lY3Rpb24tc3BlY2lmaWMgRE5TIFN1ZmZpeCAgLiA6IA0K",
"exited": true}}
# wtih qemu-ga started via windows service
{'execute':'guest-exec','arguments':{'path':'/Windows/System32/ipconfig.exe',
'capture-output':true}}
{"return": {"pid": 1176}}
{'execute':'guest-exec-status','arguments':{'pid':1176}}
{"return": {"exitcode": 0, "exited": true}}
Is this expected?
> ---
> qga/installer/qemu-ga.wxs | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/qga/installer/qemu-ga.wxs b/qga/installer/qemu-ga.wxs
> index f25afdd..7c59972 100644
> --- a/qga/installer/qemu-ga.wxs
> +++ b/qga/installer/qemu-ga.wxs
> @@ -95,11 +95,17 @@
> <Component Id="gspawn-helper-console"
> Guid="{446185B3-87BE-43D2-96B8-0FEFD9E8696D}">
> <File Id="gspawn-win32-helper-console.exe"
> Name="gspawn-win32-helper-console.exe"
> Source="$(var.Mingw_bin)/gspawn-win32-helper-console.exe" KeyPath="yes"
> DiskId="1"/>
> </Component>
> + <Component Id="gspawn-helper"
> Guid="{CD67A5A3-2DB1-4DA1-A67A-8D71E797B466}">
> + <File Id="gspawn-win32-helper.exe"
> Name="gspawn-win32-helper.exe"
> Source="$(var.Mingw_bin)/gspawn-win32-helper.exe" KeyPath="yes" DiskId="1"/>
> + </Component>
> <?endif?>
> <?if $(var.Arch) = "64"?>
> <Component Id="gspawn-helper-console"
> Guid="{9E615A9F-349A-4992-A5C2-C10BAD173660}">
> <File Id="gspawn-win64-helper-console.exe"
> Name="gspawn-win64-helper-console.exe"
> Source="$(var.Mingw_bin)/gspawn-win64-helper-console.exe" KeyPath="yes"
> DiskId="1"/>
> </Component>
> + <Component Id="gspawn-helper"
> Guid="{D201AD22-1846-4E4F-B6E1-C7A908ED2457}">
> + <File Id="gspawn-win64-helper.exe"
> Name="gspawn-win64-helper.exe"
> Source="$(var.Mingw_bin)/gspawn-win64-helper.exe" KeyPath="yes" DiskId="1"/>
> + </Component>
> <?endif?>
> <Component Id="iconv"
> Guid="{35EE3558-D34B-4F0A-B8BD-430FF0775246}">
> <File Id="iconv.dll" Name="iconv.dll"
> Source="$(var.Mingw_bin)/iconv.dll" KeyPath="yes" DiskId="1"/>
> @@ -159,6 +165,7 @@
> <ComponentRef Id="qga_vss_tlb" />
> <?endif?>
> <ComponentRef Id="gspawn-helper-console" />
> + <ComponentRef Id="gspawn-helper" />
> <ComponentRef Id="iconv" />
> <ComponentRef Id="libgcc_arch_lib" />
> <ComponentRef Id="libglib" />
> --
> 2.1.4
>