Witam,
Jak w C++ stworzyć niewidoczny dla użytkownika plik tekstowy?
Pozdrawiam.
Witam,
Jak w C++ stworzyć niewidoczny dla użytkownika plik tekstowy?
Pozdrawiam.
Pod Windowsem - funkcja CreateFile
(http://msdn.microsoft.com/en-us/library/windows/desktop/aa363858%28v=vs.85%29.aspx) z flagą FILE_ATTRIBUTE_HIDDEN
.
Pod Linuxem - tak jak każdy plik, tylko dodajesz kropkę do początku nazwy pliku.
Pod Windowsem - mogę prosić jakiś przykład? :)
Pod Linuksem - dzięki! :)
CreateFile("zuo.txt", GENERIC_WRITE, 0, NULL, CREATE_NEW, FILE_ATTRIBUTE_HIDDEN, NULL) ;
Dzięki, tylko takie pytanie ostatnie: Jak zrobić żeby ten plik znów był widoczny? :D
Pod Windowsem:
int x = GetFileAttributes("zuo.txt") ;
SetFileAttributes("zuo.txt", x & ~FILE_ATTRIBUTE_HIDDEN) ;
Pod Linuxem wywalasz po prostu tę kropkę z nazwy.
Dziękuję bardzo za pomoc! :)
A i jeszcze! Jak w tym pliku coś napisać? Taki kod nie działa :/
#include <fstream>
#include <windows.h>
#include <iostream>
using namespace std;
int main()
{
CreateFile("zuo.txt", GENERIC_WRITE, 0, NULL, CREATE_NEW, FILE_ATTRIBUTE_HIDDEN, NULL) ;
std::fstream plik;
plik.open( "zuo.txt", std::ios::in | std::ios::out );
plik<<"zuo w pliku zuo"<<endl;
plik.close();
int x = GetFileAttributes("zuo.txt") ;
SetFileAttributes("zuo.txt", x & ~FILE_ATTRIBUTE_HIDDEN) ;
}
#include <fstream>
#include <windows.h>
#include <iostream>
int main()
{
HANDLE h = CreateFile("zuo.txt", GENERIC_WRITE, 0, NULL, CREATE_NEW, FILE_ATTRIBUTE_HIDDEN, NULL) ;
CloseHandle(h) ;
std::fstream plik;
plik.open( "zuo.txt", std::ios::in | std::ios::out );
plik<<"zuo w pliku zuo"<<std::endl;
plik.close();
int x = GetFileAttributes("zuo.txt") ;
SetFileAttributes("zuo.txt", x & ~FILE_ATTRIBUTE_HIDDEN) ;
}
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.