152 Chapter3
Programming Examples
Using C Programming Over Socket LAN
if (optind < argc)
{
while (optind < argc) {
/* <hostname> <command> provided; only one command string */
strcat(command, argv[optind++]);
if (optind < argc) {
strcat(command, " ");
} else {
strcat(command, "\n");
}
}
}
else
{
/* Only <hostname> provided; input on <stdin> */
strcpy(command, "");
if (optind > argc)
{
usage(basename);
exit(1);
}
}
}
else
{
/* no hostname! */
usage(basename);
exit(1);
}
/**********************************************/
/* open a socket connection to the instrument */
/**********************************************/
#ifdef WINSOCK
if (init_winsock() != 0) {
exit(1);
}
#endif /* WINSOCK */
instSock = openSocket(destination, SCPI_PORT);
if (instSock == INVALID_SOCKET) {
fprintf(stderr, "Unable to open socket.\n");
return 1;
}
/* fprintf(stderr, "Socket opened.\n"); */
if (strlen(command) > 0)
{
/********************************************************/
/* if the command has a '?' in it, use queryInstrument. */
/* otherwise, simply send the command. */
/********************************************************/