On Feb 14, 3:54 pm, Jamie
Post by JamiePost by r***@talktalk.netI have just tried to compile my first dll prog in Delphi 5 and have
received the following error message :-
Required package 'Teeworld95' not found.
I've never heard of Teeworld before but googling it produced a gaming
site. I've emailed them to see if they can shed any light on this
but I wonder if anyone else has encountered either this message or
something of the same nature indicating some sort of interference in
the dll compiler routines.
You obviously have something in the USES list that requires this
package. A package that is version specific to your compiler for this
product 'Teeworld95'
I assume you're just trying to get existing code you found somewhere
to work?
I didn't find anything as you stated except for 'Teeworld" which is a
worms game or something ? Is this what you're really trying to do ?
Thanks for the reply Jamie.
The dll is a few lines to receive some data from a stockmarket feed
application and as a first attempt to write a dll - gaming is not
involved at all.
The first thing I looked at was the uses list - that is just the 2
items that the compiler installs, namely SysUtils and Classes. Here
is the code:-
library ForexCurrUpd;
{ Important note about DLL memory management: ShareMem must be the
first unit in your library's USES clause AND your project's (select
Project-View Source) USES clause if your DLL exports any procedures
or
functions that pass strings as parameters or function results. This
applies to all strings passed to and from your DLL--even those that
are nested in records and classes. ShareMem is the interface unit to
the BORLNDMM.DLL shared memory manager, which must be deployed along
with your DLL. To avoid using BORLNDMM.DLL, pass string information
using PChar or ShortString parameters. }
uses
SysUtils,
Classes;
{$R *.RES}
var
ForexCurrUpdateStr: pchar;
procedure PassOnCSVString(CurrUpdate:pchar): export;
begin
SetString(ForexCurrUpdateStr,CurrUpdate,length(CurrUpdate));
end;
function RecoverCSVString: pchar;
begin
SetString(result,ForexCurrUpdateStr,length(ForexCurrUpdateStr));
end;
exports PassOnCVString, RecoverCSVString;
begin
end.
I did a full search of my hard disk for the string 'Teeworld95' using
Agent Ransack which has a text search facility in the hope that there
might be some chain of dependencies that had it in but nothing was
found.
I'm waiting now for a response from the Teeworld people - perhaps they
issue a package to game developers and in some (perhaps sinister ) way
it has got into my system. Very baffling and preventing me from
getting any further in seeing whether I am understanding dll writing
correctly.
Ron