Set theNatter = CreateObject( "HNetCfg.NATUPnP")
Dim mappingPorts
Set mappingPorts = theNatter.StaticPortMappingCollection
mappingPorts.Add 1024, "TCP", 1024, "192.168.1.170", TRUE, "App"
This is VBScripting and forwards a port to the UPnP Table, if your Router has such an Option like UPnP (most do have).
One thing you should memorize, the UPnP option is not that reliable. At least it doesnt work on my PC even it is enabled and the infos are stored on my Router, but yeah something is blocking the UPnP and im sure its not the default Windows Firewall, because i gave full access to my TCP App, so not rely on this but you can try it.
Why VBScript and not VB.NET, the answer is that the f***ing VStudio 2010 failed on the point where i had all my hopes to create a more advanced UPnP Function.
NET Framework 2, 3 , 3.5 has some flaws to detect the 'UPnPNatClass' from the com library 'UPnPLib' or by referencing directly to 'hnetcfg.dll' under 'system32' which is not the same case building it on Target NET 4.
My Target is currently NET 2 and thats why i gave up and do it with the classic one 'VBScript'.