I just created an application using the info you supplied
Console or windows app?
TEMailInfo, TExportInfo and TSQLServerInfo
They are records....
type
TEmailInfo = record
EmailNotification : boolean;
SMTPSvr : PChar;
PeopleToNotify : array of PChar;
end;
TExportInfo = record
ActivePlayersOnly : boolean;
DestPath : PChar;
BaseDataExport : boolean;
GlobalMatchCode : PChar;
end;
TSQLServerInfo = record
ServerName : PChar;
DatabaseName : PChar;
UserName : PChar;
Password : PChar;
end;
> DLL use properties from these objects/records?
Yes when it starts up it does use some of the properties of these records, but later on the messsages are just hard coded strings. I am seeing failure when the properties are being accessed.
At 10:17 02/11/2001 +1300, you wrote:
I just created an application using the info you supplied, and it worked ok. Are TEMailInfo, TExportInfo and TSQLServerInfo classes or records? In order to formulate the message, does the DLL use properties from these objects/records?
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Donovan J. Edye
Sent: Thursday, 1 November 2001 6:07 pm
To: Multiple recipients of list delphi
Subject: [DUG]: DLL's - Sending feedback....
G'Day,
I have the following:
//Procedure called when processing
TProcessMessage = procedure(AMsg : PChar) of object;
TExportSessionSettings = record
LogToStdOut : boolean;
ProcessMessage : TProcessMessage;
EMailInfo : TEmailInfo;
ExportInfo : TExportInfo;
SQLServerInfo : TSQLServerInfo;
end;
library NCSQLToPDox;
{snip}
exports Perform_Export;
begin
end.
function DoExport(AExportSettings : TExportSessionSettings; AProcessMessage : TProcessMessage) : boolean;
The DLL can be called from both a command line application as well as a standard delphi windows application. Within the DLL should LogToStdOut be TRUE I have a WriteLn() call to write out logging messages. However as soon as I make the WriteLn call the DLL falls over in a heap. Similairly if LogToStdOut is FALSE and I use the supplied AProcessMessage the DLL also falls in a heap. So - How do I provide a mechanism of providing feedback to the caller of the DLL?
TIA
-- Donovan
----------------------------------------------------------------------
Donovan J. Edye [www.edye.wattle.id.au]
Namadgi Systems [www.namsys.com.au]
Voice: +61 2 6285-3460
Fax: +61 2 6285-3459
TVisualBasic = Class(None);
Heard just before the 'Big Bang': "...Uh Oh...."
----------------------------------------------------------------------
GXExplorer [http://www.gxexplorer.org] Freeware Windows Explorer
replacement. Also includes freeware delphi windows explorer components.
------------------------------------------------------------------------ Donovan
----------------------------------------------------------------------
Donovan J. Edye [www.edye.wattle.id.au]
Namadgi Systems [www.namsys.com.au]
Voice: +61 2 6285-3460
Fax: +61 2 6285-3459
TVisualBasic = Class(None);
Heard just before the 'Big Bang': "...Uh Oh...."
----------------------------------------------------------------------
GXExplorer [http://www.gxexplorer.org] Freeware Windows Explorer
replacement. Also includes freeware delphi windows explorer components.
----------------------------------------------------------------------