Здравствуйте _Dinosaur, Вы писали:
D>Здравствуйте!
D>Ситуация следующая: 
D>есть:
D>A.DLL, экспортирующая около 500 символов (функции и переменные)
D>нужно: 
D>написать обертку для A.DLL
D>предполагаемое решение:
D>создать B.DLL, реализовать в ней часть функций из A.DLL, на остальные символы сделать форвардинг
D>вопрос:
D>Подскажите, пожалуйста, можно ли средствами MS VC сделать это, либо нужно писать свою прогу на подобие линкера 
  
 
В любом случае нужно точки входа в DLL прописать такие же..
Чтобы при загрузке таблица импорта такаже как и для старой DLL сформировалась. Я вот не очень представляю что имеется в виду под прогой наподобие линкера. Ведь по объявленным в длл символам формируется таблица импорта.. Она заполняется при загрузке, когда длл уже загружена в адресное простраство процесса, просто проставляются адреса откуда вызывать функции, а пока ничего не загружено соответственно и адреса неизвестны. Поэтому если не хочется менять все функции, единственный способ это подгрузить нашу новую длл в процесс и подменть адреса символов в таблице.