Вы попадаете в проблему, полагая, что C++/CX напоминает C#. Это совсем не так, это чистый C++ с некоторыми языковыми расширениями, облегчающими работу с типами WinRT. Это неправильное использование типа Platform :: String, это не класс строк общего назначения. Это уже покрывается стандартной библиотекой C++. Класс был намеренно искалечен, чтобы препятствовать использованию, которое вы имеете в виду. Это MSDN library article объясняет это хорошо:
Используйте класс Platform :: String, когда вы передаете строки и обратно методы в классах среды выполнения Windows, или когда вы взаимодействуете с другими компонентами среды выполнения Windows через двоичный интерфейс приложений (ABI). Класс Platform :: String предоставляет методы для нескольких общих операций с строками, но не предназначен для полнофункционального строкового класса. В своем модуле C++ используйте стандартные типы строк C++, такие как wstring для любой значительной обработки текста, а затем преобразуйте окончательный результат в Platform :: String ^, прежде чем передавать его в открытый или открытый интерфейс. Легко и эффективно конвертировать между wstring или wchar_t * и Platform :: String.
Так соответствующий код должен выглядеть следующим образом:
#include <string>
...
std::wstring foo(L"32");
auto bar = static_cast<unsigned char>(std::stol(foo));
Преобразовать в HEX затем сохранить его в массив байтов. – iamsleepy
Пример? и это должно быть байт ... не массив байтов. – DaveUK