Difference between revisions of "Truxton child file set attributes"

From truxwiki.com
Jump to navigation Jump to search
Line 1: Line 1:
 
Sets the attributes of the file.
 
Sets the attributes of the file.
 +
This corresponds to the <code>Attributes</code> column of the <code>[[File Table | File]]</code> table.
  
 
=Syntax=
 
=Syntax=

Revision as of 06:25, 10 June 2020

Sets the attributes of the file. This corresponds to the Attributes column of the File table.

Syntax

void truxton_child_file_set_attributes( uint64_t child_handle, uint64_t attributes );

Parameters

child_handle

The handle created by the truxton_child_file_create or truxton_file_create_child call.

attributes

An integer value representing the attributes of the file. For a Microsoft filesystem, it can be a combination of the file attribute flags.

Sample

void add_folder(uint64_t truxton, uint64_t parent_file)
{
   truxton_start_adding_files(truxton);

   uint64_t child = truxton_child_file_create(truxton);

   char id[40];

   truxton_file_get_id(parent_file, id, sizeof(id));
   truxton_child_file_set_parent_id(child, id);
   truxton_child_file_set_type(child, Type_Directory);
   truxton_child_file_set_name(child, "Custom Exploits Folder");

   FILETIME now;

   GetSystemTimeAsFileTime(&now);

   ULARGE_INTEGER ticks;

   ticks.LowPart = now.dwLowDateTime;
   ticks.HighPart = now.dwHighDateTime;

   truxton_child_file_set_created(child, ticks.QuadPart);
   truxton_child_file_set_accessed(child, ticks.QuadPart);
   truxton_child_file_set_modified(child, ticks.QuadPart);

   truxton_child_file_set_attributes(child, FILE_ATTRIBUTE_DIRECTORY | FILE_ATTRIBUTE_READONLY);
   truxton_child_file_set_path(child, "Files/This File" );

   if ( truxton_child_file_save(child) == 0 )
   {
      printf( "Failed to add child to Truxton\n" );
   }

   truxton_child_file_destroy(child);
}