Difference between revisions of "Truxton child file create child"

From truxwiki.com
Jump to navigation Jump to search
(Created page with "This creates another child file object with this object as its parent. =Syntax= <source lang="C"> uint64_t truxton_child_file_create_child( uint64_t child_handle ); </source>...")
 
 
Line 14: Line 14:
  
 
=Sample=
 
=Sample=
<source lang="C" highlight="34">
+
<source lang="C" highlight="27">
 
void add_folder( uint64_t truxton, uint64_t parent_file )
 
void add_folder( uint64_t truxton, uint64_t parent_file )
 
{
 
{
Line 28: Line 28:
 
   truxton_child_file_set_name( child, "Custom Exploits Folder" );
 
   truxton_child_file_set_name( child, "Custom Exploits Folder" );
  
   FILETIME now;
+
   uint64_t now = truxton_time_now();
  
  GetSystemTimePreciseAsFileTime( &now );
+
   truxton_child_file_set_created( child, now );
 
+
   truxton_child_file_set_accessed( child, now );
  ULARGE_INTEGER ticks;
+
   truxton_child_file_set_modified( child, now );
 
 
  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_origin( child, ORIGIN_GENERATED );
 
   truxton_child_file_set_origin( child, ORIGIN_GENERATED );

Latest revision as of 18:22, 13 April 2024

This creates another child file object with this object as its parent.

Syntax

uint64_t truxton_child_file_create_child( uint64_t child_handle );

Parameters

child_handle

The handle created by the truxton_child_file_create or truxton_file_create_child call.

Return value

A handle to child file object.

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" );

   uint64_t now = truxton_time_now();

   truxton_child_file_set_created( child, now );
   truxton_child_file_set_accessed( child, now );
   truxton_child_file_set_modified( child, now );

   truxton_child_file_set_origin( child, ORIGIN_GENERATED );

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

   uint64_t grand_child = truxton_child_file_create_child( child );

   gather_details_and_save( child, grand_child );

   truxton_child_file_destroy( grand_child );
   truxton_child_file_destroy( child );
}