AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Vista setzt als Datei-Attribut ein Bit13 ???
Thema durchsuchen
Ansicht
Themen-Optionen

Vista setzt als Datei-Attribut ein Bit13 ???

Ein Thema von r29d43 · begonnen am 2. Jul 2008 · letzter Beitrag vom 2. Jul 2008
Antwort Antwort
Seite 1 von 2  1 2      
r29d43

Registriert seit: 18. Jan 2007
287 Beiträge
 
Delphi 10.4 Sydney
 
#1

Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 09:01
Hi,

eines meiner WinXP-Programme sucht mittels der FindFirst/FindNext-Funktionen Dateien, welche im SearchRecord-Attribut nur die Bits für faReadOnly und faArchive gesetzt haben dürfen. Bei einem Programm-Transfer auf Vista klappte das Prog jetzt allerdings nicht mehr. Auf der Suche nach der Ursache entdeckte ich dann bei allen Dateien dieses betroffenen Ordners (C:\ProgramData\XY) dieses ominöse Bit13 im SearchRecord-Attribut, ...welches man übrigens auch häufig sonstnoch überall in C:\ProgramData\... antreffen kann.


Kennt das event. jemand? Was für eine Information beinhaltet es?


Thx im Voraus

MfG,
...


PS. Ein Bit7 als Datei-Attribut (?) ist mir da übrigens eben auch gerade noch begegnet (in C:\Programme\Canon\...).
...und eben auch noch ein Bit10 in (nur) C:

Scheint so, dass diese höheren Bits in Vista insgesamt irgendwie genutzt werden?
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 09:03
Ich kenne die zwar nicht, aber kannst du nicht einfach sämtliche bekannten Bits ausmaskieren und dann erst deinen Vergleich durchführen? Dann bist du auch für die Zukunft gewappnet, egal welche Bedeutung dann weitere Bits bekommen.
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 09:06
Zeig mal deine Funktion.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
r29d43

Registriert seit: 18. Jan 2007
287 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 09:12
@OregonGhost, ja, wie ich das Phänomen in den Griff kriege, ist aber nicht das eigentliche Problem. Ich wunderte mich nur, dass diese Bits dort überhaupt existieren und frage mich natürlich jetzt, was sie wohl bedeuten...


@Luckie

so gings nicht:

Delphi-Quellcode:
procedure loadADir(ADirAndMask : String);
var
  sr: TSearchRec;
begin
  if FindFirst(ADirAndMask, faAnyFile, sr) = 0 then
    repeat
      if (sr.Attr and (faReadOnly or faArchive)) = sr.Attr then AStrList.Add(sr.Name);
    until FindNext(sr) <> 0;
  FindClose(sr);
end;

so gings dann:

Delphi-Quellcode:
...
if FindFirst(ADirAndMask, faAnyFile, sr) = 0 then
  repeat
    if (sr.Attr and (faReadOnly or faArchive or (1 shl 13))) = sr.Attr then AStrList.Add(sr.Name);
  until FindNext(sr) <> 0;
...
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#5

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 09:31
Moin, Moin,

du verwendest..if (sr.Attr and (faReadOnly or faArchive)) = sr.Attr then ... muss der Vergleich nicht mit if (sr.Attr and (faReadOnly or faArchive)) = (faReadOnly or faArchive) then ... durchgeführt werden?!
Ralph
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#6

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 10:16
Zitat von taaktaak:
Moin, Moin,

du verwendest..if (sr.Attr and (faReadOnly or faArchive)) = sr.Attr then ... muss der Vergleich nicht mit if (sr.Attr and (faReadOnly or faArchive)) = (faReadOnly or faArchive) then ... durchgeführt werden?!
Bin das ganze mal kurz im Kopf durchgegangen, scheint beides zu funktionieren. (und gleich kommt einer und beweist mir, dass es nicht so ist, ich weiß es )
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#7

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 10:23
Ähh, was ist jetzt deine Botschaft? Scheinbar oder anscheinend
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 10:26
Nee, das stimmt schon so, es wird ja auf Gleichheit abgefragt.
Delphi-Quellcode:
if (Wert1 and Wert2) = Wert1... //trifft nur zu, wenn beide gleich
if (Wert1 and Wert2) = Wert2... //trifft auch nur zu, wenn beide gleich
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#9

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 10:27
Botschaft ist, dass es anscheinend nicht mit
if (sr.Attr and (faReadOnly or faArchive)) = (faReadOnly or faArchive) durchgeführt werden muss, enthält aber gleichzeitig nen Disclaimer, weil ich diese Nacht nicht geschalfen hab
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#10

Re: Vista setzt als Datei-Attribut ein Bit13 ???

  Alt 2. Jul 2008, 10:32
jooo, überzeugt
Ralph
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 02:54 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