Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Übersetzung eines VB-Codes nach Delphi - RasApi32.dll (https://www.delphipraxis.net/19169-uebersetzung-eines-vbulletin-codes-nach-delphi-rasapi32-dll.html)

Generalissimo 30. Mär 2004 13:32


Übersetzung eines VB-Codes nach Delphi - RasApi32.dll
 
Hallo,

ich bräuchte mal Hilfe bei einer Übersetzung. Ich habe diesen Quellcode von www.activevb.de und würde gern
ihn in Delphi nutzen. Ich hab aber keinerlei Ahnung bei der Übersetzung.

Quelltext:

Code:
Option Explicit

Private Declare Function RasEnumEntries Lib "RasApi32.DLL" _
        Alias "RasEnumEntriesA" (ByVal reserved As String, ByVal _
        lpszPhonebook As String, lprasentryname As Long, lpcb As Long, _
        lpcEntries As Long) As Long
       
Const RAS95_MaxEntryName = 256

Private Type RASENTRYNAME95
  dwSize As Long
  szEntryName(RAS95_MaxEntryName) As Byte
End Type


Private Sub Form_Load()
    Dim S As Long, LN As Long
    Dim X As Integer
    Dim ConName As String
    Dim R(255) As RASENTRYNAME95
   
    R(0).dwSize = 264
    S = 256 * R(0).dwSize
    Call RasEnumEntries(vbNullString, vbNullString, VarPtr(R(0)), S, LN)
       
    For X = 0 To LN - 1
        ConName = StrConv(R(X).szEntryName(), vbUnicode)
        List1.AddItem Left$(ConName, InStr(ConName, vbNullChar) - 1)
    Next X
etwas hab ich schon:

Delphi-Quellcode:
type
  TRasEnumEntries = function( reserved:String;_lpszPhonebook:String; lprasentryname:LongWord; lpcb:LongWord;
                              _lpcEntries:LongWord):LongWord;

procedure TForm1.Button1Click(Sender: TObject);
var hDll:THandle;
     dwError:DWord;
begin
  result:=False;
  hDLL:=LoadLibrary(PCHar('RasApi32.DLL'));
  If hDLL<>0 then
  begin
   RasEnumEntries:= GetProcAddress(hDLL, 'RasEnumEntriesA');
   If Assigned(RasEnumEntries)
   then
     RasEnumEntries()
   else
    ShowMessage('DLL-Funktion nicht gefunden');
   FreeLibrary(hDLL);
  end
  Else
   begin
     dwError:=GetLastError;
     ShowMessage('Fehler: '+IntToStr(dwError));
   end;
end;
nur bei dem Typ RASENTRYNAME95 ist bei der 2. Zeile Schluss.
Vielleicht gibt es ja hier Spezialisten dafür.

neolithos 30. Mär 2004 14:35

Re: Übersetzung eines VB-Codes nach Delphi - RasApi32.dll
 
Delphi-Quellcode:
Const
  RAS95_MaxEntryName = 256 

type
  TRasenTryName95 = packed record
    dwSize : Cardinal;
    szEntryName : array [0..RAS95_MaxEntryName-1] : char;
  end;

function RasEnumEntriesA (dwReserved : Cardinal; lpszPhonebook : PChar; lprasentryname : Integer; lpcb : Integer; lpcEntries : Integer) : Integer;
        external 'RasApi32.DLL';
Ohne gewähr! :mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz