Difference between revisions of "Truxton child file set parent id"

From truxwiki.com
Jump to navigation Jump to search
(Created page with "Sets the id of the parent of this child file object. =Syntax= <syntaxhighlight lang="C"> void truxton_child_file_set_parent_id( uint64_t child_handle, char * id ); </syntaxhi...")
 
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Sets the id of the parent of this child file object.
 
Sets the id of the parent of this child file object.
 +
This corresponds to the <code>[ParentFileID]</code> column of the <code><nowiki>[</nowiki>[[File Table|File]]<nowiki>]</nowiki></code> table.
  
 
=Syntax=
 
=Syntax=
<syntaxhighlight lang="C">
+
<source lang="C">
void truxton_child_file_set_parent_id( uint64_t child_handle, char * id );
+
void truxton_child_file_set_parent_id( uint64_t child_handle, char const * id );
</syntaxhighlight>
+
</source>
  
 
=Parameters=
 
=Parameters=
 
==<code>child_handle</code>==
 
==<code>child_handle</code>==
 
 
The handle created by the [[truxton_child_file_create]] or [[truxton_file_create_child]] call.
 
The handle created by the [[truxton_child_file_create]] or [[truxton_file_create_child]] call.
  
 
==<code>id</code>==
 
==<code>id</code>==
 
 
The string representation of a [https://en.wikipedia.org/wiki/Universally_unique_identifier GUID.]
 
The string representation of a [https://en.wikipedia.org/wiki/Universally_unique_identifier GUID.]
  
 
=Remarks=
 
=Remarks=
 
+
This identifier will be stored in the <code>[ParentFileID]</code> column of the <code><nowiki>[</nowiki>[[File Table|File]]<nowiki>]</nowiki></code> table in the database.
This identifier will be stored in the <code>ParentFileID</code> column of the <code>File</code> table in the database.
 
  
 
=Sample=
 
=Sample=
<syntaxhighlight lang="C" highlight="28">
+
<source lang="C" highlight="21">
void add_folder(uint64_t truxton, uint64_t parent_file)
+
void add_folder( uint64_t truxton, uint64_t parent_file )
 
{
 
{
   truxton_start_adding_files(truxton);
+
   truxton_start_adding_files( truxton );
  
   uint64_t child = truxton_child_file_create(truxton);
+
   uint64_t child = truxton_child_file_create( truxton );
  
 
   char id[40];
 
   char id[40];
  
   truxton_file_get_id(parent_file, id, sizeof(id));
+
   truxton_file_get_id( parent_file, id, sizeof(id) );
   truxton_child_file_set_parent_id(child, id);
+
   truxton_child_file_set_parent_id( child, id );
   truxton_child_file_set_type(child, Type_Directory);
+
   truxton_child_file_set_type( child, Type_Directory );
   truxton_child_file_set_name(child, "Custom Exploits Folder");
+
   truxton_child_file_set_name( child, "Custom Exploits Folder" );
 
 
  FILETIME now;
 
 
 
  GetSystemTimeAsFileTime(&now);
 
 
 
  ULARGE_INTEGER ticks;
 
  
   ticks.LowPart = now.dwLowDateTime;
+
   uint64_t now = truxton_time_now();
  ticks.HighPart = now.dwHighDateTime;
 
  
   truxton_child_file_set_created(child, ticks.QuadPart);
+
   truxton_child_file_set_created( child, now );
   truxton_child_file_set_accessed(child, ticks.QuadPart);
+
   truxton_child_file_set_accessed( child, now );
   truxton_child_file_set_modified(child, ticks.QuadPart);
+
   truxton_child_file_set_modified( child, now );
  
   truxton_child_file_set_origin(child, ORIGIN_GENERATED);
+
   truxton_child_file_set_origin( child, ORIGIN_GENERATED );
   truxton_child_file_set_parent_id(child, "B57140A0-8E84-4500-B4D5-3606AA8560AA" );
+
   truxton_child_file_set_parent_id( child, "B57140A0-8E84-4500-B4D5-3606AA8560AA" );
  
   if ( truxton_child_file_save(child) == 0 )
+
   if ( truxton_child_file_save( child ) == 0 )
 
   {
 
   {
 
       printf( "Failed to add child to Truxton\n" );
 
       printf( "Failed to add child to Truxton\n" );
  }
 
  else
 
  {
 
      truxton_child_file_get_id(child_file, id, sizeof(id));
 
      printf( "Added child id %s\n", id );
 
 
   }
 
   }
  
   truxton_child_file_destroy(child);
+
   truxton_child_file_destroy( child );
 
}
 
}
</syntaxhighlight>
+
</source>

Latest revision as of 02:59, 14 April 2024

Sets the id of the parent of this child file object. This corresponds to the [ParentFileID] column of the [File] table.

Syntax

void truxton_child_file_set_parent_id( uint64_t child_handle, char const * id );

Parameters

child_handle

The handle created by the truxton_child_file_create or truxton_file_create_child call.

id

The string representation of a GUID.

Remarks

This identifier will be stored in the [ParentFileID] column of the [File] table in the database.

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 );
   truxton_child_file_set_parent_id( child, "B57140A0-8E84-4500-B4D5-3606AA8560AA" );

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

   truxton_child_file_destroy( child );
}