c++ - Where is Dhcpv6CApiInitialize? -


i trying dynamic loading of dhcpcsvc6.dll support ipv6 on win7 , ipv4 on xp. getprocaddress of dhcpv6capiinitialize fails. used exescope examine exports of dll, got.

version: 6.1.7600.16385.  00000001    404632ea    dhcpv6acquireparameters 00000002    40463e4f    dhcpv6canceloperation 00000003    40463eb9    dhcpv6enabletracing 00000004    40461d3b    dhcpv6freeleaseinfo 00000005    404644d3    dhcpv6gettracearray 00000006    404645d9    dhcpv6getuserclasses 00000007    404642d1    dhcpv6isenabled 00000008    40461730    dhcpv6queryleaseinfo 00000009    40463419    dhcpv6releaseparameters 0000000a    40463e31    dhcpv6releaseprefix 0000000b    40463bf5    dhcpv6releaseprefixex 0000000c    40463bd1    dhcpv6renewprefix 0000000d    40463892    dhcpv6renewprefixex 0000000e    40463f51    dhcpv6requestparams 0000000f    40463871    dhcpv6requestprefix 00000010    40463549    dhcpv6requestprefixex 00000011    404647d1    dhcpv6setuserclass 

dhcpv6capiinitialize not in it. tried dhcpcore6.dll, dhcpsvc.dll , 64bit versions of these.. no findings.

i wonder function is? have call before other dhcp v6 apis?

msdn reference: http://msdn.microsoft.com/en-us/library/windows/desktop/aa363306(v=vs.85).aspx

tl;dr

functions not present until win8. win8 version (i examined version 6.2.9200.16433) nothing useful. seems safe ignore these functions if they're not present in dhcpcsvc6.dll.

explanation:

  1. statically linking requires win8 sdk (already built vs2012).
  2. vs2010 win7 sdk won't compile.
  3. when compiled win8 sdk, compiled exe won't run on win7, saying the procedure entry point dhcpv6capiinitialize not located in dynamic link library dhcpcsvc6.dll. means functions indeed exported dhcpcsvc6.dll.
  4. win8 version of dll contain these functions.

_dhcpv6capiinitialize@4 puts 2 output parameter:

10004199: mov         edi,edi                // standard hotpatch spot 1000419b: push        ebp                    // standard prologue 1000419c: mov         ebp,esp                // standard prologue 1000419e: mov         eax,dword ptr [ebp+8]  // eax <- param0 100041a1: test        eax,eax                // if (param0 == 0) 100041a3: je          100041ab               //    return; 100041a5: mov         dword ptr [eax],2      // *param0 = 2; 100041ab: pop         ebp                    // standard epilogue 100041ac: ret         4                      // end of function 

_dhcpv6capicleanup@0 nothing @ all:

100041b6: ret 

Comments

Popular posts from this blog

Detect support for Shoutcast ICY MP3 without navigator.userAgent in Firefox? -

web - SVG not rendering properly in Firefox -

java - JavaFX 2 slider labelFormatter not being used -