Most problems are solved now, just an issue with the filename.
Procedure Convert(Dir: Integer; Lat, Long: Double) ;
var
NewLat, NewLong, LatAcc, LongAcc: PDouble ;
Err: Integer ;
Filename: LPSTR ;
begin
GetMem(NewLat, SizeOf(Double)) ;
GetMem(NewLong, SizeOf(Double)) ;
GetMem(LatAcc, SizeOf(Double)) ;
GetMem(LongAcc, SizeOf(Double)) ;
Filename := 'c:\grid\nzgd2kgrid0005.gsb' ;
Err := TransGeogPt(Filename, Dir, Lat, Long, NewLat, NewLong, LatAcc,
LongAcc) ;
if Err <> 1 then
ShowMessage('Error ('+InttoStr(Err)+')') ;
...
This returns error 44 which is described as "Invalid file extension on
Grid Shift File (must be either .asc or .gsb)."
The same error is returned if the file is valid or not, so I assume the
filename I am passing is not being sent properly.
Dave.
-----Original Message-----
From: Phil Middlemiss [mailto:[EMAIL PROTECTED]
Sent: Monday, 5 April 2004 9:32 a.m.
To: NZ Borland Developers Group - Delphi List
Subject: Re: [DUG] Problem using a dll.
The pdLatNew etc can simply be desribed as Doubles but with the var
qualifier - although I don't think that necessarily is the issue. I
suspect the problem lies in how you are preparing the various variables
and values when you call the routine. Can you provide some code that
shows how you are calling it?
Phil.
----- Original Message -----
From: "David O'Brien" <[EMAIL PROTECTED]>
To: "NZ Borland Developers Group - Delphi List" <[EMAIL PROTECTED]>
Sent: Monday, April 05, 2004 8:41 AM
Subject: [DUG] Problem using a dll.
> Haven't done much of this before. I am trying to use a dll with a
> function definition of:
>
> Long _stdcall TransGeogPt(LPSTR psGridFile, long lDirection, double
> dLatitude, double dLongitude, double* pdLatNew, double* pdLongNew,
> double* pdLatAcc, double* pdLongAcc)
>
> I have translated this as:
>
> function(psGridFile: PChar; lDirection: Integer; dLatitude,
> dLongitude: Double; pdLatNew, pdLongNew, pdLatAcc, pdLongAcc:
> PDouble): Integer;
>
> However trying to use this function I get:
>
> Access violation at address 77C43B4C in module 'MSVCRT.DLL'. Read of
> address 00000000'.
>
> Any ideas? Have I translated wrong?
>
> Cheers,
> Dave.
>
> _______________________________________________
> Delphi mailing list
> [EMAIL PROTECTED] http://ns3.123.co.nz/mailman/listinfo/delphi
>
_______________________________________________
Delphi mailing list
[EMAIL PROTECTED] http://ns3.123.co.nz/mailman/listinfo/delphi
_______________________________________________
Delphi mailing list
[EMAIL PROTECTED]
http://ns3.123.co.nz/mailman/listinfo/delphi