Author | Topic: Problema con XP | |
---|---|---|
Osvaldo Ramirez | Problema con XP on Wed, 28 Jun 2006 17:38:56 -0600 Estimados ... No me acuerdo donde, pero ando buscando si primero pongo esto : append blank replace ..... skip(0) dbrunlock() o append blank replace .... dbrunlock() skip(0) Tuve hace tiempo problemas con XP, pues se quedaba informacion en la memoria y no la escribia al disco duro, y jugue con la instruccino commit, pero se volvia lento mi app. Pense que evitando commit, y poniendo skip(0) forzaba al OS a escribir al disco duro. Saludos Osvaldo Ramirez | |
Akelarre | Re: Problema con XP on Thu, 29 Jun 2006 10:20:25 +0200 Primero vaca la cache y luego desbloquea el fichero. Append Blank Replace .... . . . DbCommit() o Skip(0) DbRUnlock() DbCommit() es ms rpido de COMMIT porque solo escribe la informacin del area activa no de todas. Recuerda deshabilitar mediante el registro de windows el "oportunistic Locking" para no tener problemas de corrupcin y prdida de datos. Saludos "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribi en el mensaje news:46c838a$e43dd5a$44b74@news.alaska-software.com... > Estimados ... > > No me acuerdo donde, pero ando buscando si primero pongo esto : > > append blank > replace ..... > > skip(0) > dbrunlock() > > o > > append blank > replace .... > dbrunlock() > skip(0) > > Tuve hace tiempo problemas con XP, pues se quedaba informacion en la > memoria y no la escribia al disco duro, y jugue con la instruccino commit, > pero se volvia lento mi app. > > Pense que evitando commit, y poniendo skip(0) forzaba al OS a escribir al > disco duro. > > Saludos > Osvaldo Ramirez | |
Jose Valle | Re: Problema con XP on Thu, 29 Jun 2006 14:30:48 +0200 Recuerdo haber leido en las news que dbcommit() no sirve para nada, que hace lo mismo que skip(0) y tarda mas. Lo haba dicho alguien en una reunin de usuarios de Holanda. "Akelarre" <akelarre@hotmail.com> escribi en el mensaje news:5b431b29$1f1c81af$44dd1@news.alaska-software.com... > Primero vaca la cache y luego desbloquea el fichero. > > Append Blank > Replace .... > . > . > . > DbCommit() o Skip(0) > DbRUnlock() > > > DbCommit() es ms rpido de COMMIT porque solo escribe la informacin del > area activa no de todas. > > Recuerda deshabilitar mediante el registro de windows el "oportunistic > Locking" para no tener problemas de corrupcin y prdida de datos. > > Saludos > > > "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribi en el mensaje > news:46c838a$e43dd5a$44b74@news.alaska-software.com... >> Estimados ... >> >> No me acuerdo donde, pero ando buscando si primero pongo esto : >> >> append blank >> replace ..... >> >> skip(0) >> dbrunlock() >> >> o >> >> append blank >> replace .... >> dbrunlock() >> skip(0) >> >> Tuve hace tiempo problemas con XP, pues se quedaba informacion en la >> memoria y no la escribia al disco duro, y jugue con la instruccino >> commit, >> pero se volvia lento mi app. >> >> Pense que evitando commit, y poniendo skip(0) forzaba al OS a escribir al >> disco duro. >> >> Saludos >> Osvaldo Ramirez > > > | |
Osvaldo Ramirez | Re: Problema con XP on Thu, 29 Jun 2006 13:57:47 -0600 Hola Jose Valle Y lo pongo asi : DbSkip(0) DBRUnlock() ? Curiosamente ayer perdir varios registros y hoy va uno. saludos Osvaldo Ramirez > Recuerdo haber leido en las news que dbcommit() no sirve para nada, que hace > lo mismo que skip(0) y tarda mas. Lo había dicho alguien en una reunión de > usuarios de Holanda. > > > "Akelarre" <akelarre@hotmail.com> escribió en el mensaje > news:5b431b29$1f1c81af$44dd1@news.alaska-software.com... >> Primero vacía la cache y luego desbloquea el fichero. >> >> Append Blank >> Replace .... >> . >> . >> . >> DbCommit() o Skip(0) >> DbRUnlock() >> >> >> DbCommit() es más rápido de COMMIT porque solo escribe la información del >> area activa no de todas. >> >> Recuerda deshabilitar mediante el registro de windows el "oportunistic >> Locking" para no tener problemas de corrupción y pèrdida de datos. >> >> Saludos >> >> >> "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribió en el mensaje >> news:46c838a$e43dd5a$44b74@news.alaska-software.com... >>> Estimados ... >>> >>> No me acuerdo donde, pero ando buscando si primero pongo esto : >>> >>> append blank >>> replace ..... >>> >>> skip(0) >>> dbrunlock() >>> >>> o >>> >>> append blank >>> replace .... >>> dbrunlock() >>> skip(0) >>> >>> Tuve hace tiempo problemas con XP, pues se quedaba informacion en la >>> memoria y no la escribia al disco duro, y jugue con la instruccino >>> commit, >>> pero se volvia lento mi app. >>> >>> Pense que evitando commit, y poniendo skip(0) forzaba al OS a escribir al >>> disco duro. >>> >>> Saludos >>> Osvaldo Ramirez >> >> > > | |
Osvaldo Ramirez | Re: Problema con XP on Thu, 29 Jun 2006 13:58:18 -0600 Muchas gracias Akelarre Saludos Osvaldo Ramirez | |
Osvaldo Ramirez | Re: Problema con XP on Thu, 29 Jun 2006 14:02:29 -0600 Esta es mi funcion del registro .... Por favor comentenme si esotoy mal PROCEDURE ChangeRegistry() * Begin LOCAL cKey , oReg , lRtn := .F. cKey := "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" oReg := XbpReg():NEW( cKey ) lRtn := oReg:Status() IF ! lRtn oReg:Create() ENDIF * Estos cambios son para el server. oReg:SetValue( "CachedOpenLimit" , 0 ) oReg:SetValue( "EnableOpLocks" , 0 ) oReg:SetValue( "EnableOpLockForceClose" , 1 ) * Estos son para el cliente cKey := "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" oReg := XbpReg():NEW( cKey ) lRtn := oReg:Status() IF ! lRtn oReg:Create() ENDIF * Estos son para el server. oReg:SetValue( "EnableOpLocks" , 0 ) oReg:SetValue( "EnableOpLockForceClose" , 1 ) oReg:SetValue( "UseOportunisticLocking" , 0 ) oReg:SetValue( "UtilizeNtCaching" , 0 ) oReg:SetValue( "UseLockReadUnlock" , 0 ) RETURN | |
Akelarre | Re: Problema con XP on Thu, 29 Jun 2006 23:18:48 +0200 Para el cliente: [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters] ; Disable oplocks "UseOpportunisticLocking" = dword:00000000 "EnableOpLocks" = dword:00000000 "EnableOpLockForceClose" = dword:00000001 ; Disable file caching - effectively forces a commit back to the server "UtilizeNtCaching" = dword:00000000 ; Unlocks data immediately in response to an unlock request (improves performance on W2K) "UseUnlockBehind" = dword:00000001 ; Allows data to be read even if another station has a lock in place - can prevent "deadly embrace" "UseLockReadUnlock" = dword:00000000 -------------------------------------------------------------------- Para el server: [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters] ; Prevent premature workstation disconnection - default is 0000000f (15 minutes) "autodisconnect" = dword:ffffffff ; This one is for Server 2003 - default is 2 minutes! "ConnectionNoSessionsTimeout" = dword:ffffffff ; Forces the server to really close a file when instructed "CachedOpenLimit"= dword:00000000 ; The following 2 entries force oplocks off "EnableOpLockForceClose" = dword:00000001 "EnableOpLocks" = dword:00000000 ; This one is for Win2K and later. [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MRXSmb\Parameters] "OplocksDisabled" = dword:00000001 Saludos "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribi en el mensaje news:5e8f084e$1a2a8d86$630a0@news.alaska-software.com... > > Esta es mi funcion del registro .... > Por favor comentenme si esotoy mal > > PROCEDURE ChangeRegistry() > * Begin > LOCAL cKey , oReg , lRtn := .F. > > cKey := > "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" > oReg := XbpReg():NEW( cKey ) > lRtn := oReg:Status() > IF ! lRtn > oReg:Create() > ENDIF > > * Estos cambios son para el server. > oReg:SetValue( "CachedOpenLimit" , 0 ) > oReg:SetValue( "EnableOpLocks" , 0 ) > oReg:SetValue( "EnableOpLockForceClose" , 1 ) > > * Estos son para el cliente > cKey := > "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" > oReg := XbpReg():NEW( cKey ) > lRtn := oReg:Status() > IF ! lRtn > oReg:Create() > ENDIF > > * Estos son para el server. > oReg:SetValue( "EnableOpLocks" , 0 ) > oReg:SetValue( "EnableOpLockForceClose" , 1 ) > oReg:SetValue( "UseOportunisticLocking" , 0 ) > oReg:SetValue( "UtilizeNtCaching" , 0 ) > oReg:SetValue( "UseLockReadUnlock" , 0 ) > > > RETURN | |
Osvaldo Ramirez | Re: Problema con XP on Thu, 29 Jun 2006 16:52:40 -0600 Mi siguiente Configuracion es asi 1.- Windows 98 SE, CAJA # 1, la cual al iniciar mi POS crea indicies y y actualiza informacion si la hay. 2.- Windows XP SP2 CAJA # 2, Inicia solamente el POS, ya que como es caja # 2, depente de la caja 1 y solamente ba al folder compartido y ve los datos. 3.- Windows 98 SE CAJA # 3, al igual que CAJA2, ejecuta localmente el POS y solamente va y abre los archivos que estan en la caja 1 Problema: Cada empleado llega y checa su hora de entrada en el punto de venta ( Irrelevante cual caja ) y queda registrado que esta adentro. Si el empleado cobra con su clave cualquir medicamento, lo hace y el el empleado no ha checado su ENTRADA, le sale una pantalla que no ha checado su entrada. Todo bien, pero despues de 2 ventas en la caja # 2, al momento de vender el empleado, el POS le dice que no ha checado su entrada. No tengo problemas si todos son Windows 98, pero ahora como quiero provar y lograr cambiar a Windows XP, me enfreto con esto. El codigo de mi programa es el mismo. Haber si alguien tiene algo. Saludos Osvaldo Ramirez Akelarre wrote: > Para el cliente: > > [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters] > ; Disable oplocks > "UseOpportunisticLocking" = dword:00000000 > "EnableOpLocks" = dword:00000000 > "EnableOpLockForceClose" = dword:00000001 > > ; Disable file caching - effectively forces a commit back to the server > "UtilizeNtCaching" = dword:00000000 > > ; Unlocks data immediately in response to an unlock request (improves > performance on W2K) > "UseUnlockBehind" = dword:00000001 > > ; Allows data to be read even if another station has a lock in place - can > prevent "deadly embrace" > "UseLockReadUnlock" = dword:00000000 > > -------------------------------------------------------------------- > Para el server: > > [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters] > ; Prevent premature workstation disconnection - default is 0000000f (15 > minutes) > "autodisconnect" = dword:ffffffff > ; This one is for Server 2003 - default is 2 minutes! > "ConnectionNoSessionsTimeout" = dword:ffffffff > > ; Forces the server to really close a file when instructed > "CachedOpenLimit"= dword:00000000 > > ; The following 2 entries force oplocks off > "EnableOpLockForceClose" = dword:00000001 > "EnableOpLocks" = dword:00000000 > > > ; This one is for Win2K and later. > [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MRXSmb\Parameters] > "OplocksDisabled" = dword:00000001 > > > Saludos > > > "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribió en el mensaje > news:5e8f084e$1a2a8d86$630a0@news.alaska-software.com... >> Esta es mi funcion del registro .... >> Por favor comentenme si esotoy mal >> >> PROCEDURE ChangeRegistry() >> * Begin >> LOCAL cKey , oReg , lRtn := .F. >> >> cKey := >> "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" >> oReg := XbpReg():NEW( cKey ) >> lRtn := oReg:Status() >> IF ! lRtn >> oReg:Create() >> ENDIF >> >> * Estos cambios son para el server. >> oReg:SetValue( "CachedOpenLimit" , 0 ) >> oReg:SetValue( "EnableOpLocks" , 0 ) >> oReg:SetValue( "EnableOpLockForceClose" , 1 ) >> >> * Estos son para el cliente >> cKey := >> "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" >> oReg := XbpReg():NEW( cKey ) >> lRtn := oReg:Status() >> IF ! lRtn >> oReg:Create() >> ENDIF >> >> * Estos son para el server. >> oReg:SetValue( "EnableOpLocks" , 0 ) >> oReg:SetValue( "EnableOpLockForceClose" , 1 ) >> oReg:SetValue( "UseOportunisticLocking" , 0 ) >> oReg:SetValue( "UtilizeNtCaching" , 0 ) >> oReg:SetValue( "UseLockReadUnlock" , 0 ) >> >> >> RETURN > > | |
Akelarre | Re: Problema con XP on Fri, 30 Jun 2006 02:43:02 +0200 La mquina que acta como servidor es la 1? No puedes (bueno, no debes) poner como servidor una mquina con W9x si alguno de los clientes tiene XP, provoca prdidas de datos y corrupciones de ndices hagas lo que hagas. Sin embargo se puede poner como servidor una mquina con XP y clientes con W9x o XP sin problemas siempre que se haya tocado el registro para quitar el "opportunistic locking" tanto en el cliente como en el servidor. Saludos "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribi en el mensaje news:10ee2597$1275bec0$63042@news.alaska-software.com... > > Mi siguiente Configuracion es asi > > > 1.- Windows 98 SE, CAJA # 1, la cual al iniciar mi POS crea indicies y y > actualiza informacion si la hay. > > 2.- Windows XP SP2 CAJA # 2, Inicia solamente el POS, ya que como es caja > # 2, depente de la caja 1 y solamente ba al folder compartido y ve los > datos. > > 3.- Windows 98 SE CAJA # 3, al igual que CAJA2, ejecuta localmente el > POS y solamente va y abre los archivos que estan en la caja 1 > > Problema: > > Cada empleado llega y checa su hora de entrada en el punto de venta ( > Irrelevante cual caja ) y queda registrado que esta adentro. > > Si el empleado cobra con su clave cualquir medicamento, lo hace y el el > empleado no ha checado su ENTRADA, le sale una pantalla que no ha checado > su entrada. > > Todo bien, pero despues de 2 ventas en la caja # 2, al momento de vender > el empleado, el POS le dice que no ha checado su entrada. > > No tengo problemas si todos son Windows 98, pero ahora como quiero provar > y lograr cambiar a Windows XP, me enfreto con esto. > El codigo de mi programa es el mismo. > > Haber si alguien tiene algo. | |
Osvaldo Ramirez | Re: Problema con XP on Thu, 29 Jun 2006 19:15:43 -0600 Gracias Akelarre > ¿La máquina que actúa como servidor es la 1? Si > No puedes (bueno, no debes) poner como servidor una máquina con W9x si > alguno de los clientes tiene XP, provoca pérdidas de datos y corrupciones de > índices hagas lo que hagas. Pq ? Saludos Osvaldo Ramirez > Sin embargo se puede poner como servidor una máquina con XP y clientes con > W9x o XP sin problemas siempre que se haya tocado el registro para quitar el > "opportunistic locking" tanto en el cliente como en el servidor. > > Saludos > > "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribió en el mensaje > news:10ee2597$1275bec0$63042@news.alaska-software.com... >> Mi siguiente Configuracion es asi >> >> >> 1.- Windows 98 SE, CAJA # 1, la cual al iniciar mi POS crea indicies y y >> actualiza informacion si la hay. >> >> 2.- Windows XP SP2 CAJA # 2, Inicia solamente el POS, ya que como es caja >> # 2, depente de la caja 1 y solamente ba al folder compartido y ve los >> datos. >> >> 3.- Windows 98 SE CAJA # 3, al igual que CAJA2, ejecuta localmente el >> POS y solamente va y abre los archivos que estan en la caja 1 >> >> Problema: >> >> Cada empleado llega y checa su hora de entrada en el punto de venta ( >> Irrelevante cual caja ) y queda registrado que esta adentro. >> >> Si el empleado cobra con su clave cualquir medicamento, lo hace y el el >> empleado no ha checado su ENTRADA, le sale una pantalla que no ha checado >> su entrada. >> >> Todo bien, pero despues de 2 ventas en la caja # 2, al momento de vender >> el empleado, el POS le dice que no ha checado su entrada. >> >> No tengo problemas si todos son Windows 98, pero ahora como quiero provar >> y lograr cambiar a Windows XP, me enfreto con esto. >> El codigo de mi programa es el mismo. >> >> Haber si alguien tiene algo. > > > > | |
Akelarre | Re: Problema con XP on Fri, 30 Jun 2006 03:21:39 +0200 >> No puedes (bueno, no debes) poner como servidor una mquina con W9x si >> alguno de los clientes tiene XP, provoca prdidas de datos y corrupciones >> de ndices hagas lo que hagas. > > Pq ? > Pues realmente no lo se, pero lo he ledo en varios posts y lo he podido comprobar empricamente en varias ocasiones. Cambies lo que cambies del registro, aadas skip(0) o Commit... si el servidor es W9x y el cliente XP... problemas. Le das la vuelta y pones de server el XP y de cliente el W9x y va como la seda. Saludos | |
Jose Valle | Re: Problema con XP on Fri, 30 Jun 2006 14:25:41 +0200 A mi tambin me dijeron que no pusiera un servidor w98 y un cliente xp. Tampoco se por que. "Akelarre" <akelarre@hotmail.com> escribi en el mensaje news:2cb5937a$719b9d62$67713@news.alaska-software.com... >>> No puedes (bueno, no debes) poner como servidor una mquina con W9x si >>> alguno de los clientes tiene XP, provoca prdidas de datos y >>> corrupciones de ndices hagas lo que hagas. >> >> Pq ? >> > > > Pues realmente no lo se, pero lo he ledo en varios posts y lo he podido > comprobar empricamente en varias ocasiones. > Cambies lo que cambies del registro, aadas skip(0) o Commit... si el > servidor es W9x y el cliente XP... problemas. > Le das la vuelta y pones de server el XP y de cliente el W9x y va como la > seda. > > Saludos > | |
Jose Valle | Re: Problema con XP on Fri, 30 Jun 2006 15:19:45 +0200 Hola Osvaldo: Akelarre hace mas cambios en el registro, entre ellos "ConnectionNoSessionsTimeout" = dword:ffffffff Como lo pondras tu en la funcion de Thomas? oReg:SetValue( "ConnectionNoSessionsTimeout" , ?) No acabo de entender que en un tema tan importante est tan poco claro lo que hay que hacer!!! "Osvaldo Ramirez" <ramirezosvaldo@yahoo.com> escribi en el mensaje news:5e8f084e$1a2a8d86$630a0@news.alaska-software.com... > > Esta es mi funcion del registro .... > Por favor comentenme si esotoy mal > > PROCEDURE ChangeRegistry() > * Begin > LOCAL cKey , oReg , lRtn := .F. > > cKey := > "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" > oReg := XbpReg():NEW( cKey ) > lRtn := oReg:Status() > IF ! lRtn > oReg:Create() > ENDIF > > * Estos cambios son para el server. > oReg:SetValue( "CachedOpenLimit" , 0 ) > oReg:SetValue( "EnableOpLocks" , 0 ) > oReg:SetValue( "EnableOpLockForceClose" , 1 ) > > * Estos son para el cliente > cKey := > "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" > oReg := XbpReg():NEW( cKey ) > lRtn := oReg:Status() > IF ! lRtn > oReg:Create() > ENDIF > > * Estos son para el server. > oReg:SetValue( "EnableOpLocks" , 0 ) > oReg:SetValue( "EnableOpLockForceClose" , 1 ) > oReg:SetValue( "UseOportunisticLocking" , 0 ) > oReg:SetValue( "UtilizeNtCaching" , 0 ) > oReg:SetValue( "UseLockReadUnlock" , 0 ) > > > RETURN | |
Osvaldo Ramirez | Re: Problema con XP on Thu, 29 Jun 2006 18:02:56 -0600 Muchas gracias Jovenes Ilustres Le voy a preguntar a Thomas Braun, como poner un valor en exadecimal. Saludos Osvaldo Ramirez |