Casa
Top.Mail.Ru Yandeks.Metrika
Fórum: "Principal";
Arquivo atual: 2002.01.08;
Download: [xml.tar.bz2];

Para baixo

Eu não posso salvar o recurso em um arquivo Encontre agências semelhantes


Reyst   (2001-12-16 15:56) [0]

Caros mestres! Eu estou escrevendo em C ++, mas eu precisava escrever um programa no Delphi.
No código abaixo, quando executadas, duas linhas são “ignoradas”,
marcado !!!, apesar do fato de que o código para eles é gerado
(no navegador de código, as linhas são marcadas com um ponto azul, a otimização é desativada).
Pergunta: por quê? Eu suspeito que o cachorro está enterrado no StrCat,
porque não completamente descobri as linhas em Pascal,
apesar da afinidade óbvia de PChar com strings "string".
(FullPath - variável global, PChar)

function DoResource (Instância: HModule; ResType: PChar;
ResName: PChar; Param: Longint): BOOL; stdcall;
var
Res: TResourceStream;
Nome do arquivo: PChar;
começar
GetMem (FileName, 255);
Nome_do_Arquivo ^: = Chr (0);
Res: = TResourceStream.Create (Instância, ResName, ResType);
!!! Nome de arquivo: = StrCat (FullPath, ResName);
!!! Res.SaveToFile (FileName);
Res.Free;
DoResource: = true;
end;



PVR   (2001-12-16 19:35) [1]

function DoResource (Instância: HModule; ResType: PChar;
ResName: PChar; Param: Longint): BOOL; safacall {!!!!!!};
var
Res: TResourceStream;
Nome do arquivo: PChar;
começar
GetMem (FileName, 255);
tente
Nome_do_Arquivo ^: = Chr (0);
com TResourceStream.Create (Instance, ResName, ResType)
tente
!!! Nome de arquivo: = StrCat (FullPath, ResName);
!!! SaveToFile (nome do arquivo);
finalmente
Res.Free;
fim;
DoResource: = true;
finalmente
freemem (nome do arquivo);
final
end;



MrBeer   (2001-12-16 19:54) [2]

// ......
Nome_do_Arquivo: = StrAlloc (512);
Res: = TResourceStream.Create (Instância, ResName, ResType)
StrCopy (FileName, FullPath);
StrCat (FileName, ResName);
Res.SaveToFile (StrPas (FileName));
Res.Free;
StrDispose (FileName);
// ......



MrBeer   (2001-12-16 19:59) [3]

+ zhelatelno

vmesto StrCat polzovatj StrLCat tentar bloco sdelatj.

melhores cumprimentos.



Reyst   (2001-12-16 20:03) [4]

> MrBeer.
E assim foi. Acabei de remover tudo ao máximo durante a pesquisa de falhas.
Obrigado!



PVR   (2001-12-16 22:22) [5]

function DoResource (Instância: HModule; ResType: PChar;
ResName: PChar; Param: Longint): BOOL; safecall {!!!!!!};
var
Nome do arquivo: string;
começar
GetMem (FileName, 255);
tentar
FileName: = "";
com TResourceStream.Create (Instance, ResName, ResType)
tentar
!!! Nome_do_Arquivo: = FullPath + string (ResName);
!!! SaveToFile (nome do arquivo);
finalmente
Res.Free;
end;
DoResource: = true;
finalmente
freemem (nome do arquivo);
final
end;



Страницы: 1 filial inteira

Fórum: "Principal";
Arquivo atual: 2002.01.08;
Download: [xml.tar.bz2];

em cima









Memória: 0.57 MB
Hora: 0.03 c
4-22457
Zabl
2001-11-01 13:15
2002.01.08
Problema com DLL


1-22175
viajante
2001-12-20 16:06
2002.01.08
sobre a dica e


3-21917
Termik
2001-12-04 11:43
2002.01.08
Acessando uma tabela por um nome registrado em uma variável


1-22129
Aleksandr
2001-12-19 16:04
2002.01.08
Como remover a cintilação da sua barra de rolagem?


1-22199
T2
2001-12-16 07:16
2002.01.08
Fazer processo





afrikaans albanês Arabic armênio azerbaijano basco belarusian Bulgarian catalão Chinês simplificado) Chinês tradicional) croata checo dinamarquês Dutch Inglês estoniano filipino Finnish French
Galego georgiano German grego crioulo haitiano hebraico hindi húngaro islandês Indonesian irlandês Italian Japanese Korean letão lituano macedónio Malay maltês Norwegian
persa polonês Portuguese romeno Russa sérvio Slovak esloveno espanhol swahili sueco tailandês turco ucraniano urdu vietnamita galês ídiche bengali bósnio
cebuano esperanto gujarati hausa hmong igbo javanês kannada khmer lao latino maori marata mongol Nepali punjabi somali tâmil telugu yoruba
zulu
Английский francês Alemão Italiano Португальский russo Espanhol