Что вы можете сделать, это добавить часть WSA в файл Typemap, а затем в своей команде wsdl2h указать ее с параметром -t.
т.е.:
wsdl2h -o target.h -t EditedTypemap.dat target.wsdl
Вы можете простоскопируйте стандартный Typemap.dat из вашего каталога gSOAP и отредактируйте его так, чтобы он выглядел следующим образом:
wsa = <http://schemas.xmlsoap.org/ws/2004/08/addressing>
SOAP_ENV__Header =\
#import "wsa.h"\n\
struct SOAP_ENV__Header\n\
{\n\
mustUnderstand _wsa__MessageID wsa__MessageID 0;\n\
mustUnderstand _wsa__RelatesTo * wsa__RelatesTo 0;\n\
mustUnderstand _wsa__From * wsa__From 0;\n\
mustUnderstand _wsa__ReplyTo * wsa__ReplyTo 0;\n\
mustUnderstand _wsa__FaultTo * wsa__FaultTo 0;\n\
mustUnderstand _wsa__To wsa__To 0;\n\
mustUnderstand _wsa__Action wsa__Action 0;\n\
};
Затем перезапустите wsdl2h, как я упоминал выше.Надеюсь, что это работает для вас!gSOAP - это отличный инструментарий, к которому нужно привыкнуть.