[ Pobierz całość w formacie PDF ]
.Wymaga u¿yciasta³ej GENERIC_WRITEParametr dwFlagsAndAttributes okreœla atrybuty i opcje tworzenia pliku.Wartoœci opisanych w tabeli 14.14 mo¿na u¿ywaæ w dowolnych kombinacjach,pamiêtaj¹c, ¿e u¿ycie którejkolwiek z nich automatycznie wy³¹cza atrybutFILE_ATTRIBUTE_NORMAL.Tabela 14.14.Atrybuty i opcje tworzenia plikuSta³aZnaczenieFILE_ATTRIBUTE_ARCHIVEUstawienie atrybutu archiwizacji pliku (atrybut ten u¿ywany jest do zaznaczaniaplików przeznaczonych do archiwizacji lub usuniêcia)FILE_ATTRIBUTE_NORMALUtworzenie pliku bez atrybutów (sta³a ta jest ignorowana w przypadku u¿yciaktórejkolwiek z pozosta³ych wartoœci)FILE_ATTRIBUTE_HIDDENUtworzenie pliku ukrytegoFILE_ATTRIBUTE_READONLYUtworzenie pliku tylko do odczytuFILE_ATTRIBUTE_SYSTEMUtworzenie pliku systemowego (pliki takie powinny byæ u¿ytkowane przez systemoperacyjny)FILE_ATTRIBUTE_TEMPORARYUtworzenie pliku tymczasowegoFILE_ATTRIBUTE_ATOMIC_WRITEZarezerwowanaFILE_ATTRIBUTE_XACTION_WRITEZarezerwowanaFILE_ATTRIBUTE_OFFLINEZaznaczenie pliku jako tymczasowo niedostêpnego (dane zosta³y fizycznieprzeniesione na inne urz¹dzenie pamiêci masowej)FILE_ATTRIBUTE_COMPRESSEDUtworzenie pliku (lub katalogu) skompresowanego.Dla pliku oznacza to w³¹czeniemechanizmu kompresji danych; dla katalogu – nakazuje domyœlne u¿ycie kompresjidla wszystkich tworzonych w jego obrêbie plikówFILE_FLAG_WRITE_THROUGHWymuszenie zapisu do pliku z pominiêciem buforów dyskowych (ang.write-through)FILE_FLAG_OVERLAPPEDOtwarcie pliku w trybie dostêpu asynchronicznego (ang.overlapped mode).Wtrybie tym wywo³ania funkcji: ReadFile(), WriteFile(), ConnectNamedPipe() iTransactNamedPipe(), z natury czasoch³onne, wykonywane s¹ asynchronicznie, tj.zwracaj¹ natychmiast do wywo³uj¹cego programu wartoœæ FALSE i ustawiaj¹ kodb³êdu ERROR_IO_PENDING.W³aœciwe zakoñczenie wykonywania operacji sygnalizowanejest aktywacj¹ okreœlonego obiektu zdarzenia.U¿ycie tej sta³ej wymuszawykonywanie zapisu i odczytu z pliku w trybie asynchronicznym, tj.z u¿yciemdodatkowej struktury typu OVERLAPPED.W takiej sytuacji po³o¿enia w plikuokreœla siê nie za pomoc¹ wskaŸnika plikowego, lecz odpowiednich pól strukturyOVERLAPPED, przekazywanej w wywo³aniach funkcji ReadFile() i WriteFile()FILE_FLAG_NO_BUFFERINGOtwarcie pliku z pominiêciem dodatkowych mechanizmów buforuj¹cychFILE_FLAG_RANDOM_ACCESSOtwarcie pliku do dostêpu swobodnegoFILE_FLAG_SEQUENTIAL_SCANOtwarcie pliku do dostêpu sekwencyjnego [? Nie oznacza to niemo¿noœci zmianypo³o¿enia wskaŸnika plikowego (tj.w dalszym ci¹gu mo¿liwy jest swobodny dostêpdo danych); atrybut ten ma charakter optymalizacyjny – przyp.t³um.]FILE_FLAG_DELETE_ON_CLOSEWymuszenie usuniêcia pliku natychmiast po zamkniêciu wszystkich jego uchwytów(nie tylko uchwytu aktualnie otwieranego)FILE_FLAG_BACKUP_SEMANTICSOtwarcie lub utworzenie pliku na potrzeby wykonania lub odtworzenia kopiizapasowejFILE_FLAG_POSIX_SEMANTICSOtwarcie pliku zgodnego z regu³ami nazewnictwa standardu POSIXW przypadku u¿ycia funkcji CreateFile() do otwarcia nazwanego potoku po stronieklienta parametr dwFlagsAndAttributes mo¿e zawieraæ równie¿ sta³e okreœlaj¹cezakres uprawnieñ serwera do wykonywania operacji w kontekœcie klienta (parametrten nosi nazwê Security Quality of Service, SQOS).U¿ycie w wywo³aniu parametruSECURITY_SQOS_PRESENT pozwala na wykorzystanie dodatkowych wartoœci, opisanychw tabeli 14.15.Tabela 14.15.Poziomy uprawnieñ serwera do wykonywania operacji w kontekœcieklientaSta³aZnaczenieSECURITY_ANONYMOUSZabrania serwerowi „wcielania siê” w klienta.SECURITY_IDENTIFICATIONUmo¿liwia serwerowi korzystanie z to¿samoœci i uprawnieñ klienta, ale zabrania„wcielania siê” w niego.SECURITY_IMPERSONATIONUmo¿liwia serwerowi „udawanie” klienta w obrêbie systemu lokalnego.SECURITY_DELEGATIONUmo¿liwia serwerowi „udawanie” klienta w systemach zdalnych.SECURITY_CONTEXT_TRACKINGWymusza dynamiczne œledzenie kontekstu bezpieczeñstwa klienta; w razie jejbraku œledzenie jest statyczne (tj.serwer uzyskuje informacjê o kontekœciebezpieczeñstwa klienta tylko jednorazowo – przyp.t³um.).SECURITY_EFFECTIVE_ONLYOgranicza dostêp serwera do kontekstu bezpieczeñstwa klienta, udostêpniaj¹ctylko elementy aktywne (domyœlnie dostêpne s¹ wszystkie elementy).Pozwala toograniczyæ zakres grup i uprawnieñ, których serwer mo¿e u¿yæ do „wcielania siê”w klienta.Parametr hTemplateFile jest uchwytem tzw.pliku szablonu (ang.template file),zawieraj¹cego informacjê o dodatkowych atrybutach tworzonego pliku.Jest onniedostêpny w systemie Windows 95 (mo¿na go u¿ywaæ tylko w Windows NT).Plikszablonu musi byæ otwarty do odczytu (z u¿yciem sta³ej GENERIC_READ).U¿ycie funkcji CreateFile() jest wzglêdnie proste, co widaæ w poni¿szymprzyk³adzie.Wywo³anie funkcji zwraca uchwyt otwartego pliku.HANDLE aFile;aFile = CreateFile("FILE.TXT", GENERIC_READ|GENERIC_WRITE, 0, NULL,OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);Plik FILE [ Pobierz caÅ‚ość w formacie PDF ]

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • luska.pev.pl
  •