• Subject: Re: C language calling program with variable name
  • From: bmorris@xxxxxxxxxx
  • Date: Fri, 9 Jun 2000 09:47:20 -0400




>Date: Thu, 8 Jun 2000 19:58:28 -0400
>From: "Pantzopoulos, Mike" <mikepantzopoulos@mynd.com>
>
>A second question........I want to be able to call a program who's name
will
>be held in a variable. I've come across references on how to do it with
the
>#PRAGMA directive, but only if the program name is known at compile time.
I
>need  to be able to do it dynamically at execution time.

Mike, here's some code that lets you dynamically determine the program
to call:

#include <miptrnam.h>
#include <stdio.h>

/*----------------------*/
/* typedef of a program */
/*----------------------*/
typedef void (somepgm_t)(int i, char *p);
#pragma linkage(somepgm_t, OS)

int main(void)
{
  somepgm_t * somepgm = NULL;
  char pgmname[11] = "#JUNKLE";
  char libname[11] = "BMORRIS";

  /*----------------------------*/
  /* Get a system pointer to    */
  /* the program.               */
  /*----------------------------*/
  somepgm = rslvsp (_Program, pgmname, libname,
                    _AUTH_OBJ_MGMT);

  if (somepgm != NULL)
  {
    somepgm (5, "abcde");
  }
}

Barbara Morris


+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.