powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как использовать shlwapi.h ? (Borland C++)
3 сообщений из 3, страница 1 из 1
Как использовать shlwapi.h ? (Borland C++)
    #33237899
v skopin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, всем!

Желаю своё приложение видеть - использовать в UNICODE!(почему такое, вроде, очевидное желание воспринимается в штыки – не понимаю? Но оно так!)
Вот и два вопроса:
1. Что за хрень "[Linker Error] Unresolved external *.OBJ" при #include <shlwapi.h>?
2. Как перейти грамотно на "api", т.е при том же #include <shlwapi.h> перестают нормально работать "TRegistry" – это не глупость использовать их обoих вместе, просто переход с TRegistry на api; приложение не маленькое и не так просто в петь сек забыть про "TRegistry", желательно постепенно (анализ ошибок важен!)

Заранее благодарю, ВС
...
Рейтинг: 0 / 0
Как использовать shlwapi.h ? (Borland C++)
    #33239086
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
v skopin...1. Что за хрень "[Linker Error] Unresolved external *.OBJ" при #include <shlwapi.h>?...

В Вашем коде ИНКЛУД - есть ОБЬЯВЛЕНИЕ то, что Вы хотите поюзать. А не ссылка на тело подпрограммы, функции или класс. Ошибка ЛИНКОВЩИКА так прямо об этом и говорит. Дескать то, что Вы обьявили ранее нифига не могу найти при линковке.

И ышо...
если мне не изменяет память, сделайте в своём коде такую запись...

#pragma comment( lib, "shlwapi.lib" )

и вроде бы должно полегчать...(вообще то по хорошему дать покушать сие линковщику).

с уважением
(круглый)
...
Рейтинг: 0 / 0
Как использовать shlwapi.h ? (Borland C++)
    #33239739
v skopin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я залез в *.bpr и там вставил shlwapi.lib – вроде, все работает – боюсь менять!

<LIBRARIES value="shlwapi.lib visualclx.lib dbrtl.lib vcldb.lib TntLibR.lib vclx.lib rtl.lib
vcl.lib"/>
<SPARELIBS value="vcl.lib rtl.lib vclx.lib TntLibR.lib vcldb.lib dbrtl.lib visualclx.lib
shlwapi.lib"/>

Но тут пошли проблемы с "SHGetValueW" – после трёх(?) вызовах оной отказывается читать, причем ввод дополнительных переменных не влияет ни как!
И вот что бы это значило:
MSDNNote If your application must set/get a series of values in the same key, it is better to open the key once and set/get the values with the regular Microsoft® Win32® registry functions rather than use this function repeatedly. (я имею ввиду не перевод, конечно, а по сути!)
Код: plaintext
1.
2.
3.
4.
5.
wchar_t wc[MAX_PATH+ 1 ]=L"";
DWORD size = (MAX_PATH+ 1 ) * sizeof(WCHAR);
WCHAR ws[MAX_PATH+ 1 ]=L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders";  
SHGetValueW(HKEY_CURRENT_USER,L"Environment", L"TEMP",&typeE, wc, &size);
SHGetValueW(HKEY_CURRENT_USER,ws, L"Personal",&type, wc, &size);
И т.д. 
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как использовать shlwapi.h ? (Borland C++)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]