AGB  ·  Datenschutz  ·  Impressum  







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

array [0..0] ?

Ein Thema von nitschchedu · begonnen am 31. Aug 2007 · letzter Beitrag vom 2. Sep 2007
Antwort Antwort
Seite 2 von 3     12 3      
nitschchedu

Registriert seit: 24. Mär 2006
300 Beiträge
 
Delphi 7 Professional
 
#11

Re: array [0..0] ?

  Alt 31. Aug 2007, 16:27
Habe das jetzt so :

Delphi-Quellcode:
Netzwork := netzworklist^.Network[0];

  for i := 0 to netzworklist^.dwNumberOfItems - 1 do
  begin
     Memo1.Lines.Add(Netzwork.strProfileName);
    inc(Netzwork);
  end;
Aber das "inc(Netzwork); " sagt er geht nicht
Programmieren ..... .
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: array [0..0] ?

  Alt 31. Aug 2007, 16:31
Netzwork muss ja auch ein pointer sein:
Netzwork:^Tndu_WLAN_AVAILABLE_NETWORK; bzw. du deklarierst noch einen eigenen Typ dafür.


btw: schönes Denglish
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
jottkaerr

Registriert seit: 2. Jul 2007
Ort: Tuttlingen
81 Beiträge
 
Delphi 10.1 Berlin Professional
 
#13

Re: array [0..0] ?

  Alt 31. Aug 2007, 16:32
Dritte Möglichkeit: Du definierst weiterhin

Delphi-Quellcode:
type
  WLAN_INTERFACE_INFO_LIST = packed record
    dwNumberOfItems: DWORD;
    dwIndex: DWORD;
    WLAN_INTERFACE_INFO: array[0..0] of INTERFACE_INFO;
  end;
und schaltest beim Zugriff auf ein Element von WLAN_INTERFACE_INFO die
Bereichsüberprüfung aus

Delphi-Quellcode:
for i := 0 to InfoList.dwNumberOfItems - 1 do
begin
  {$R-}
  MachWasMit(InfoList.WLAN_INTERFACE_INFO[i]);
  {$R+}
end;
jkr
Jürgen Krämer
Sometimes I think the surest sign that intelligent life exists elsewhere
in the universe is that none of it has tried to contact us. (Calvin)
  Mit Zitat antworten Zitat
nitschchedu

Registriert seit: 24. Mär 2006
300 Beiträge
 
Delphi 7 Professional
 
#14

Re: array [0..0] ?

  Alt 31. Aug 2007, 16:40
Jo gut das geht aber was mich jetzt noch immer verärgert ist das strProfileName immer noch leer ist

Delphi-Quellcode:
Tndu_WLAN_AVAILABLE_NETWORK = record
    strProfileName: array[0..NDU_WLAN_MAX_NAME_LENGTH - 1] of wchar;
    dot11Ssid: Tndu_DOT11_SSID;
    dot11BssType: Tndu_DOT11_BSS_TYPE;
    uNumberOfBssids: ulong;
    bNetworkConnectable: Bool;
    wlanNotConnectableReason: Tndu_WLAN_REASON_CODE;
    uNumberOfPhyTypes: ulong;
    dot11PhyTypes: array[0..WLAN_MAX_PHY_TYPE_NUMBER -1] of Tndu_DOT11_PHY_TYPE;
    bMorePhyTypes: Bool;
    wlanSignalQuality: Tndu_WLAN_SIGNAL_QUALITY;
    bSecurityEnabled: Bool;
    dot11DefaultAuthAlgorithm: Tndu_DOT11_AUTH_ALGORITHM;
    dot11DefaultCipherAlgorithm: Tndu_DOT11_CIPHER_ALGORITHM;
    dwFlags: DWORD;
    dwReserved: DWORD;
  end;
Hat jemand eine Idee ?
Programmieren ..... .
  Mit Zitat antworten Zitat
Benutzerbild von Remko
Remko

Registriert seit: 10. Okt 2006
Ort: 's-Hertogenbosch, Die Niederlande
222 Beiträge
 
RAD-Studio 2010 Arc
 
#15

