Programación General => C/C++ => C++ Builder => Mensaje iniciado por: dhararon en Viernes 31 de Octubre de 2008, 17:55
Título: duda con _SECURITY_ATTRIBUTES
Publicado por: dhararon en Viernes 31 de Octubre de 2008, 17:55
Hola amigos, aqui con ustedes nuevamente, tengo un problema, quiero utilizar
CreateFiles(), pero al momento de compilar marca como que no esta especificada la struct de SECURITY_ATTRIBUTES, asi que investigue pero no se como emplear esta estructura
Código: Text
typedef struct _SECURITY_ATTRIBUTES { // sa
DWORD nLength;
LPVOID lpSecurityDescriptor;
BOOL bInheritHandle;
} SECURITY_ATTRIBUTES;
lo que yo hice fue:
Código: Text
char *seg;
bool are=true;
seg =struct {5000,NULL,are}SECURITY_ATTRIBUTES;
Pero me marca error, se que estoy mal en omo se emplea la struct, pero casi no uso ese codigo y no recuerdo como tiene que estar.
Gracias por ayudarme.
Título: Re: duda con _SECURITY_ATTRIBUTES
Publicado por: Eternal Idol en Viernes 31 de Octubre de 2008, 18:15
Lo que tenes que pasar es un LPSECURITY_ATTRIBUTES es decir un puntero a esa estructura (LP=LONG POINTER), la mayoria de las veces se pasa simplemente 0 :lol:
Sino hay dos formas de hacerlo, con una variable estatica: SECURITY_ATTRIBUTES fAttr; CreateFile(fName, fAcess, fShare, &fAttr, fCreation, fFlags, 0);
O con memoria dinamica: LPSECURITY_ATTRIBUTES fAttr = new SECURITY_ATTRIBUTES; //o malloc de sizeof(SECURITY_ATTRIBUTES) CreateFile(fName, fAccess, fShare, fAttr, fCreation, fFlags, 0); delete fAttr; //o free
Obviamente tenes que darle los valores correspondientes a los miembros de la estructura si la pasas.