Hallo,
geht bestimmt auch einfacher. Aber wir haben dafür ein kleines C-Modul was nach Aufruf einfach die aktuelle Lib zurückgibt. Muss aber als Modul eingebunden wurden. Da ein normaler Call mangels Lib ja nicht geht:
Code:
void GET_LIB(char *x_pgmlib)                                        
{                                                                     
      char callstk[2000];                                             
      char errcode[4];                                                
      struct Qwc_JIDF0100 jobinf;                                     
      struct Qwv_CSTK0100 *header;                                    
      struct Qwv_RCSTK_Entry *entry;                                  
      int recvlen = 2000;                                             
                                                                      
      memset(&jobinf, ' ', sizeof(jobinf));                           
      memset(&callstk, 0, 2000);                                      
      memset(&errcode, 0, 4);                                         
                                                                      
      memcpy(&jobinf.Job_Name, "*", 1);                               
      memset(&jobinf.Reserved, 0, 2);                                 
      memset(&jobinf.Thread_Id, 0, 8);                                
      jobinf.Thread_Indicator = 1;                                    
                                                                      
      QWVRCSTK(&callstk,       /* Receiver variable              */   
               recvlen,          /* Length of receiver variable    */ 
               "CSTK0100",       /* Format name                    */ 
               &jobinf   ,       /* Job identification information */ 
               "JIDF0100",       /* Format of job identification   */ 
               &errcode);        /* Error code                     */ 
                                                                         
      header = (struct Qwv_CSTK0100*)&callstk;                           
      entry  = (struct Qwv_RCSTK_Entry*)(&callstk[header->Entry_Offset]);
      memcpy(x_pgmlib, entry->Program_Library, 10);                      
                                                                         
    return;                                                              
}
Tschüß
Benedikt