AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Funktion WNetAddConnection2

Ein Thema von Mackhack · begonnen am 2. Dez 2006 · letzter Beitrag vom 8. Dez 2006
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#11

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 16:56
Nil (Delphi) NULL(c++) laut MSDN
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

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

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 18:35
Moin Mackhack,

vielleicht solltest Du Dir, beispielsweise, mal das PSDK bei MS runterladen, oder die MSDN-Library.
In der Dokumentation zu RegConnectRegistry steht dann auch, was als Rückgabewert möglich ist.

Nimm aber bloss nicht das SDK, das bei Delphi mitgeliefert wird, das ist nicht aktuell.
[EDIT]
Ich hab' jetzt mal in der D2006-Hilfe (SDK) nachgeschaut:
Es ist zwar vom Februar 2003, aber bezüglich RegConnectRegistry dürfte die Doku stimmen.
[/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
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#13

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 19:13
Zitat von Christian Seehase:
Moin Mackhack,

vielleicht solltest Du Dir, beispielsweise, mal das PSDK bei MS runterladen, oder die MSDN-Library.
In der Dokumentation zu RegConnectRegistry steht dann auch, was als Rückgabewert möglich ist.

Nimm aber bloss nicht das SDK, das bei Delphi mitgeliefert wird, das ist nicht aktuell.
[EDIT]
Ich hab' jetzt mal in der D2006-Hilfe (SDK) nachgeschaut:
Es ist zwar vom Februar 2003, aber bezüglich RegConnectRegistry dürfte die Doku stimmen.
[/EDIT]
Ich habe sowohl online als auch in der BDS2006 Hilfe nachgeschaut! Beidesmal kam raus dass wenn der \\Computername nil ist dass dann automatisch auf die lokale Registry zugegriffen wird! Daher fragte ich wie ich das auf Nil ueberpruefen kann wenn der Rueckgabewert doch ein LongInt ist in meiner Function!
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#14

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 19:32
Nil ist als Ordinaltyp in Form eines Ganzzahltyps 0! Das wurde aber zuvor schon geschrieben...
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#15

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 19:34
Hi Muetze1,

also Result einfach auf <> 0 pruefen fuer wenn es nil ist oder = 0 fuer nil *AufDerLeitungSteh*?

Sorry, ich frag nur nochmal zwecks Verstaendnis!
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#16

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 19:38
Ich habe nur darauf hingewiesen, dass NIL = 0 wäre. Ob nun Gleichheit oder nicht hängt von der Doku ab. Wenn die MSDN nun als sagt, dass ein Parameter bei bestimmten Bedingungen Nil ist, dann würdest du ja theoretisch schrieben: If var = Nil Then - da dies nun nicht geht, nehmen wir den ersten Teil und ersetzen Nil mit dem oben angegebenen Ersatzwert: If Var = 0 Then .

Wenn die Variable ungleich Nil/NULL sein sollte laut Doku, dann sollte man das entsprechend anpassen...
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#17

Re: Problem mit Funktion WNetAddConnection2

  Alt 5. Dez 2006, 20:10
Danke!
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#18

Re: Problem mit Funktion WNetAddConnection2

  Alt 7. Dez 2006, 06:31
Hi,

ich habe nochmal ne Frage hier:

mit meiner jetzigen Funktion die soweit so aussieht

Delphi-Quellcode:
function TfoMain.RegLoginAndConnectRegistry(lpMachineName: String; hKey: HKEY;
           var phkResult: HKEY; User, Password: String): LongInt;
var
  lpNetResource: TNetResource;
begin
  with lpNetResource do
  begin
    dwType := RESOURCETYPE_ANY;
    lpLocalName := nil;
    lpProvider := nil;
    lpRemoteName := PChar(lpMachineName + '\IPC$');
  end;
  Result := WNetAddConnection2(lpNetResource, PChar(Password), PChar(User), 0);
  if ( Result = NO_ERROR ) then
  begin
    Result := RegConnectRegistry(PChar(lpMachineName), hKey, phkResult);
    if ( Result = 0 ) then
    begin
      ShowMessage('Error occurred: ' + SysErrorMessage(GetLastError) +
                   #10#13#10#13 + 'Error Code: 0x' + IntToHex(GetLastError, 8));
      Exit;
    end;
  end;
end;
bekomme ich bei (eigentlich) Erfolgreichem Login- und Verbindungsversuch die letzte ShowMessage um die Ohren gehauen mit dieser Meldung

[QUOTE
---------------------------
Keysearcher
---------------------------
Error occurred: Overlapped I/O operation is in progress


Error Code: 0x000003E5
---------------------------
OK
---------------------------
[/QUOTE]

und anschliessend kommt das richtige Ergebnis. Aufgerufen wird die Function so:

  if ( RegLoginAndConnectRegistry(foNetworkConnection.RemoteComputerName, Key, UsersKey, Username, Password) <> 0 ) then Danke!

[edit=Christian Seehase]Doppelpost gelöscht. Mfg, Christian Seehase[/edit]
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

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

Re: Problem mit Funktion WNetAddConnection2

  Alt 7. Dez 2006, 15:35
Moin Mackhack,

Du hast doch die Doku zu RegConnectRegistry gelesen.
Bei erfolgreichem Aufruf gibt diese ERROR_SUCCESS zurück, warum fragst Du dort dann auf = 0 ab?
ERROR_SUCCESS hat den Wert 0.

Um einen Fehler zu ermitteln, müsstest Du also auf <> ERROR_SUCCESS bzw. <> 0 abfragen.

[EDIT]
Ausserdem ist Zeilenvorschub #13#10 und nicht #10#13
[/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
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#20

Re: Problem mit Funktion WNetAddConnection2

  Alt 7. Dez 2006, 16:09
Hallo Christian,

ich dachte ich ueberpruefe (laut Muetze1) ob das Result Nil ist:

Zitat:
Parameters

lpMachineName
[in] The name of the remote computer. The string has the following form:

\\computername

The caller must have access to the remote computer or the function fails.

If this parameter is NULL, the local computer name is used.
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 23:51 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