How can I resolve a IP address? - c++-cli

Using C++/CLI, I would like to resolve a host IP from the URL. How can I accomplish this?

As you have the .NET framework available to you (you lucky thing), why not use:
IPHostEntry^ hostInfo = Dns::GetHostByName("www.blah.com");
This is in the System::Net namespace.

Related

Non local IP-ADDRESS in izpack

I'm trying get the IP address in my izpack installer. I have used the ${IP_ADDRESS} variable, but I get the local "127.0.0.1" address instead of the public IP of the computer. Is it the expected functioning? It seems quite useless to me, but I must have missed something. How can I get the public IP?
izpack: v5.0.3
java: 1.7.0_79
Ubuntu: 15.04
Thanks.
It looks like, ${IP_ADDRESS} is taken as (part from IzPack installer sources):
InetAddress localHost = InetAddress.getLocalHost();
IPAddress = localHost.getHostAddress();
hostname = localHost.getHostName();
So, the problem is, that InetAddress.getLocalHost() in most cases returns localhost addresses.
If you need to determine your public ip, it's not as easy, as just to take your localhost's address. You have to iterate over your network interfaces, getting their addresses and determine, which one you need. It's quite a common case if you need to do it not in your business code, but you need it inside the installer.
As I know, it's possible to make your own jar-file and to use it inside your installer, may be you should try to make your own ligic, that determine this public ip and is called from your IzPack installer.

Can I specify a port on a COM object server URL?

I am attempting to create a COM object from a remote source in Coldfusion and I'm running into a lot of errors. I am running 32 bit coldfusion because 64 bit does not support COM objects so I know that isn't the issue.
My question is can I specify a port in the server path in a <cfobject> tag?
I currently have (and yes, for the example I'm pointing to localhost):
<cfobject name="QBSession" type="COM" class="{6C8E45LC-B9MM-22LR-A223-50BMGBD45ACP}" action="create" context="remote" server="http://127.0.0.1" >
Can I put server="http://127.0.0.1:80"? Or will this cause further issues. I want to be able to specify a single port for the server to listen to for added security.
Thanks in advance!
Well, the answer seems to be that you cannot specify a port when creating a COM object.
The 64-bit question is still unanswered. I haven't found Adobe documentation supporting nor denying my earlier assertions, I have only found web posts that support it.
The other interesting thing is that apparently CF does not like to instantiate COM objects on different servers. Meaning I cannot pull an object from one server and instantiate it on another. I'm sure some of you knew this already but I am putting this up as a reference for all of us who didn't.
Hope this helps.

Finding a dll whose CLSID is known

I've downloaded the w3sockets. Primarily using for trying to do telnet via an application. So far we've been experimenting with vbscript. In vbscript we do something like:
Set socket = CreateObject("Socket.Tcp")
I am trying to use this for a .net application. I need to know the dll it is hosted in. Anyway I can find this?
Look in the registry under HKEY_CLASSES_ROOT and search for Socket.TCP. Drill down and it should be there.
If all there is under there is a guid like
{ECCDF543-45CC-11CE-B9BF-0080C87CDBA6}
Then search for that under the registry. It should all be there.
You can search the registry for that progid (the human-readable name), use the entry there to find the classid (the guid for the class) and use the entry there to find the path of the localserver its hosted in... or you could run up OleView.
If you need to open a TCP socket from a .NET application, why are you using an external library instead of System.Net?

How to change DNS IP for programmatically on CF 2.0

I want to change the DNS IP Address programmatically to the Adapter on Compact Framework. I have checked in the NetworkInterface class of OpenNetCF 2.3 as well, but I do not want the device to be rebooted after setting.
Could somebody throw a light on the please?
The adapter's DNS server addresses are stored in the registry in a key like this:
[HKEY_LOCAL_MACHINE\Comm\<Adapter Name>\Parms\Tcpip]
"DNS"=REG_MULTI_SZ:<IP address of the DNS name server>.
Note that it is a multi_sz value.
Simply update the registry and rebind the adapter using the SDF's NetworkInterface.Rebind() method or by calling DeviceIoControl on the NDIS device with IOCTL_NDIS_REBIND_ADAPTER (which is what the SDF's call is doing).

WCF-endpoint listening

There was no endpoint listening at http;//localhost:8080/xdxservice/xdsrepository that could accept the message. This is often caused by an incorrect address or SOAP action.
Probably a typo in the question, but your URL is invalid.
http;//localhost:8080/xdxservice/xdsrepository
should have a colon rather than a semi-colon
http://localhost:8080/xdxservice/xdsrepository
This may well not be your problem, but I thought it was worth pointing out.
the url should have a .svc extention, no? (answered in comments)
Are you running the WCF in ASP.NET or the VS webserver?
What service class is the .svc file pointing to? Is there a section for this class in the web.config or app.config file? Does this section have an element defined?
If not running under IIS, does this element have an address defined? Or does the have a base address defined?
This usually just means that the service is not running, or is otherwise not able to listen to requests. It could be the mistyped URL, or the IIS application is not started, or you have the wrong port number.
But basically, it means what the message says.