Здесь пример, как можно менять ресурс в программе:
http://msdn.microsoft.com/en-us/library/ms648008(VS.85).aspx
Только вот засада, попытка изменить ресурс в dll из нее самой, ни к чему не приводит.
Первая же строчка —
hExe = LoadLibrary("hand.dll");
возвращает 0x1000000, GetLastError возвращает "0".
В чем тут дело?