Re: array [0..0] ?

  Alt 31. Aug 2007, 20:32
This happens more in Win32 API, usually the array is defined like this:
Delphi-Quellcode:
const
  ANYSIZE_ARRAY = 1;
SomeArray: array [0..ANYSIZE_ARRAY - 1] of SomeType;
a small snippet from my LsaLogonUser sample (here on DP) shows how to use it:

Delphi-Quellcode:
var pGroups: PTOKEN_GROUPS;

  // The number of TOKEN_GROUPS we're going to insert
  MaxGroups := 2;

  // Reserve memory for MaxGroups numbur of PTOKEN_GROUPS
  pGroups := PTOKEN_GROUPS(GlobalAlloc(GPTR, sizeof(_SID_AND_ATTRIBUTES) * MaxGroups));
  pGroups^.GroupCount := MaxGroups;

  // Get and open Token from CurrentProcess
  if (OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY, hToken)) then
  begin

    // Get the Logon Sid and it to the LocalGroups parameter of LsaLogonUser
    // The Logon Sid has the form S-1-5-5-XXXXXXXX-YYYYYYYY
    // We need it to obtain access to the user's desktop
    GetLogonSid(hToken, pGroups^.Groups[0].Sid);
    pGroups^.Groups[0].Attributes := SE_GROUP_MANDATORY or
                                     SE_GROUP_ENABLED or
                                     SE_GROUP_ENABLED_BY_DEFAULT or
                                     SE_GROUP_LOGON_ID;
    // Cleanup
    CloseHandle(hToken);
  end;

  // Now get the Administrator's SID
  dwSizeSid := 0;
  dwSizeDomain := 0;
  bRes := LookupAccountName(nil, 'Administrator', nil, dwSizeSid, nil, dwSizeDomain, SidType);

  if (not bRes) and (GetLastError = ERROR_INSUFFICIENT_BUFFER) then
  begin
    // Reserve memory
    AdminSid := AllocMem(dwSizeSid);
    SetLength(Domain, dwSizeDomain);

    // Lookup Sid from Accountname
    // Assuming that the Admin account has not been renamed!
    bRes := LookUpAccountName(nil, 'Administrator', AdminSid, dwSizeSid, PChar(Domain), dwSizeDomain, SidType);
    if not bRes then
    begin
      // Cleanup
      FreeMem(AdminSid);
      AdminSid := nil;
    end;
  end
  else begin
    RaiseLastOSError;
  end;

    ShowMessageFmt('Administrator Sid: %s, Domain: %s', [SidToStr(AdminSid), Domain]);

  // Add the Administrator's sid to pGroups
  pGroups^.Groups[MaxGroups -1].Sid := AdminSid;
  pGroups^.Groups[MaxGroups -1].Attributes := SE_GROUP_MANDATORY or
                                              SE_GROUP_ENABLED or
                                              SE_GROUP_ENABLED_BY_DEFAULT;
Hope this helps...
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#16

Re: array [0..0] ?

  Alt 31. Aug 2007, 23:10
OFFTOPIC: Betreff Rechtschreibung


Zitat von Dezipaitor:
hi
Könntest du vielleicht deinen Text einschließlich Titel, einmal durchlesen, bevor du es absendest (mache ich auch)?
Am besten du machst 5 bis 10 Minuten etwas anders und liest den Text dann nochmal durch.
Wörter, die dir nicht vollständig bekannt sind, schlägst du am besten in einem Duden nach.
...
Dasselbe gilt natürlich auch für deutsche Wörter. ....
Deshalb mein Tipp: Schau die Wörter nach, die dir verdächtig vorkommen. Kauf dir dazu ein Duden, dadurch lernst du auch
schnelles Nachschlagen, was z.b. in der Schule oder Studium nur Vorteile hat, da es dort oftmals digitale Information nicht gibt
(z.b. Skripte). Dann schreib dir das Wort auf Karteikarten. Schau dir die Karten öfters mal an und versuche Sätze daraus zu formen -
mit diesem Wort. Besonders in einer Fremdsprache verinnerlicht man so Wörter und kann sie auch sehr gut anwenden. Nur die Übung macht den
Meister.

