First of all...I do not think .NET can handle jks files as source of certificate... you need pfx files...
See here one options how to convert between the two or connect the device vendor for one...
Create a PKCS12 (.pfx / .p12) from a JKS / JAVA keystore[
^]
As for the WSDL...The moment you
referenced[
^] VS created a wrapper class using the name you assigned to the reference...
Using that class name you can create an object and call all the exposed methods of the web server...
WebReference service = new WebReference();
X509Certificate2 cert = new X509Certificate2();
cert.Import("client_cert.pfx", "[the password]", DefaultKeySet);
service.Url = "[the actual server address]";
service.ClientCertificates.Add(cert);
service.Method();
(Sorry. Just realized you asked for VB.NET... The difference is only in the language syntax...)
[EDIT]
According to your comments...
You can reference a WSDL in two ways: Web Reference (older) and Service Reference (newer)... In each case there are different ways to set the target address...
For Web Reference:
WebReference.OSAccessService oA = new WebReference.OSAccessService( );
oA.Url = "address-goes-here";
For Service Reference:
ServiceReference.OSAccessClient oB = new ServiceReference.OSAccessClient( );
oB.Endpoint.Address = new System.ServiceModel.EndpointAddress( "address-goes-here" );