Arthavus
Membros-
Total de itens
4 -
Registro em
-
Última visita
Sobre Arthavus
- Data de Nascimento 25/12/1979
Contatos
-
Website URL
http://
-
ICQ
0
Perfil
-
Location
Rio de Janeiro
Arthavus's Achievements
0
Reputação
-
Bloodshed Dev Pascal http://www.bloodshed.net/devpascal.html Uma IDE Free Software para Object Pascal, utiliza os compiladores GNU Pascal ou o Free Pascal. Não chega na sombra do Delphi mas dá para fazer umas brincadeiras.
-
Inno Setup http://www.jrsoftware.org/isinfo.php Para quem busca uma alternativa a programas pagos como InstallShield, Setup Factory, Wise Install Suite e similares, o Inno Setup é um software open source, com até seu código fonte (em Object Pascal/Delphi) disponível. Você pode criar seus próprios scripts de instalação e até embutir algumas funções em pascal. É muito fácil de trabalhar e tem tradução para o português do Brasil, seus programas de instalação além de personalizados podem ficar totalmente em português.
-
Delphi JEDI - Joint Endeavor Of Delphi Innovators http://www.delphi-jedi.org/ Projeto JEDI, criado originalmente para portar para Object Pascal algumas API´s que extendensem as funcionalidades dos programas em Delphi. Oferece códigos, componentes, bibliotecas de componentes totalmente Open Source, são mais de 400 componentes para Delphi/Kylix com código fonte e manual
-
Saudações pessoal, Estou atualmente convertendo um de meus sistemas que carregava forms de pacotes delphi dinamicamente, uma interface era usada para carregar a janela de forma que o meu form MDI nunca se preoculpava com o form dinamicamente carregado. Agora estou portando o uso de pacotes delphi para DLLS, e estou tendo o problema de excessões quando tento abrir mais de uma instância de uma janela, ou quando fecho o form e o abro novamente. Na minha MDI para um item de menu tem a seguinte chamada: type TGetJanela = function (ANomJanela: PChar; Appli: Pointer): TpJanelaPBase; stdcall; ... @GetJan := GetProcAddress(Handle, PChar('GetJanela')); SetLength(Aux, (Length(AJanClassName) + 1)); StrCopy(PChar(Aux), PChar(AJanClassName)); Janela := GetJan(PChar(Aux), Pointer(Application)); E em minha DLL tem o seguinte: function GetJanela(ANomJanela: PChar; Appli: Pointer): TpJanelaPBase; stdcall; var n: String; begin Application := TApplication(Appli); n := ANomJanela; if n = 'FCadastroMaterial' then Result := TFCadastroMaterial.Create(nil) else if n = 'FCadastroSimples' then Result := TFCadastroSimples.Create(nil) else Result := nil; end; Então resumidamente, como fazer para uma DLL retornar um form que eu possa manipular em uma MDI, e possa também abrir várias instâncias deste form ? A minha idéia é preservar a característica de meu sistema atual, onde meu form MDI se comunica com o form (de uma DLL dinamicamente carregada) através de uma interface ou de uma classe ancestral básica. Atualmente minhas janelas que estão retornando pela DLL utilizam interfaces em suas declaração, no meu form MDI eu as utilizava e também ocorria as excessões ao tentar abrir nova instâncias, ou ao fechar e abrir novamente a jenala. Alguém saberia oque pode ser feito ? Desde já, obrigado pela atenção.