Dudu.. algumas vezes eu via o pessoal dizendo "Ajudem o pobre desesperado!" eu ria e achava que era uma expressão usual do fórum... Mas agora estou sentindo na pele o que é este
desespero! Permita-me contar brevemente o que estou passando...
S O C O R R O !
Já postei pouco tempo atraz este problema (veja KRINSKI) e nao obtive help nenhum.
- Programo em clipper há 15 anos
-Atualmente trabalho em clipper em uma grande empresa de Transportes
- Fiz um programinha por fora para uma central de reservas (hotel)
**************************************************
- Características:
04 micros em rede
2 Micros Win98 (usando o emm386.exe RAM) config.sys
2 Micros Xp (usando EMM=RAM) no config.nt
1 Servidor Windows 2003 server (acho)
- Compilador Clipper 5.2e
Rtlink 7 (plus)
Blinker 7
- unica lib que utilizo é DBFCDX
- Nao abro arquivos desnecessarios
- todos arquivos abertos em modo compartilhados
- uso corretamente o bloqueio de registros e o desbloqueio no final
- Deixei o Exe no servidor e fiz atalho para todos buscarem-no lá
- O exe ficou pequeno com o blinker - menos de 300k
*****************************************************
mas o erro é constante, nao sei mais o que fazer... o pessoal da central de reservas me liga
umas 20 vezes ao dia e eu nao sei o que fazer para parar este erro.
Mudei para o Exospace e o erro continua... só que com mensagens diferentes
ERROR (35) GENERAL protection fault in CENTRAL.EXE at 03e7:299A code:0000 ss=0A57 ds= 0A7F
es= 0A47 ax= 0A47 sx= 003F cx= 7ECB dx= F251 sp=73DC bp=7622 si=F469 di=047F
Achei na internet uma possivel causa: meu dbfcdx poderia estar bichado, baixei outro na internet alias tinha o mesmo tamanho 99777 sei lá... vamos ver...
Arquivo Central.lnk
===================
BLINKER EXECUTABLE CLIPPER F220;SWAPPATHC:\TEMP;
BLINKER EXECUTABLE COMPRESS 1
BLI EXE EXT
BLINKER INCREMENTAL OFF
OUTPUT CENTRAL
FILE CENTRAL
BEGINAREA
FILE ROTINA
FILE ROTHOTEL
FILE ACESSO
FILE ABRE
FILE REL_FIC
FILE CEN_BHOS
FILE CEN_BAPT
FILE CEN_ADIA
FILE CEN_HOSP
FILE CEN_VISU
FILE CEN_GRUP
FILE CEN_RESE
FILE CEN_ALVE
FILE CEN_VEND
FILE CEN_RVCH
FILE CEN_ESPE
ENDAREA
LIB=C:\CLIPPER5\LIB\DBFCDX.LIB
SEA BLXRATEX <-nao sei para que serve!
SEA BLXCLP52 <-nao sei para que serve!
@CL520MIN.LNK <-nao sei para que serve!
=======================================================================
Arquivo Central.RMK
objs=\
CENTRAL,\
ROTINA,\
ROTHOTEL,\
ACESSO,\
ABRE,\
REL_FIC,\
CEN_BHOS,\
CEN_BAPT,\
CEN_ADIA,\
CEN_HOSP,\
CEN_VISU,\
CEN_GRUP,\
CEN_RESE,\
CEN_ALVE,\
CEN_VEND,\
CEN_RVCH,\
CEN_ESPE \
.prg.obj:
CLIPPER $** /M
CENTRAL.OBJ: CENTRAL.PRG
ROTINA.OBJ: ROTINA.PRG
ROTHOTEL.OBJ: ROTHOTEL.PRG
ACESSO.OBJ: ACESSO.PRG
ABRE.OBJ: ABRE.PRG
REL_FIC.OBJ: REL_FIC.PRG
CEN_BHOS.OBJ: CEN_BHOS.PRG
CEN_BAPT.OBJ: CEN_BAPT.PRG
CEN_ADIA.OBJ: CEN_ADIA.PRG
CEN_HOSP.OBJ: CEN_HOSP.PRG
CEN_VISU.OBJ: CEN_VISU.PRG
CEN_GRUP.OBJ: CEN_GRUP.PRG
CEN_RESE.OBJ: CEN_RESE.PRG
CEN_ALVE.OBJ: CEN_ALVE.PRG
CEN_VEND.OBJ: CEN_VEND.PRG
CEN_RVCH.OBJ: CEN_RVCH.PRG
CEN_ESPE.OBJ: CEN_ESPE.PRG
CENTRAL.EXE: \
CENTRAL.OBJ \
ROTINA.OBJ \
ROTHOTEL.OBJ \
ACESSO.OBJ \
ABRE.OBJ \
REL_FIC.OBJ \
CEN_BHOS.OBJ \
CEN_BAPT.OBJ \
CEN_ADIA.OBJ \
CEN_HOSP.OBJ \
CEN_VISU.OBJ \
CEN_GRUP.OBJ \
CEN_RESE.OBJ \
CEN_ALVE.OBJ \
CEN_VEND.OBJ \
CEN_RVCH.OBJ \
CEN_ESPE.OBJ \
BLINKER @central readonly
============================================================
Bem Ao executar o programa ... tudo ok
Mas ao fazer operacoes que gravem no arquivo ... (dbcommit, replace etc)
BLX286 : 1313 : exception error 0D : general protection fault, code = 0000h
Active host is DPMI (ß7.00 iP? 15360 Kb)
Reg Value Limit Base Flags Segment Module File
CS 020F F0F3 02A56394 FB00 02 CENTRAL C:\HOTEL\CENTRAL.EXE
DS 0AAF 03FF 02AB9460 F300 ****
ES 0277 047F 02A3D620 F300 0F CENTRAL C:\HOTEL\CENTRAL.EXE
SS 027F FFFF 029A64FC F300 10 CENTRAL C:\HOTEL\CENTRAL.EXE
Código: Selecionar todos
BF 28 01 8B F2 1F D1 E9 [IP] F3 A5 13 C9 F3 A4 1F 8B 4E F6
[Registers] AX=0277 BX=003F CX=7F00 DX=0251 CS:IP=020F:E5B2
SI=03FF DI=0315 BP=6F98 SP=6D52
FL=3A17 OV UP EI NT PL NZ AC PE CY
[Stack value SS] 0000 0400 027F 002D 0000 6F98 E441 020F 0018 0AAF 001B 0AAF
[SP] 027F B99E A38A 0128 0277 4945 4F52 4956 4752 4E49 4149 4120
[Stack frame SS] 003F 015B 0003 0000 FFAF 0000 00F6 002D 0000 0AAF 0018 0AAF
[BP] 6FCA E962 020F B99E 0357 A38A 7534 AF28 0357 A426 0357 0000[/color][/b]
----------------------------------------------
pra finalizar vai aí a gama de parametros que achei para o blinker... mas ninguem sabe ao certo o que faz todos eles.
JÁ USEI VARIAS COMBINACOES E NADA.
#------------------------Exemplo 1 Simples -----------------------------
BLINKER EXECUTABLE CLIPPER F220;SWAPPATHC:\TEMP;
BLINKER EXECUTABLE COMPRESS 1
BLI EXE EXT # Remove for Real mode
BLINKER INCREMENTAL OFF # To improve Memory(0) and speed
------------------------Exemplo 2 -------------------------------------
Blinker Cache EMS 50%,50%
Blinker Cache XMS 50%,50%
Blinker Link EMS ON
BLINKER EXECUTABLE CLIPPER F220;SWAPPATHC:\TEMP;
Blinker Link XMS ON
Blinker Exec Exte
BLINKER EXECUTABLE COMPRESS 1
Blinker Memo Pack 60
Blinker Incr Pad 256
Blinker Over Page On
Blinker Over Opsi 60
------------------------Exemplo 3 -------------------------------------
BLINKER INCREMENTAL OFF
BLINKER CLIPPER PAGE OFF
BLINKER link XMS ON
BLINKER EXECUTABLE EXTENDED 2048
BLINKER HOST MESSAGE ON
BLINKER HOST DPMI ON
BLINKER HOST VCPI ON
BLINKER HOST XMS ON
BLINKER PROCEDURE DEPTH 70
BLINKER EXECUTABLE COMPRESS 1
blinker executable nodelete
stack 7068
map
nobell
------------------------Exemplo 4 -------------------------------------
BLINKER EXECUTABLE EXTENDED
BLINKER EXECUTABLE ALIGN 64
BLINKER INCREMENTAL OFF
BLINKER EXECUTABLE NODELETE
BLINKER EXECUTABLE CLIPPER /F:255 /DYNF:8 /SWAPK:65535 /SWAPPATH:'' /TEMPPATH:''
NOBELL
STACK 7168
BLINKER INCREMENTAL OFF
BLINKER OVERLAY FIXED
BLINKER OVERLAY UMB ON
BLINKER OVERLAY PAGEFRAME ON
BLINKER CACHE EMS 256,0%
BLINKER CACHE XMS 256,0%
BLINKER OVERLAY OPSIZE 40
BLINKER EXECUTABLE CLIPPER F200
------------------------Exemplo 5 -------------------------------------
BLINKER INCREMENTAL OFF
BLINKER EXECUTABLE CLIPPER F250
BLINKER PROCEDURE DEPTH 140
BLINKER EXECUTABLE NODELETE
BLINKER EXECUTABLE COMPRESS 1
BLINKER EXECUTABLE EXTENDED
stack 7068
MAP S,A
#------------------------Exemplo 6 -------------------------------------
BLINKER OVERLAY FIXED # Use a fixed overlay area instead of the free pool
BLINKER OVERLAY OPSIZE 60 # Allocate 60k to the overlay pool
BLINKER INCREMENTAL OFF # Perform a full link
BLINKER OVERLAY PAGEFRAME ON # Use expanded ram for overlay pool to save memory
BLINKER OVERLAY THRESHOLD 256 # Use these commands only if using Blinker 2.0 and above
BLINKER CACHE XMS 512, 25%
BLINKER CACHE EMS 128, 50%
BLINKER EXECUTABLE EXTENDED # Usa memoria extendida
BLINKER EXECUTABLE NODELETE # Cria exe apesar dos "unresolved external"
#------------------------Exemplo 7 -------------------------------------
BLINKER INCREMENTAL OFF
BLINKER MEMORY CLEAR 1
BLINKER CACHE XMS 8192, 25%
BLINKER OVERLAY OPSIZE 1
BLINKER OVERLAY UMB ON
BLINKER OVERLAY THRESHOLD 64
BLINKER EXECUTABLE EXTENDED 8192 // 4096 //8192
BLINKER EXECUTABLE ALIGNMENT 64
BLINKER EXTMEM BLOCK 512
BLINKER EXTMEM LIMIT 8192 //4096 //8192
BLINKER LOWMEM RESERVE 64
BLINKER OVERLAY PAGEFRAME ON
BLINKER HOST QDPMI ON
BLINKER HOST DPMI ON
BLINKER HOST VCPI ON
BLINKER HOST XMS ON
#------------------------Exemplo 8 -------------------------------------
# uso de overlays
BLINKER OVERLAY FIXED
BLINKER OVERLAY OPSIZE 60 # tamanho del overlay 60k
BLINKER INCREMENTAL OFF # linkado completo OFF /o no ON
BLINKER OVERLAY PAGEFRAME ON # uso de la memoria expandida para los overlays
BLINKER OVERLAY THRESHOLD 256 # tamanho más pequeña para un overlay
BLINKER CACHE XMS 512, 25%
BLINKER CACHE EMS 128, 50%
#------------------------Exemplo 9 -------------------------------------
Blinker Exec Clipper //BadCache //Dynf:8 //F:254 //Noidle (Não use mais Set Clipper no
Autoexec.bat)
Blinker Exec Comp 2
Blinker Host Mess Off
Blinker Exec Exte
Search BlxRatex
Search BlxClp53
Blinker Incr Pad 128
Blinker Memory Pack 2
Blinker Over Page On
Blinker Over Opsi 60
SE ALGUEM SE DISPUSER A ENCONTRAR A SOLUÇÃO E O PROGRAMA FINALMENTE SE ESTABILIZAR DIGA AÍ SEU PREÇO DAS HORAS GASTAS PARA REEMBOLSO. -