... inac ten VarUI1FromStr konvertuje snad po jednom znaku alebo ako to je, takze ked uz tak by malo stacit
BYTE skonvertovany_znak;
VarUI1FromStr(r1, neco, LOCALE_NOUSEROVERRIDE, &skonvertovany_znak);
a skonvertuje to prvy znak.
Ak to vyhadzuje chybu tak mas problem pravdepodobne v druhom parametri. Mohol by si si debuggerom pozriet presne aku hodnotu to vrati, alebo v kode porovnat so symbolmi DISP_E_BADVARTYPE, DISP_E_OVERFLOW, DISP_E_TYPEMISMATCH, E_INVALIDARG, E_OUTOFMEMORY aby si vedel aspon priblizne v com je problem.