[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

152.0. "Trying to run a detached MCC process" by CLUSTA::PRIESTLEY () Fri Jun 15 1990 18:40

The program I am writing is a system management agent for an entity. I want to
link with the MCC shareable image to take advantage of the entity manipulation 
routines. When I try to use the MCC$DICT routines I get access violation error. 
I was forward information that I needed the full MCC kernel. I linked with the 
following .opt file:

NAME= MCC$SSC_MAIN
UNIVERSAL = MCC$SSC_MAIN
GSMATCH = LEQUAL,1,1
COLLECT = CLUSTER1,$$$SSC$SECTION,$CODE
COLLECT = CLUSTER2,$CHAR_STRING_CONSTANTS,$DATA

mcc$ssc_main.obj
sys$share:mcc$kernel_shr.exe/shareable
sys$share:ipcshr.exe/shareable
sys$share:cmartl.exe/shareable
sys$share:vaxcrtl.exe/shareable

With the link I generate an shareable image. I install this and try to start it 
using the following command:

MANAGE/ENTERPRISE/PRESENT=MCC$SSC_MAIN

I get the following error back:

%LIB-E-KEYNOTFOU, key not found in tree
%MCC-E-FINDUSYM, Failure finding universal symbol (!AS) in shareable image (!AS)

Any ideas on how to fix this would be greatly appreciated. Thank you.
T.RTitleUserPersonal
Name
DateLines
152.1See note 83.3TOOK::GUERTINWherever you go, there you are.Sat Jun 16 1990 11:291
    
152.2filename and filename_mainGOSTE::CALLANDERWed Jun 20 1990 11:5122
    Acutally what you  are trying to do can be done. 
    
    It looks like you are trying to get around the inavailability of the
    callable MCC by making your module a PM. How to do this isn't
    documented any where, but since I'v done it before...your problem
    looks like your entry point is wrong. 
    
    The kernel expects the following of presentation modules.
    
    		filename = SOME_NAME.EXE
    		universal entry point = SOME_NAME_MAIN
    
    One argument is passed in to all PMs this is an integer value. This
    value is the hex evaluation of the logical named: SOME_NAME_LOG
    
    My guess is you .EXE and your entry point are the same name, if
    this is the case the kernel won't find your entry point.
    
    Now if this wasn't what you were trying to do, then ask again.
    
    jill
    
152.3Some suggestionsNAC::SCHLENERWed Jun 27 1990 10:2223
    You want to make sure in your main code module that you use the
    #MODULE command to give the coding module a name. It is this name that
    you use when you invoke MCC. 
    
    Also, MCC attempts to map in the module_name.exe by using LIB$ routines
    for finding symbols, etc.  These routines expect to find an installed
    module_name.exe in sys$share. So one possibility is that you do not
    have your .exe installed in the correct location.
    
    Suggestion - name your .c, .exe, and module name as MCC$SCC and use
    MCC$SCC_MAIN as your entry point (and as the value for the UNIVERSAL 
    statement). Install MCC$SCC.EXE into sys$share (typically the 
    sys$common:[syslib] directory) with the following install command
    INSTALL ADD module_name.exe /SHARED/HEADER.
    Then issue the MANAGE/ENTERPRISE/PRESENTATION=MCC$SCC command.
    
    Hope this helps.
    By the way, are you in the same group as Phil Tamer? I used to be in
    correspondance with him concerning detached mcc processes since I used
    one to write the DECnet Phase IV event sink.
    
    				Cindy