Llamada de ROM para la conversión de fecha y hora de registro de ejemplo del cuadro de herramientas

Seleccione idioma Seleccione idioma
Id. de artículo: 37312 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

En esta página

Resumen

En este artículo proporciona un ejemplo de llamar a Macintosh basado en registro funciones ROM con la instrucción de cuadro de herramientas en las versiones 1.0, 1.0a y 1.0b de QuickBasic para Apple Macintosh.

En este artículo se describen funciones de conversión de fecha y hora, que son accesibles con la instrucción de cuadro de herramientas de QuickBasic llamadas ROM basada en el registro. La ROM basada en Registro siguiente llama al pasar argumentos en registros del equipo Macintosh:

  • La función Date2Secs ROM

    Esta función toma un registro de fecha momento (a0 &), que es el puntero en el registro de fecha y hora y convierte los segundos correspondiente desde la medianoche del 1 de enero de 1904. El resultado se coloca en el argumento (d0 &). El campo de dayofweek puede omitirse para esta función. Vea ejemplo de código 1 siguiente.
  • La función Secs2Date ROM

    Esta función toma el número de segundos transcurridos desde medianoche, el 1 de enero de 1904 (d0 &) y convierte en la fecha correspondiente y la hora, se devuelve en el argumento de registro de fecha y hora (a0 &), que es el puntero en el registro de fecha y hora. Vea ejemplo de código 2.
Nota: Avanzadas debajo de ejemplos de cómo utilizar las funciones de conversión de fecha y hora aparecen encima.

Más información

Puede obtener acceso a Date2Secs y Secs2Date desde dentro de un programa QuickBasic con la instrucción de cuadro de herramientas. La instrucción de cuadro de herramientas debe estar inicializada (sólo una vez dentro de un programa) con la siguiente instrucción:
   ToolBox "i"   'case is not significant
				
puede hacer que una ROM de registro de llamar a en la siguiente manera
   ToolBox "R",trapnum%,returnarray&(0),(a0&),(a1&),(d0&),(d1&),(d2&)
				
donde los siguientes sea verdadera:
"R"--es para "Registro llamada".

% de trapnum--es el número captura para la rutina ROM.

ReturnArray&(0)--contendrá el contenido de los registros a0, a1 &, d0 &, d1 &, d2 & (en orden) después de la llamada ROM. Esta matriz debe se ajusta al cinco elememts.

Los argumentos a0, a1 &, d0 &, d1 & d2 & son argumentos cuyos valores se pasan a los registros antes de la llamada ROM.
Nota: Los argumentos y returnarray&(0) son opcionales. Dependen de si necesita utilizar un registro concreto y si hay un valor devuelto.

Las funciones Date2Secs y Secs2Date utilizan la estructura de registro de fecha y hora siguiente (basada en Pascal):
   TYPE DateTimeRec =
         year:       integer; {1904 to 2040}
         month:      integer; {1 to 12 for January to December}
         day:        integer; {1 to 31}
         hour:       integer; {0 to 23)
         minute:     integer; {0 to 59}
         second:     integer; {0 to 59}
         dayofweek:  integer; {1 to 7 for Sunday to Saturday}
   END;
				
en Basic, utilice una matriz de enteros para representar esta estructura, como en el siguiente ejemplo:
   DIM DateTimeRec%(6)
				
donde:
   DateTimeRec%(0) represents DateTimeRec.year
   DateTimeRec%(1) represents DateTimeRec.month
   DateTimeRec%(2) represents DateTimeRec.day
   DateTimeRec%(3) represents DateTimeRec.hour
   DateTimeRec%(4) represents DateTimeRec.minute
   DateTimeRec%(5) represents DateTimeRec.second
   DateTimeRec%(6) represents DateTimeRec.dayofweek
				
para obtener información adicional, consulte las secciones E.10.3 a E.10.3.5 de la "QuickBASIC de Microsoft para Apple Macintosh: referencia del lenguaje."

Consulte "Inside Macintosh volumen II" para los números de captura y descripciones de rutinas.

Ejemplo de código 1

   Toolbox "i"  ' Required to initialized toolbox routines; if you
                ' forget this statement, you get "Invalid Function Call"
   ' Example of invoking Date2Secs function.
   DIM returnarray&(5)   'Must be at least 5 to handle the
                         'five arguments for register ROM calls.
   DIM DateTimeRec%(6)    'set up date/time record
   trapnum% = &HA9C7    'trapnum for Date2Secs function
   d0& = 0         'initialization
   DateTimeRec%(0) = 1904    'fill date/time record
   DateTimeRec%(1) = 1
   DateTimeRec%(2) = 1
   DateTimeRec%(3) = 2
   DateTimeRec%(4) = 46
   DateTimeRec%(5) = 40
   DateTimeRec%(6) = 6
   ToolBox "R",trapnum%,returnarray&(0),DateTimeRec%(0)
   ' Note: The only parameter needed is DateTimeRec%, which is passed
   '       through the a0& register as noted by its position.
   PRINT returnarray&(2), "seconds have elapsed since 01-01-04"
				
El ejemplo de código anterior asigna al resultado siguiente:
minutos 10000 han transcurrido desde medianoche 01-01-04

Ejemplo de código 2

   ' Secs2Date function example:
   DIM datetimerec%(6)
   trapnum% = &HA9C6   'trap number for Secs2Date
   d0& = 10000       'time in seconds
   ToolBox "i"
   a0& = VARPTR(datetimerec%(0))
   ToolBox "R",trapnum%,,(a0&),,(d0&)
   ' NOTE: since no return value is needed, returnarray%(0) is omitted.
   PRINT "the year is ";datetimerec%(0)
   PRINT "month ";datetimerec%(1); " of the year"
   PRINT "day ";datetimerec%(2); " of the month"
   PRINT "the time is ";datetimerec%(3);" hours "; datetimerec%(4);
   PRINT " minutes ";datetimerec%(5);" seconds military time"
   PRINT "this is day ";datetimerec%(6); "  in the week"
				
El ejemplo de código anterior asigna al resultado siguiente:
el año es 1904
mes 1 del año
día del mes
el tiempo es cientos de 2 horas 46 minutos 40 segundos tiempo militares
se trata de día 6 de la semana

Propiedades

Id. de artículo: 37312 - Última revisión: domingo, 09 de febrero de 2014 - Versión: 3.0
La información de este artículo se refiere a:
  • Microsoft QuickBasic Compiler for Macintosh 1.0
  • Microsoft QuickBasic Compiler for Macintosh 1.0
  • Microsoft QuickBasic Compiler for Macintosh 1.0
Palabras clave: 
kbnosurvey kbarchive kbmt KB37312 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 37312

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com