si.flags := HAS_USER_NAME OR HAS_EMAIL OR HAS_HARDWARE_ID OR HAS_USER_DATA;
si.pUserName := PWideChar(Name.Text);
si.pEMail := PWideChar(EMail.Text);
si.pHardwareID := PWideChar(HardwareID.text);
si.nUserDataLength := j;
si.pUserData := @a;
где Name, Email и HardwareID поля ввода на форме типа TEdit
a : array (0..255) of byte
собственно все отрабатывает великолепно за одним исключением
полученный серийный номер при импорте в оболочку принимается но вот с полем HARDWAREID проблема поле отмечено а само значение отсутствует
К сожалению замена PWideChar на PChar ни к чему не приводит
Результат тот же.
Еще раз подчеркну Delphi 2009 (Если я правильно понимаю то PWideChar и PChar синонимы)
Видимо необходимо провести преобразование но к чему (к какому типу) не могу понять