Guidance
指路人
g.yi.org
Guidance Forums / Reginald Rexx / Specify a path to a MACRO dll

Register 
注册
Search 搜索
首页 
Home Home
Software
Upload

  
Forum List • Thread List • Reply • Refresh • New Topic • Search • Previous • Next First 1 Last
Message1. Specify a path to a MACRO dll
#9549
Posted by: el_supremo 2006-12-23 12:03:41 Last edited by: Jeff Glatt 2006-12-31 08:03:23 (Total edited 2 times)
I have a script that fails with the error:

Line #1, err49.1: Interpreter error

This script uses some macros but the macro statement is on line 54.

This is the main file called "make_debug_proto_syn.rex" in the rx_wizard_dll directory:
DO
    MACRO ..\rx_debug_macros\rx_debug_macros

    CATCH FAILURE
        CONDITION("M")
        RETURN

END
Message2.
#9624
Posted by: Jeff Glatt 2006-12-31 01:45:10 Last edited by: Jeff Glatt 2007-01-31 10:01:39 (Total edited 3 times)
The macro name doesn't support .. or . for directory names.

P.S. It doesn't raise FAILURE if the macro can't be found anyway. It raises SYNTAX.

The absolute best place for a macro DLL is in the same directory as the script which uses it, or a sub-directory off of where that script resides. That's where Reginald automatically assumes it is... if you don't specify a full path.

So for example:
MACRO mymacros
... means "Load MyMacros.DLL which is in the same directory as this script".
MACRO mydir/mymacros
... means "Load MyMacros.DLL which is in a sub-directoy named MyDir in the same directory as this script". (Actually, that appears to be what you're trying to do anyway with this "../" thing).

I don't support "../" in the macro name, but I do support a full directory path (starting with the drive name). If you use the full path, you can put the macro DLL anywhere. (But for scripts you distribute to others, avoid using full paths).

Probably the best policy for Reginald development is to have some sort of "Scripts" directory where you put all your scripts for development. When you make any Macro DLL, create a Project in that directory (and put the macro scripts in there of course). In any script that uses the Macro DLL, specify the Project dir name:
MACRO projectdir1/macros1, projectdir2/macros2, projectdir3/macros3
Message3.
#9626
Posted by: el_supremo 2006-12-31 08:22:49
I tried a full pathname and it doesn't matter where I put the dll, both the 6th Dec and the 21st Dec versions of Reglite say they can't find it. E.G. I put it in C: and none of these works:

MACRO c:\rx_debug_macros
MACRO c:/rx_debug_macros
MACRO c:rx_debug_macros

(where the file is C:\rx_debug_macros.dll)
It always says "The specified module could not be found"

Pete
Forum List • Thread List • Reply • Refresh • New Topic • Search • Previous • Next First 1 Last
掌柜推荐
 
 
 
 
 
 
 
 
 
 
 
 
© Thu 2024-2-29  Guidance Laboratory Inc.
Email:webmaster1g.yi.org Hits:0