Hallo,
ich möchte eine "einfache" erweiterte gespeicherte Prozedur erstellen.
In der Hilfe habe ich gefunden das man Funktionen aus der
DLL "Opends60.DLL" benötigt.
Als Übersetzung der c-headder ("SRV.H") habe ich die von:
Delphi-Quellcode:
Unit MsOdsApi;
{
- Master Cluster's Library -
Copyright © 1996-2004 Leonid Belousov (aka Master Cluster)
mailto: [email]mc@bramc.ru[/email]
[url]www.MasterCluster.com[/url]
- Description: translation of C-headers of Microsoft Open Data Services API
}
[...]
genommen.
mein Quellcode sieht z.Z. so aus
Delphi-Quellcode:
library MeldeAenderung;
uses
Windows,
MsOdsApi in 'MsOdsApi.pas';
{$R *.res}
function __GetXpVersion: ULONG; cdecl;
begin
result := ODS_VERSION;
end;
function xp_MeldeAenderung(pSrvProc: SRV_PROC): Integer; cdecl;
begin
Windows.Beep(200,200);
result := 1;
end;
exports
__GetXpVersion, xp_MeldeAenderung;
begin
Windows.Beep(400,200);
end.
Die
Dll wird auch brav erstellt *freu schon*
Die
Dll in das Verzeichnis: "Microsoft
SQL Server\80\Tools\Binn" kopiert, und im "
SQL Query Analyzer"
Zitat:
use master
go
sp_addextendedproc 'xp_MeldeAenderung', 'MeldeAenderung.dll'
go
sp_helpextendedproc 'xp_MeldeAenderung'
go
exec xp_MeldeAenderung -- Hier krachts
go
sp_dropextendedproc 'xp_MeldeAenderung'
go
ausgeführt:
Zitat:
name
dll
---------------------- -----------------------
xp_MeldeAenderung MeldeAenderung.dll
ODBC: Nachr.-Nr. 0, Schweregrad 16, Status 1
Die
DLL MeldeAenderung.dll oder eine
DLL, auf die sie verweist, kann nicht geladen werden. Ursache: 126(Das angegebene Modul wurde nicht gefunden.).
Auch wenn ich nur
Delphi-Quellcode:
type
SRV_SERVER = Pointer;
SRV_CONFIG = Pointer;
SRV_PROC = Pointer;
const
SS_MAJOR_VERSION = 7;
SS_MINOR_VERSION = 00;
SS_LEVEL_VERSION = 0000;
SS_MINIMUM_VERSION = '7.00.00.0000';
ODS_VERSION = ((SS_MAJOR_VERSION shl 24) or (SS_MINOR_VERSION shl 16));
verwende (aus "srv.h" "übersetzt") und alle verweise auf die "Opends60" entferne bekomme ich die gleiche Meldung
Hat da einer einen Tipp für mich, was da schief läuft?
grübelnd
T. Meuser