Configuración en memoria ROM para no perder la información
Explicamos como funciona las aplicaciones
RegMerge y CPY, ademas de la forma en que se trata la memoria
Flash interna.
Aquellos usuarios que utilicen el PPT8846,
se encontraran con que no existe ninguna utilidad para hacer un
Backup de la aplicacion y de las opciones ya configuradas para red
WiFi (p.ej), o energia, backlight....etc. esto cobra especial importancia
en empresas que utilicen las PDAs de forma intensiva, ya que si
no se hace una buena configuración de energia, las PDAs se
agotan enseguida.
Primero, tenemos la utilidad Regmerge
de Symbol. Esta utilidad nos permite incorporar al registro de Pocket
PC, todas aquellas opciones de configuración que queramos
que se mantengan despues de un Cold Reset o en caso de que se agote
la bateria. Resumiendo, si colocamos un archivo .reg de
registro en las carpetas \Applicaction o \Platform, Regmerge despues
de un cold boot, irá a esas carpetas e incluira en el registro
todos los archivos .reg que encuentre. Con esto, conseguiremos que
las opciones de red, energia, backlight o lo que se os ocurra, queden
perfectas para usarse al arrancar despues de un cold boot.
Por otra parte, tenemos la utilidad CPY,
que no es otra cosa que un commando COPY para por ejemplo, copiar
una .dll desde la memoria flash donde está almacenada a la
carpeta de trabajo (por lo general \Windows) de la PDA. La sintaxis
es [ \carpeta origen\archivo origen.xxx > \carpeta destino\archivo
destino.xxx]. Esto lo escribis en un .txt, le cambiais la extension
a .cpy y lo copiais en la carpeta \Platform de la PDA.
Por último, nos queda la utilidad
de AppCenter, que es una especie de bloqueador de opciones.
Con este programa que está disponible en http:\devzone.symbol.com
lo que hacemos es bloquear el escritorio de la PDA para que no se
pueda acceder a los juegos....etc. Se programan las aplicaciones
autorizadas y listo. Esta configuración se guarda despues
de un cold boot.
---------------------------------------------------------------------------------------------------------------------
El terminal PPT8846 tiene una carpeta \Application donde puedes
dejar los ficheros CAB y automatizar la instalación con dos
tipos de ficheros que usa Symbol:
Ficheros .CPY (no importa el nombre)
Con el Symbol lee estos ficheros que sirven para copiar cosas.
Por ejemplo:
\application\netcf.all.wce4.ARMV4.cab > \windows\netcf.all.wce4.ARMV4.cab
\application\System_SR_es.cab > \windows\System_SR_es.cab
\Application\eConnect.exe > \Windows\eConnect.exe
\Application\eConnect.cpl > \Windows\eConnect.cpl
\Application\eConnect.lnk > \Windows\Startup\eConnect.lnk
\Application\ModemDial.lnk > \Windows\Start Menu\ModemDial.lnk
Ficheros .REG (no importa el nombre)
Se ejecutan al hacer hard Reset y con estos registros instalan
los cabs que has copiado previamente.
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs \Prog3]
"Name"="\windows\wceload.exe"
"Command"="/noui \Windows\netcf.all.wce4.ARMV4.cab"
"Continue"=dword:0
"ColdBootOnly"=dword:1
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs \Prog4]
"Name"="\windows\wceload.exe"
"Command"="/noui \Windows\System_SR_es.cab"
"Continue"=dword:0
"ColdBootOnly"=dword:1
¿
Como instalar el lector de códigos de barras ?
Primero tienes que instalar
el SDK de Symbol, luego debes compilar para el tipo de procesador.
Cuando instales el SDK de Symbol el Archivo ActiveScan.dll se te
instalara en el eVB3.0, buscalo como un componente
//////////// parametros de inicializacion//////////////
Dim Scanning As Boolean
' Scan Event Codes
Const SCAN_EVENT_ERROR = 0
Const SCAN_EVENT_STATE_CHANGE = 1
Const SCAN_EVENT_ACTIVITY = 2
Const SCAN_EVENT_IMAGE_CAPTURE = 3
Const SCAN_EVENT_START_SEQUENCE = 4
Const SCAN_EVENT_SEQUENCE_CONTINUE = 5
Const SCAN_EVENT_SEQUENCE_FAIL = 6
Const SCAN_EVENT_SEQUENCE_ERROR = 7
'Scan_Event_State_Change Status Codes
Const SCAN_STATUS_STOPPED = 1
Const SCAN_STATUS_IDLE = 2
Const SCAN_STATUS_WAITING = 3
Const SCAN_STATUS_SCANNING = 4
Const SCAN_STATUS_AIMING = 5
Const SCAN_STATUS_EMPTY = 6
//////////////// Estado del Scanner ///////////////////////////////////
Scanning = True
Scan1.OpenScanner ///// Abrir Scanner
Scan1.EnableScanning True //// Habilitar
Scan1.EnableEvents (True) /// Halitar eventos
Scan1.SetFocus /// es obvio
/////////////////////// rutina para cuando se completa una lectura
con el scanner///////////////////////
Private Sub Scan1_ScanComplete(ByVal bstrBarCode As String, ByVal
bstrSource As String, ByVal lStatus As Long, ByVal lLabelType As
Long, ByVal lDataLength As Long)
Dim Response As Integer
Codigo = Scan1.text
'Scanning = False
' Error from scanner?
If lStatus <> 0 Then
Scan1.EnableScanning False 'Disable scanning
Scan1.CloseScanner 'Close the scanner
Response = MsgBox("Error=" & Hex(lStatus) & ".
Do you want to Retry Scan?", vbYesNo, "Scan Error")
If Response = vbYes Then
Scan1.OpenScanner 'Re-Open the scanner
Scan1.EnableScanning True 'Re-Enable Scanning
Else
App.End 'Terminate Application
End If
End If
Scan1.EnableScanning False 'Disable scanning
End Sub
////////////// evento del scanner ///////////////////////
Private Sub Scan1_ScanEvent(ByVal lEventCode As Long, ByVal lParam
As Long)
Dim Response As Integer
If lEventCode = SCAN_EVENT_STATE_CHANGE Then
If lParam <> SCAN_STATUS_SCANNING And lParam <> SCAN_STATUS_AIMING
Then
Scan1.SetSoftTrigger False 'Stop soft trigger scan
Scanning = False
End If
End If
//////////////////
|