Moin moin.
Nach Jahren mal wieder ein Posting.
Wir sitzen gerade an einem tollen Problem: Zugriff auf SAP über die librfc32.dll (neueste Version aus dem Marketplace).
Unser
Handle ist immer 0, Fehlermeldung gibt es auch nicht. Wir sind mit dem Latein am Ende oder einfach nur blind
Gibt es bei der Deklaration einen Fehler?
Delphi-Quellcode:
unit main;
interface
uses
Winapi.Windows,
Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
Vcl.Graphics,
Vcl.Controls,
Vcl.Forms,
Vcl.Dialogs,
Vcl.StdCtrls;
type
Tfrm_main =
class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
myConStr: PCHAR;
public
{ Public-Deklarationen }
end;
type
PRfcErrorInfoEx = ^TRfcErrorInfoEx;
TRfcErrorInfoEx =
record
group : integer;
key :
array[0..32]
of char;
amessage :
array[0..512]
of char;
end;
function RfcOpenEx(ConString: PCHAR; RFC_ERROR: PRfcErrorInfoEx): THandle;
stdcall;
external '
D:\_Entwicklung\SAPmitLIBRFC32_App\Win32\Debug\librfc32.dll';
var
frm_main: Tfrm_main;
implementation
{$R *.dfm}
procedure Tfrm_main.Button1Click(Sender: TObject);
var myHandle: Long;
data: PRfcErrorInfoEx;
myError: TRfcErrorInfoEx;
blubb: integer;
begin
myConStr:= '
ASHOST=1xxx SYSNR=0 CLIENT=xxx USER=xxx PASSWD=sxxx LANG=DE';
myHandle:= rfcOpenEx(pchar(myConStr), @myError);
blubb:= myError.group;
end;
end.
Über Hilfe wären wir sehr froh,
Die zwei Verzweifelten.
Crossposting:
http://www.delphi-forum.de/viewtopic...=654774#654774
Entwicklungssystem:
Windows 7 Ultimate x64, neuester Stand
Delphi XE2 Professional, neuester Stand