Ich schreibe das nicht nur dir, sondern auch allen anderen, die Probleme mit der Sprache haben. Lernt die Sprache! Sie ist der einzige
Weg sich verständlich zu machen! Durch schlechten Stil, schlechte Wortwahl und falsche Schreibweise verdirbt man des Lesers Lust am Lesen.
Und das will man ganz sicher nicht als Autor.

Bitte verstehe meine Text als Sprungbrett zur Besserung und nicht als Kritik!!! Nur durch Fehler lernt man und daher habe ich auch nichts
dagegen, wenn manchmal mehr oder weniger Fehler im Text gemacht werden. Ich mache ja selbst welche! Ein gewisses Maß bei Fehlern kann man noch tolerieren bzw. überlesen.
Jedoch wird das Lesen bei mehr und mehr Fehlern sehr anstrengend und die Chancen sinken, dass der Autor eine Antwort bekommt.

Also bitte, wer diesen Text gelesen hat, und selbst sehen kann, wie gut oder schlecht er schreibt, der möge bitte meinen Text beherzigen.
Davon haben alle nur Vorteile.
Quelle: http://www.delphipraxis.net/internal...=770142#770142
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
nitschchedu

Registriert seit: 24. Mär 2006
300 Beiträge
 
Delphi 7 Professional
 
#17

Re: array [0..0] ?

  Alt 1. Sep 2007, 10:05
.. , die dir verdächtig vorkommen. .. Das ist zwar nett gemeint, aber das Problem bei mir ist das ich Wörter die verdächtig sind nicht erkenne (LRS)
Aber ich werde mir mal mühe geben (versuchen).

zurück zum Thema:

pGroups := PTOKEN_GROUPS(GlobalAlloc(GPTR, sizeof(_SID_AND_ATTRIBUTES) * MaxGroups)); an der Stelle sagst du ja schon wie groß der Speicher ist ..

netzworklist := WlanAllocateMemory(SizeOf(Tndu_WLAN_AVAILABLE_NETWORK_LIST)); das geht bei mir nicht da ich erst nach dem Funtkions aufruf die größe im "netzworklist" mitgeteilt bekomme .
Programmieren ..... .
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#18

Re: array [0..0] ?

  Alt 2. Sep 2007, 02:07
Zitat von nitschchedu:
.. , die dir verdächtig vorkommen. .. Das ist zwar nett gemeint, aber das Problem bei mir ist das ich Wörter die verdächtig sind nicht erkenne (LRS)
Ist doch kein Beinbruch. Allerdings könnte das eben auch ein Grund dafür sein, daß du das in deiner Signatur beschriebene Problem hast. Geh offener mit deiner LRS um, und ich vermute man wird dir die Fehler verzeihen und ggf. eher nochmal nachfragen statt sich über die Rechtschreibung zu beschweren. Leider gibt es nämlich nicht nur jene, die eine LRS haben, sondern auch solche die keine haben, sich aber teils schlimmer als Leute mit LRS geben.

Zitat von nitschchedu:
das geht bei mir nicht da ich erst nach dem Funtkions aufruf die größe im "netzworklist" mitgeteilt bekomme .
Und ein zweiter Aufruf ist verboten? Alternativ könntest du doch auch mehr Speicher (als sizeof(...)) anfordern und bekommst dann eben nur eine bestimmte Anzahl von Ergebnissen zurück. Ich scheine da aber was zu übersehen.
  Mit Zitat antworten Zitat
nitschchedu

Registriert seit: 24. Mär 2006
300 Beiträge
 
Delphi 7 Professional
 
#19

Re: array [0..0] ?

  Alt 2. Sep 2007, 18:28
Soll ich mal das Test Projekt Posten, vieleicht sieht man da ehr das Problem ?
Programmieren ..... .
  Mit Zitat antworten Zitat
Olli
(Gast)

n/a Beiträge
 
#20

Re: array [0..0] ?

  Alt 2. Sep 2007, 18:42
Wäre sicher keine schlechte Idee

Allerdings habe ich bis mindestens Ende Oktober kein Delphi zur Verfügung.
  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 15:32 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