I was having similar problems with yours, strugling with DLLs, but thats the problem. MDI Child form can not be created from a dll. Use BPL (Borland Package Library) instead. Here some articles you can read.
Sorry for my bad english... Niksen Harjanto On 6/19/09, Paul Bennett <[email protected]> wrote: > Hi all, > > A little bit of background first... > > I have a small application which basically consists of a MDI form > which acts as host to a series of plugin forms. The application is > relatively immature and subject to change. > > The application is only used at one site and all users have access to > a shared directory on the network where the most up to date versions > of the plugins are kept, this means it is relatively easy to check > that the application always has the latest versions of the plugins. > > Recently I have suffered from a bit of 'project creep', and I was > looking at a way of applying the same system of updating the > applications main form. > > The Problem... > > I decided to move all of the MDI Form (ie pretty much the whole > application) into a dll, create a Loader program which checks the > (local) dll version number against the (network) dll and downloads it > as necessary and then loads the dll and opens the form. > > This all seems to work fine, except... when the MDI form is closed > the application crashes with an unknown exception. > > I've checked the MDI Form and as far as I can tell every object that > is created as the form loads is freed and it unloads. > > The following is the Code for the Library Project. > > library FEBAPI; > > uses > ShareMem, > madExcept, > madLinkDisAsm, > Forms, > Dialogs, > MainUI in 'Source\MainUI.pas' {FrameworkUI}; > > {$R *.res} > > procedure RunFEB; stdcall; > var > FrameworkUI: TFrameworkUI; > begin > FrameworkUI := TFrameworkUI.Create(nil); > FrameworkUI.ShowModal; > FrameworkUI.Release; > end; > > exports RunFEB; > > begin > end. > > When stepping through the RunFEB method, after FrameworkUI.Release is > called, there are repeated calls to stdWinProc (around 5 at last > count) until the Application crashes with an unknown exception. > > Any pointers most gratefully received. > > Paul Bennett > > > > ------------------------------------ > > ----------------------------------------------------- > Home page: http://groups.yahoo.com/group/delphi-en/ > To unsubscribe: [email protected]! Groups Links > > > > [Non-text portions of this message have been removed]

