Programa em Delphi

1. Programa em Delphi

Marcio Cesar Cury Valentin
marciovalentin

(usa CentOS)

Enviado em 03/06/2011 - 16:14h

Boa tarde!

Tenho um programa em Delphi que quando eu executo no wine dá o seguinte erro e não abre:
"Exception EExternalException in module ntdll.dll at 0002D2C8. External exception C0000025."

Se eu executo o debug gera estes erros:
err:ole:CoGetClassObject class {00000514-0000-0010-8000-00aa006d2ea4} not registered
err:ole:create_server class {00000514-0000-0010-8000-00aa006d2ea4} not registered
err:ole:CoGetClassObject no class object {00000514-0000-0010-8000-00aa006d2ea4} could be created for context 0x5
wine: Unhandled exception 0x0eedfade at address 0x0000:0x7b835a72 (thread 0009), starting debugger...

First chance exception: 0xc0000025 in 32-bit code (0x7bc3d2c8).
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
EIP:7bc3d2c8 ESP:0032f4f4 EBP:0032f558 EFLAGS:00000202( - -- I - - - )
EAX:0032f900 EBX:7bc9aff4 ECX:00110064 EDX:0032f900
ESI:0032f500 EDI:0032f584
Stack dump:
0x0032f4f4: 00000088 020b5d54 00402258 c0000025
0x0032f504: 00000001 0032f900 7bc3d2c8 00000000
0x0032f514: 7bc8d1d8 7bca3c40 7bc94b44 0032f53c
0x0032f524: 7bc6eaa0 00000000 0032f590 020b5d58
0x0032f534: 0032f998 0040286b 020a0c1c 00405279
0x0032f544: 020b5d60 0032f560 7bc9aff4 7bc9aff4
Backtrace:
=>0 0x7bc3d2c8 raise_status+0x38() in ntdll (0x0032f558)
1 0x7bc6f480 __regs_RtlRaiseException+0x4f() in ntdll (0x0032f578)
2 0x7bc26509 in ntdll (+0x16508) (0x0032f8dc)
3 0x7bc6ea10 RtlRaiseException+0xb() in ntdll (0x0032f958)
4 0x004cfb3f in programa (+0xcfb3e) (0x0032f998)
5 0x004d03cf in programa (+0xd03ce) (0x0032f9d0)
6 0x004251b0 in programa (+0x251af) (0x0032f9fc)
7 0x004253e1 in programa (+0x253e0) (0x0032fa54)
8 0x0042568e in programa (+0x2568d) (0x0032fa80)
9 0x004255cd in programa (+0x255cc) (0x0032fa9c)
10 0x0042c116 in programa (+0x2c115) (0x0032facc)
11 0x004a158a in programa (+0xa1589) (0x0032faec)
12 0x004263cc in programa (+0x263cb) (0x0032fb6c)
13 0x004238b7 in programa (+0x238b6) (0x0032fb8c)
14 0x004200fc in programa (+0x200fb) (0x0032fbb0)
15 0x00420286 in programa (+0x20285) (0x0032fcd0)
16 0x00420317 in programa (+0x20316) (0x0032fd00)
17 0x004a0f22 in programa (+0xa0f21) (0x0032fe54)
18 0x004a8828 in programa (+0xa8827) (0x0032fe78)
19 0x00f5e7f1 in programa (+0xb5e7f0) (0x0032fe90)
20 0x7b853b9c call_process_entry+0xb() in kernel32 (0x0032fea8)
21 0x7b855feb in kernel32 (+0x45fea) (0x0032fee8)
22 0x7bc6ea20 call_thread_func+0xb() in ntdll (0x0032fef8)
23 0x7bc6ebf0 call_thread_entry_point+0x6f() in ntdll (0x0032ffc8)
24 0x7bc4a32a in ntdll (+0x3a329) (0x0032ffe8)
0x7bc3d2c8 raise_status+0x38 in ntdll: subl $4,%esp
Modules:
Module Address Debug info Name (100 modules)
PE 400000- 1f53000 Export programa
PE 10000000-10159000 Deferred bemafi32
ELF 20000000-20014000 Deferred msimg32<elf>
\-PE 20010000-20014000 \ msimg32
ELF 68000000-6801e000 Deferred ld-linux.so.2
ELF 6801e000-6815e000 Export libwine.so.1
ELF 6815e000-68178000 Deferred libpthread.so.0
ELF 68178000-682d5000 Deferred libc.so.6
ELF 682d5000-682d9000 Deferred libdl.so.2
ELF 682d9000-682ff000 Deferred libm.so.6
ELF 682ff000-68307000 Deferred libnss_compat.so.2
ELF 68307000-6831e000 Deferred libnsl.so.1
ELF 6831e000-68329000 Deferred libnss_nis.so.2
ELF 68329000-68335000 Deferred libnss_files.so.2
ELF 68335000-6838f000 Deferred advapi32<elf>
\-PE 68340000-6838f000 \ advapi32
ELF 6838f000-683ed000 Deferred setupapi<elf>
\-PE 683a0000-683ed000 \ setupapi
ELF 683ed000-68424000 Deferred winspool<elf>
\-PE 683f0000-68424000 \ winspool
ELF 68424000-68554000 Deferred user32<elf>
\-PE 68440000-68554000 \ user32
ELF 68554000-685df000 Deferred gdi32<elf>
\-PE 68560000-685df000 \ gdi32
ELF 685df000-685f8000 Deferred version<elf>
\-PE 685e0000-685f8000 \ version
ELF 685f8000-6866b000 Deferred rpcrt4<elf>
\-PE 68600000-6866b000 \ rpcrt4
ELF 6866b000-68756000 Deferred comctl32<elf>
\-PE 68670000-68756000 \ comctl32
ELF 68756000-68814000 Deferred comdlg32<elf>
\-PE 68760000-68814000 \ comdlg32
ELF 68814000-689ed000 Deferred shell32<elf>
\-PE 68820000-689ed000 \ shell32
ELF 689ed000-68a4e000 Deferred shlwapi<elf>
\-PE 68a00000-68a4e000 \ shlwapi
ELF 68a4e000-68a6f000 Deferred imm32<elf>
\-PE 68a50000-68a6f000 \ imm32
ELF 68a6f000-68a93000 Deferred mpr<elf>
\-PE 68a80000-68a93000 \ mpr
ELF 68a93000-68b91000 Deferred ole32<elf>
\-PE 68ab0000-68b91000 \ ole32
ELF 68b91000-68c78000 Deferred oleaut32<elf>
\-PE 68bb0000-68c78000 \ oleaut32
ELF 68c78000-68c8c000 Deferred olepro32<elf>
\-PE 68c80000-68c8c000 \ olepro32
ELF 68c8c000-68d20000 Deferred winmm<elf>
\-PE 68c90000-68d20000 \ winmm
ELF 68d20000-68d97000 Deferred libfreetype.so.6
ELF 68d97000-68dc7000 Deferred libfontconfig.so.1
ELF 68dc7000-68dd0000 Deferred libsm.so.6
ELF 68dd0000-68de9000 Deferred libice.so.6
ELF 68de9000-68df9000 Deferred libxext.so.6
ELF 68df9000-68f16000 Deferred libx11.so.6
ELF 68f16000-68f1b000 Deferred libuuid.so.1
ELF 68f1b000-68f35000 Deferred libxcb.so.1
ELF 68f35000-68f39000 Deferred libxau.so.6
ELF 68f39000-68f3f000 Deferred libxdmcp.so.6
ELF 68f3f000-68f43000 Deferred libxinerama.so.1
ELF 68f43000-68f49000 Deferred libxxf86vm.so.1
ELF 68f49000-68f53000 Deferred libxrender.so.1
ELF 68f53000-68f5b000 Deferred libxrandr.so.2
ELF 68f5b000-68f5f000 Deferred libxcomposite.so.1
ELF 68f5f000-68f65000 Deferred libxfixes.so.3
ELF 68f65000-68f6f000 Deferred libxcursor.so.1
ELF 68f6f000-68fb9000 Deferred libcups.so.2
ELF 68fb9000-69054000 Deferred libgnutls.so.26
ELF 69054000-69060000 Deferred libavahi-common.so.3
ELF 69060000-69070000 Deferred libavahi-client.so.3
ELF 69070000-6911f000 Deferred libkrb5.so.3
ELF 6911f000-69143000 Deferred libk5crypto.so.3
ELF 69143000-69147000 Deferred libcom_err.so.2
ELF 69147000-6914b000 Deferred libkeyutils.so.1
ELF 6914b000-6915f000 Deferred libresolv.so.2
ELF 6915f000-69170000 Deferred libtasn1.so.3
ELF 69170000-69175000 Deferred libgpg-error.so.0
ELF 69175000-691b1000 Deferred libdbus-1.so.3
ELF 691b1000-691d2000 Deferred localspl<elf>
\-PE 691c0000-691d2000 \ localspl
ELF 691d2000-691ed000 Deferred spoolss<elf>
\-PE 691e0000-691ed000 \ spoolss
ELF 691ed000-69221000 Deferred uxtheme<elf>
\-PE 691f0000-69221000 \ uxtheme
ELF 6a78b000-6a794000 Deferred librt.so.1
ELF 6b133000-6b1d5000 Deferred winex11<elf>
\-PE 6b140000-6b1d5000 \ winex11
ELF 6b32f000-6b337000 Deferred libkrb5support.so.0
ELF 71e91000-71ea6000 Deferred libz.so.1
ELF 7292c000-7295b000 Deferred libgssapi_krb5.so.2
ELF 76595000-76609000 Deferred libgcrypt.so.11
ELF 77cb4000-77ce1000 Deferred ws2_32<elf>
\-PE 77cc0000-77ce1000 \ ws2_32
ELF 7ae4b000-7ae5f000 Deferred lz32<elf>
\-PE 7ae50000-7ae5f000 \ lz32
ELF 7b800000-7b97b000 Export kernel32<elf>
\-PE 7b810000-7b97b000 \ kernel32
ELF 7bc00000-7bcb7000 Export ntdll<elf>
\-PE 7bc10000-7bcb7000 \ ntdll
ELF 7bf00000-7bf04000 Deferred <wine-loader>
ELF 7ce26000-7ce4d000 Deferred libexpat.so.1
Threads:
process tid prio (all id:s are in hex)
00000008 (D) C:\pasta\programa.exe
00000009 0 <==
0000000e services.exe
00000015 0
00000014 0
00000010 0
0000000f 0
00000011 winedevice.exe
00000017 0
00000016 0
00000013 0
00000012 0
00000018 explorer.exe
00000019 0
Backtrace:
=>0 0x7bc3d2c8 raise_status+0x38() in ntdll (0x0032f558)
1 0x7bc6f480 __regs_RtlRaiseException+0x4f() in ntdll (0x0032f578)
2 0x7bc26509 in ntdll (+0x16508) (0x0032f8dc)
3 0x7bc6ea10 RtlRaiseException+0xb() in ntdll (0x0032f958)
4 0x004cfb3f in programa (+0xcfb3e) (0x0032f998)
5 0x004d03cf in programa (+0xd03ce) (0x0032f9d0)
6 0x004251b0 in programa (+0x251af) (0x0032f9fc)
7 0x004253e1 in programa (+0x253e0) (0x0032fa54)
8 0x0042568e in programa (+0x2568d) (0x0032fa80)
9 0x004255cd in programa (+0x255cc) (0x0032fa9c)
10 0x0042c116 in programa (+0x2c115) (0x0032facc)
11 0x004a158a in programa (+0xa1589) (0x0032faec)
12 0x004263cc in programa (+0x263cb) (0x0032fb6c)
13 0x004238b7 in programa (+0x238b6) (0x0032fb8c)
14 0x004200fc in programa (+0x200fb) (0x0032fbb0)
15 0x00420286 in programa (+0x20285) (0x0032fcd0)
16 0x00420317 in programa (+0x20316) (0x0032fd00)
17 0x004a0f22 in programa (+0xa0f21) (0x0032fe54)
18 0x004a8828 in programa (+0xa8827) (0x0032fe78)
19 0x00f5e7f1 in programa (+0xb5e7f0) (0x0032fe90)
20 0x7b853b9c call_process_entry+0xb() in kernel32 (0x0032fea8)
21 0x7b855feb in kernel32 (+0x45fea) (0x0032fee8)
22 0x7bc6ea20 call_thread_func+0xb() in ntdll (0x0032fef8)
23 0x7bc6ebf0 call_thread_entry_point+0x6f() in ntdll (0x0032ffc8)
24 0x7bc4a32a in ntdll (+0x3a329) (0x0032ffe8)


