Am I seeing something different... or am I just clueless on how RBase and it's
Scratch/temporary directory interact? I am using this in RBDOS65 with latest
patches.. 

I am using the following code...at least attempting to.
SET VAR vm_doswin = (CVAL('version'))
SET VAR vm_sloc1 = (SLOC(.vm_doswin,'DOS'))
SET VAR vg_tmpdir TEXT
SET VAR vm_temp TEXT = NULL
SET VAR vm_temp = (ENVVAL('TEMP')) --See if TEMP is defined in Environment
IF vm_temp IS NOT NULL THEN
  SET SCRATCH .vm_temp
  SET VAR delfiles TEXT = ('ERASE ' + .vm_temp + '\' + '*.$$$')
  IF vm_sloc1 = 0 THEN
    SET ERROR MESSAGES 2926 OFF
    SET ERROR MESSAGES 2077 OFF
  ENDIF
  &delfiles
  IF vm_sloc1 = 0 THEN
    SET ERROR MESSAGES 2077 ON
    SET ERROR MESSAGES 2926 ON
  ENDIF
  SET VAR vm_mycurdir = (CVAL('currdir'))
ELSE
  SET VAR vm_dir INTEGER = (CHKFILE('C:\WINNT\TEMP'))
  IF vm_dir = 1 THEN
    SET VAR vm_temp TEXT = 'C:\WINNT\TEMP'
    SET SCRATCH .vm_temp
    SET VAR delfiles TEXT = ('ERASE ' + .vm_temp + '\' + '*.$$$')
    IF vm_sloc1 = 0 THEN
      SET ERROR MESSAGES 2926 OFF
      SET ERROR MESSAGES 2077 OFF
    ENDIF
    &delfiles
    IF vm_sloc1 = 0 THEN
      SET ERROR MESSAGES 2077 ON
      SET ERROR MESSAGES 2926 ON
    ENDIF
    SET VAR vm_mycurdir = (CVAL('currdir'))
  ELSE --c:\winnt\temp does not exist, try another route.
    SET VAR vm_dir INTEGER = (CHKFILE('C:\WINDOWS\TEMP'))
    IF vm_dir = 1 THEN
      SET VAR vm_temp TEXT = 'C:\WINDOWS\TEMP'
      SET SCRATCH .vm_temp
      SET VAR delfiles TEXT = ('ERASE ' + .vm_temp + '\' + '*.$$$')
      IF vm_sloc1 = 0 THEN
        SET ERROR MESSAGES 2926 OFF
        SET ERROR MESSAGES 2077 OFF
      ENDIF
      &delfiles
      IF vm_sloc1 = 0 THEN
        SET ERROR MESSAGES 2077 ON
        SET ERROR MESSAGES 2926 ON
      ENDIF
      SET VAR vm_mycurdir = (CVAL('currdir'))
    ELSE
      SET VAR vm_dir INTEGER = (CHKFILE('C:\TEMP'))
      IF vm_dir = 1 THEN
        SET VAR vm_temp TEXT = 'C:\TEMP'
        SET SCRATCH .vm_temp
        SET VAR delfiles TEXT = ('ERASE ' + .vm_temp + '\' + '*.$$$')
        IF vm_sloc1 = 0 THEN
          SET ERROR MESSAGES 2926 OFF
          SET ERROR MESSAGES 2077 OFF
        ENDIF
        &delfiles
        IF vm_sloc1 = 0 THEN
          SET ERROR MESSAGES 2077 ON
          SET ERROR MESSAGES 2926 ON
        ENDIF
        SET VAR vm_mycurdir = (CVAL('currdir'))
      ELSE
        *(If the process gets this far then it has not found
          and has not set the SCRATCH setting to any temporary
          place for RBase to work. Attempt to create C:\TEMP and
          use it. If this fails then use the current directory
          it is in and hope the user has the proper Read/Write/
          File Scan/Create/Delete access. )
        --Record the directory the user is in now so we can
        --return to it after our other work.
        SET VAR vm_tmpcurrhold = (CVAL('CURRDIR'))
        CHDRV c:
        CHDIR c:\
        MKDIR TEMP
        SET VAR vm_dir INTEGER = (CHKFILE('C:\TEMP'))
        IF vm_dir = 1 THEN
          SET VAR vm_temp TEXT = 'C:\TEMP'
          SET SCRATCH .vm_temp
          SET VAR delfiles TEXT = ('ERASE ' + .vm_temp + '\' + '*.$$$')
          SET ERROR MESSAGES 2926 OFF
          SET ERROR MESSAGES 2077 OFF
          &delfiles
          SET ERROR MESSAGES 2077 ON
          SET ERROR MESSAGES 2926 ON
          SET VAR vm_mycurdir = (CVAL('currdir'))
        ELSE
          SET VAR vm_temp = (CVAL('CURRDIR'))
          -- will be the directory the database
          -- is in since we are connneted
          SET SCRATCH .vm_temp
          SET VAR delfiles TEXT = ('ERASE ' + .vm_temp + '\' + '*.$$$')
          SET ERROR MESSAGES 2926 OFF
          SET ERROR MESSAGES 2077 OFF
          &delfiles
          SET ERROR MESSAGES 2077 ON
          SET ERROR MESSAGES 2926 ON
          SET VAR vm_mycurdir = (CVAL('currdir'))
        ENDIF
        SET VAR vm_olddrv TEXT = NULL
        SET VAR vm_olddrv = (SGET(.vm_tmpcurrhold,2,1))
        IF vm_olddrv IS NOT NULL THEN
          CHDRV &vm_olddrv
          SET VAR vm_olddrv = (.vm_olddrv + '\')
          CHDIR &vm_olddrv
          CHDIR &vm_tmpcurrhold
          SET VAR vm_mycurdir = (CVAL('currdir'))
        ENDIF
      ENDIF
    ENDIF
  ENDIF
  SET VAR vg_tmpdir TEXT = .vm_temp
  CLEAR VAR vm_%
ENDIF
SET VAR vm_mycurdir = (CVAL('currdir'))

The problem I am having is that once the SCRATCH directory is
set then this seems to be the directory that RBase is defaulting
to now.. Is this the standard way that the SCRATCH setting a RBase
is to interact?

I can work around this, but it seems to me that it didn't use to 
work in this manner.

__________________________________________________
Do You Yahoo!?
Try FREE Yahoo! Mail - the world's greatest free email!
http://mail.yahoo.com/
================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: INTRO rbase-l
================================================
TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: UNSUBSCRIBE rbase-l
================================================
TO SEARCH ARCHIVES:
http://www.mail-archive.com/rbase-l%40sonetmail.com/

Reply via email to