Atrybuty folderów

dział ogólny

Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 18:04

Nie wiem czemu ale mój program jak tworzy katalog (CreateDir()) to raz jest to "Read only" a czasem nie.

Tak czy siak nie może być Read only bo potem nie mogę zapisywać do tego folderu.

Jest w serwisie pokazane jak zmieniać atrybuty plików, a jak wyczyścić atrybuty folderów??
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 18:41

albo może wie ktoś jak tworzyć foldery z poziomu pliku BAT?
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez wargo » Å›roda, 25 lutego 2009, 19:41

Kod: Zaznacz cały
mkdir c:\nowyfoldernazwa
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 20:04

nie wiem czemu ale jak tworze nowy folder batem albo za pomocÄ… CreateDir() w moim programie to foldery sÄ… tylko do odczytu...

Tzn. nie mogę z poziomu mojego programu tworzyć w tych folderach plików. A jak wejdzie się we właściwości takiego folderu to pole Tylko do odczytu wypełnione jest zielonym kwadratem.

O co chodzi? I jak stworzyć folder tak żeby móc w nim tworzyć pliki?
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez wargo » Å›roda, 25 lutego 2009, 20:12

Po stworzeniu katalogu batem skorzystaj z komendy zmiany atrybutu.

Ale sprawdzałem ten bat i stworzyłem katalog i działa dobrze.
Jeszcze możesz wywołać to polecenie poprzez funkcję system("Komenda systemowa") wywołującą komendy tak jak w konsoli.
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Cyfrowy Baron » Å›roda, 25 lutego 2009, 20:25

To trochę dziwne, że tworzy Tobie katalogi wg. własnego widzimisię, to jest niemożliwe. Musisz sprawdzić dlaczego tak się dzieje, dokładnie przyglądają się własnemu kodowi i tworzonym katalogom

Atrybuty katalogu lub pliku usuwa się przekazując funkcji FileSetAttr wartość NULL:

Kod: Zaznacz cały
FileSetAttr("c:\\temp", NULL);   
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 20:34

znalazłem na stronie microsoftu - to jest jakiś błąd systemu, ale podane przez nich rozwiązanie nie działa:
http://support.microsoft.com/default.as ... l%3B326549

zaraz sprawdze wasze
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Cyfrowy Baron » Å›roda, 25 lutego 2009, 20:51

Kolorowy kwadracik przy opcji Tylko do odczytu - nie oznacza, że katalog ma takie atrybuty, u mnie niemal wszystkie maja ten kwadracik. Dopiero "ptaszek" przy atrybucie oznacza, że plik jest tylko do odczytu.

Możliwe, że masz uszkodzoną tablicę alokacji plików. Możesz to naprawić za pomocą konsoli odzyskiwania poprzez uruchomienie programu CHDSK z parametrem /r lub lepiej ale dłużej /r: CHKDSK /r
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Cyfrowy Baron » Å›roda, 25 lutego 2009, 20:58

Na wypadek gdybyś nie wiedział jak użyć CHKDSK, to tutaj już to opisałem: viewtopic.php?f=8&t=11&p=58&hilit=CHKDSK#p58
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 21:14

okazało się że problem jest jeszcze bardziej dziwaczniejszy...

opiszę to wszystko dokładniej:

mam na formularzu IdFTP i Button po którego wcisnieciu tworzony jest katalog temp (w folderze gdzie znajuduje się program) i do tego katalogu temp pobierany jest plik login.txt.

i teraz to co mnie dziwi:
moj program instaluje sie instalatorem (jakims tam - darmowy z neta) i ten instalator tworzy skroty na pulpit.
jak włącze program bezpośrednio z c:/program files/voice messenger/voice messenger.exe i wcisne Button to mi się login.txt bez problemu pobiera.
ale jak zrobie to samo tylko program uruchomie ze skrotu na pulpicie to podczas pobierania pliku login.txt wyskakuje:
Obrazek
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 21:32

tak to ewidentnie problem tego skrótu bo jak sam zrobię skrót t w programie wszystko działa ok.

tylko ciekawi mnie jak to jest możliwe... przecież skrót ma prawidłową ścieżkę... program włącza się też prawidłowo a jednak nie może otwierać folderu temp/

...chyba że program uruchomiony przez skrót myśli że jest uruchomiony na pulpicie i szuka folderu temp/ na pulpicie, a tam go przecież nie ma... ale to z kolei jest nielogiczne a w informatyce wszystko jest logiczne...
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez wargo » Å›roda, 25 lutego 2009, 22:03

Jak wyglÄ…da kod na otwieranie pliku?
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » Å›roda, 25 lutego 2009, 22:27

Kod: Zaznacz cały
void __fastcall TForm3::Button1Click(TObject *Sender)
{
String id2 = LabeledEdit1->Text;
String pass2 = LabeledEdit2->Text;
String file = "users/" + id2 + "/" + pass2 + ".txt";
IdFTP1->Get(file, "temp\\login.txt", true, false);
}
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez wargo » czwartek, 26 lutego 2009, 11:43

Może to będzie dobre:
Kod: Zaznacz cały
void __fastcall TForm3::Button1Click(TObject *Sender)
{
String id2 = LabeledEdit1->Text;
String pass2 = LabeledEdit2->Text;
String file = ExtractFilePath(Application->ExeName)+"\\users\\" + id2 + "\\" + pass2 + ".txt";
IdFTP1->Get(file, ExtractFilePath(Application->ExeName)+"\\temp\\login.txt", true, false);
}

Funkcja ExtractFilePath() zwraca ścieżkę folderu programu ze ścieżki pliku programu w Application->ExeName.
Avatar użytkownika
wargo
Mądrosław
Mądrosław
 
Posty: 389
Dołączył(a): niedziela, 13 lipca 2008, 16:44
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 3
System operacyjny: Windows 7
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 6259515
    NieznanyNieznana

Re: Atrybuty folderów

Nowy postprzez Krzysiu555 » czwartek, 26 lutego 2009, 21:23

zrobiłem tak:
Kod: Zaznacz cały
void __fastcall TForm3::Button1Click(TObject *Sender)
{
String id2 = LabeledEdit1->Text;
String pass2 = LabeledEdit2->Text;
String file = "\\users\\" + id2 + "\\" + pass2 + ".txt";
IdFTP1->Get(file, ExtractFilePath(Application->ExeName)+"\\temp\\login.txt", true, false);
}

bo przecież file jest na serwerze a na dysku dopiero ma byc.

i to rozwiązało mój problem=]
dziękuję :)
Avatar użytkownika
Krzysiu555
Intelektryk
Intelektryk
 
Posty: 161
Dołączył(a): sobota, 23 sierpnia 2008, 16:55
PodziÄ™kowaÅ‚ : 2
OtrzymaÅ‚ podziÄ™kowaÅ„: 1
System operacyjny: Windows 7 Professional 64
Kompilator: C++ Builder 6 Personal
Gadu Gadu: 0
    NieznanyNieznana

Następna strona

  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Ogólne problemy z programowaniem

Kto przeglÄ…da forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 11 gości