Искал, как связать небольшую программу, которая ссылается на DataWriter
Моя программа ссылается на другие объекты (например, класс winrt :: Windows :: Devices :: Bluetooth). Так что я знаю, что он не полностью сломан.
У меня есть эти две библиотеки в верхней части моего cpp-файла, в котором есть все, что нужно связать, пока я не начал использовать DataWriter.
#pragma comment(lib, "oleaut32")
#pragma comment(lib, "runtimeobject")
он компилируется нормально, но я понятия не имею, какую библиотеку включить. Справочные документы MS, по-видимому, не упоминают библиотеки, с которыми вам нужно связаться, чтобы использовать их:
https://docs.microsoft.com/en-us/uwp/api/windows.storage.streams.datawriter
Я попытался найти (используя dumpbin) все библиотеки в моей системе, прежде чем публиковать здесь.
auto writer = DataWriter();
writer.WriteString(L"HEREIAM");
EDIT: добавлена фактическая ошибка компоновщика:
error LNK2001: unresolved external symbol "public: __cdecl winrt::Windows::Storage::Streams::DataWriter::DataWriter(void)" (??0DataWriter@Streams@Storage@Windows@winrt@@QEAA@XZ)
error LNK2001: unresolved external symbol "public: unsigned int __cdecl winrt::impl::consume_Windows_Storage_Streams_IDataWriter<struct winrt::Windows::Storage::Streams::IDataWriter>::WriteString(struct winrt::param::hstring const &)const " (?WriteString@?$consume_Windows_Storage_Streams_IDataWriter@UIDataWriter@Streams@Storage@Windows@winrt@@@impl@winrt@@QEBAIAEBUhstring@param@3@@Z)
Если есть какой-то другой способ создания буфера с WinRT, это тоже будет хорошо.