Я использую библиотеки сценариев Go Windows, чтобы получить данные из функции в DLL. Все это отлично работает, но я не могу понять, как преобразовать LPCTSTR (указатель на C String) в правильную строку Go без использования CGO.Преобразование строки C в строку Go без CGO
Я бы хотел избежать CGO, если это вообще возможно, потому что два варианта кода CGO на Windows (кросс-компиляция и установка gcc на windows) по-прежнему довольно сложны.
Я не * думаю * есть простой способ, кроме CGO, не делая что-то взломанное. Вам не нужен gcc для CGO, вы можете установить компилятор CGO, установив env var 'CC = <желаемый компилятор>'. Я не очень разбираюсь в компиляторе windows c, хотя в Windows это просто vvv vars. –
Вы можете, конечно, преобразовать строки, но проблема в том, что LPCTSTR условно является typedef для LPCSTR или LPCWSTR. У вас есть какой-либо способ обеспечить тип? – JimB
@JimB, да, я думаю, что тип строки подразумевается функцией, которую я вызываю, которая имеет суффикс «A» или «W» для двух типов данных. – brooks94