Le 12/10/2021 à 18:16, Nikolay Sivov a écrit :

On 10/12/21 7:10 PM, Eric Pouech wrote:
+                case VT_I8:  sym_info->Value = (LONG64)data->u.value.n1.n2.n3.llVal; break;
+                case VT_I4:  sym_info->Value = (LONG64)data->u.value.n1.n2.n3.lVal; break;
+                case VT_I2:  sym_info->Value = (LONG64)data->u.value.n1.n2.n3.iVal; break;
+                case VT_I1:  sym_info->Value = (LONG64)data->u.value.n1.n2.n3.cVal; break;
+                case VT_UINT:sym_info->Value = data->u.value.n1.n2.n3.uintVal; break;
+                case VT_UI8: sym_info->Value = data->u.value.n1.n2.n3.ullVal; break;
+                case VT_UI4: sym_info->Value = data->u.value.n1.n2.n3.ulVal; break;
+                case VT_UI2: sym_info->Value = data->u.value.n1.n2.n3.uiVal; break;
+                case VT_UI1: sym_info->Value = data->u.value.n1.n2.n3.bVal; break;
+                case VT_I1 | VT_BYREF: sym_info->Value = (DWORD_PTR)data->u.value.n1.n2.n3.byref; break;
                 case VT_EMPTY: sym_info->Value = 0; break;
Is it possible to use V_VT()/V_*() macros for that?

sure but that would be a larger patch, need to fix also the parts where the value is set into the variant

I'll resend this one tomorrow

A+