Я пытаюсь написать небольшую утилиту для создания двоичного файла, который будет имитировать файл, созданный другим закрытым приложением. Я использовал шестнадцатеричные редакторы, чтобы расшифровать формат, потому что я застрял, пытаясь понять, что такое формат / кодировка, чтобы я мог создать его с помощью C ++ или C #.
Файл начинается с первых четырех байтов: 01 00, за которыми следует FF FE. Насколько я понимаю, файл начинается с SOH, за которым следует метка порядка байтов для little-endian. После этих четырех байтов программа пишет BSTR для каждого из строковых полей из графического интерфейса приложения.
Используя C #, я создал файл Unicode, который начинается с FF FE, но я не уверен, как сначала вставить символ SOH.
Я был бы всегда благодарен, если бы кто-то мог предложить понимание формата или кодировки файла и почему файл начинается с символа SOH.
Заранее спасибо.