Alguém já pegou problema parecido?

Obrigado.


  


2. Marcos - Pelotas RS

Marcos André Gerard Alves
lgerardlucas

(usa Ubuntu)

Enviado em 13/06/2011 - 08:41h

Buenas tchê, tu esta dizendo que ao executar o programa dentro do delphi da o erro citado acima? Se for isto, o meu também. Eu trabalho com ubuntu e rodo uma máquina virtual com xp e delphi. De vez, da isto, o erro este aparece e permanece até que eu executo um bat onde limpo um monte de coisa e depois volto a compilar. O meu programa é grande, o exe dele fica com 35MB ao terminar a compilação, mas isto da para resolver rodando um programinha que tenho aqui, onde ele limpa o excesso dentro do exe, e no meu caso fica com 5MB. o Nome do programa é UDX, e tu executa ele pelo DOS assim, c:\upx.exe -9 programa.exe PRONTO!!!

Bom, amboos arquivos, tanto o bat para a limpeza e o retorno da compilação, quanto o udx para compactação do exe, posso te enviar se precisar dele, manda um email para lgerardlucas@gmail.com



3. BDE

Rossano Huf
millemiglia

(usa Slackware)

Enviado em 21/06/2011 - 11:20h

Pelo que entendi você está executando um programa feito em Delphi através do Wine, é isso? Seu programa acessa bancos de dados? Se sim, esse banco de dados é Paradox? Se sua resposta for sim novamente então você terá que instalar os arquivos do BDE para que seu programa funcione corretamente. Normalmente esses arquivos são distribuídos junto com o programa para que não ocorra erro na instalação e/ou uso do programa. Procure no Google um artigo chamado como distribuir BDE e você verá quais arquivos precisa.


4. Re: Programa em Delphi

Marcio Cesar Cury Valentin
marciovalentin

(usa CentOS)

Enviado em 21/06/2011 - 14:18h

Boa tarde millemiglia!

O banco de dados é sql server e o próprio executável já tem informações para buscar o banco. Mas o erro não é na conexão com o banco, é para abrir o executável mesmo. Ele só precisa de duas dlls para rodar, e já estão junto com o executável.

Obrigado,

Marcio.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts