The IP address is only returned to vCenter after it has been set (or retrieved via DHCP) and then passed from VMware tools. If you need it faster you could *possibly* try to restart the VMware tools service inside the guest, but that's no guarantee. There are several factors that determine this time.
Deeply appreciate your attention and messages. It seems impossible for me to restart vmware tools in my application. I am trying the other way to assign the ipaddress into the newly created virtualNic. Currently, I find the solution of using CustomizationVM_Task to implement this requirement. According to documentation, CustomizationSpec is needed for this task, and three arguments nicSettingMap, identity and globalIPSettings are needed. right now, the parameter globalIPSettings is undetermined. To build a globalIPSettings variable, it is supposed to use two xsd:string parameters: dnsServerList & dnsSuffixList. I tested by using arrayofstring in several different formats, but always get syntax errors.
I have overcomed this obstacle and made a progress in my implementation. Currently, I come across a fault called NicSettingMismatch. the error message shows 'the number of network adapter settings in the customization specification: 1 does not match the number of network adpters present in the virtual machine". Regarding the error message, do I need to create a new CustomizationSpec involving other two adapters. Do we have other less complicated solution to solve this fault? Thank you .