From 0965698c585df8b4bf744d8eac7056197b1fa2be Mon Sep 17 00:00:00 2001 From: Miguel Gimenez Date: Sun, 3 Dec 2023 15:43:04 +0100 Subject: [PATCH] Add support for VT_UI8 OLE VARIANT type Convert it to and from wxULongLong, as just as we already convert between VT_I8 and wxLongLong. Closes #24115. --- src/msw/ole/oleutils.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/msw/ole/oleutils.cpp b/src/msw/ole/oleutils.cpp index 4a6c90ac0c..72f5b29cc8 100644 --- a/src/msw/ole/oleutils.cpp +++ b/src/msw/ole/oleutils.cpp @@ -299,7 +299,12 @@ WXDLLEXPORT bool wxConvertVariantToOle(const wxVariant& variant, VARIANTARG& ole oleVariant.vt = VT_I8; oleVariant.llVal = variant.GetLongLong().GetValue(); } -#endif + else if (type == wxT("ulonglong")) + { + oleVariant.vt = VT_UI8; + oleVariant.ullVal = variant.GetULongLong().GetValue(); + } +#endif // wxUSE_LONGLONG else if (type == wxT("char")) { oleVariant.vt=VT_I1; // Signed Char @@ -469,6 +474,9 @@ wxConvertOleToVariant(const VARIANTARG& oleVariant, wxVariant& variant, long fla case VT_I8: variant = wxLongLong(oleVariant.llVal); break; + case VT_UI8: + variant = wxULongLong(oleVariant.ullVal); + break; #endif // wxUSE_LONGLONG case VT_I4: