AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Domain Name auslesen

Ein Thema von xbu58 · begonnen am 10. Dez 2002 · letzter Beitrag vom 29. Sep 2003
Antwort Antwort
Seite 2 von 2     12   
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#11

Re: Domain Name auslesen

  Alt 10. Sep 2003, 13:49
Warum funktioniert der Code nicht?Ist doch genua das aus eurem Beispiel oben?
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, NetApi32;

type

  PWKSTA_USER_INFO_1 = ^WKSTA_USER_INFO_1;
  WKSTA_USER_INFO_1 = packed record
    wkui1_username : PWChar;
    wkui1_logon_domain : PWChar;
    wkui1_oth_domains : PWChar;
    wkui1_logon_server : PWChar;
  end;

  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var pwuiWork : PWKSTA_USER_INFO_1;
begin
  if NetWkstaUserGetInfo(nil,1,@pwuiWork) = NErr_Success then begin //<- hier kommt der Fehler: Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen
    try
      ShowMessage(
        WideCharToString(pwuiWork.wkui1_logon_domain)+'\'+
        WideCharToString(pwuiWork.wkui1_username)
        );
    finally
      NetApiBufferFree(pwuiWork);
    end;
  end;
end;
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#12

Re: Domain Name auslesen

  Alt 10. Sep 2003, 14:17
Moin Tpercon,

das wird vermutlich daran liegen, dass die Übersetzung der Funktion die Du verwendest borlandtypisch deklariert wurde (mit var Parametern an der Stelle, wo die Funktion etwas zurückliefern soll/kann).
Meine Deklaration, c-typisch (mit Angabe der Adresse an der Stelle wo die Funktion etwas zurückliefern soll/kann), sieht so aus:


Delphi-Quellcode:
  
// für dynamischen Import
TcsNetWkstaUserGetInfo = function(
    const reserved : PWChar;
    const level : DWord;
    const bufptr : Pointer
    ) : NET_API_STATUS; stdcall;

// für statischen Import
  function NetWkstaUserGetInfo(
    const reserved : PWChar;
    const level : DWord;
    const bufptr : Pointer
    ) : NET_API_STATUS; stdcall; external 'netapi32.dll';
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#13

Re: Domain Name auslesen

  Alt 10. Sep 2003, 14:27
Jetzt geht das schonmal! Danke dir.
  Mit Zitat antworten Zitat
master of lan

Registriert seit: 22. Sep 2003
2 Beiträge
 
Delphi 5 Enterprise
 
#14

Re: Domain Name auslesen

  Alt 29. Sep 2003, 10:52
Hallo zusammen!

Habe das auch mal probiert, aber bei mir haperts bereits an der netapi32-uses klausel: "File not Found netapi32.dcu".
Woher bekomme ich die netapi32.dcu??
Hab im Inet mal danach gesucht, scheint aber nur ne .dll zu geben..


mfg
Benni aka MASTER of LAN
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#15

Re: Domain Name auslesen

  Alt 29. Sep 2003, 13:27
Moin Benni,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Was die NETAPI32.DCU angeht kann ich jetzt nur mal eine Vermutung anstellen.
Die die Tpercon mit eingebunden hatte stammt vermutlich von den JEDIs.
Für mein Beispiel hatte ich mir allerdings die ganzen Deklarationen selber aus dem Microsoft Headern übersetzt (für NetWkstaUserGetInfo und die Strukturen weiter oben im Thread zu finden).
Wenn Du die Unit aus der uses Eintragung rausnimmst, und dafür anderen Übersetzungen nimmst sollte es gehen.

[EDIT]
Was ich noch vergessen hatte:
Die hier beschriebenen Deklarationen funktionieren nicht unter 9x/ME.
[/EDIT]
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz