Man page - liblnk(3)
Packages contains this manual
Manual
liblnk (3) Library Functions Manual liblnk (3)
NAME
liblnk.h â Library to access the Windows Shortcut File (LNK) format
SYNOPSIS
#include <liblnk.h>
Support functions
const char *
liblnk_get_version ( void );
int
liblnk_get_access_flags_read ( void );
int
liblnk_get_codepage ( int *codepage , liblnk_error_t **error );
int
liblnk_set_codepage ( int codepage , liblnk_error_t **error );
int
liblnk_check_file_signature ( const char *filename , liblnk_error_t **error );
Available when compiled with wide character string support:
int
liblnk_check_file_signature_wide ( const wchar_t *filename , liblnk_error_t **error );
Available when compiled with libbfio support:
int
liblnk_check_file_signature_file_io_handle ( libbfio_handle_t *file_io_handle , liblnk_error_t **error );
Notify functions
void
liblnk_notify_set_verbose ( int verbose );
int
liblnk_notify_set_stream ( FILE *stream , liblnk_error_t **error );
int
liblnk_notify_stream_open ( const char *filename , liblnk_error_t **error );
int
liblnk_notify_stream_close ( liblnk_error_t **error );
Error functions
void
liblnk_error_free ( liblnk_error_t **error );
int
liblnk_error_fprint ( liblnk_error_t *error , FILE *stream );
int
liblnk_error_sprint ( liblnk_error_t *error , char *string , size_t size );
int
liblnk_error_backtrace_fprint ( liblnk_error_t *error , FILE *stream );
int
liblnk_error_backtrace_sprint ( liblnk_error_t *error , char *string , size_t size );
File functions
int
liblnk_file_initialize ( liblnk_file_t **file , liblnk_error_t **error );
int
liblnk_file_free ( liblnk_file_t **file , liblnk_error_t **error );
int
liblnk_file_signal_abort ( liblnk_file_t *file , liblnk_error_t **error );
int
liblnk_file_open ( liblnk_file_t *file , const char *filename , int access_flags , liblnk_error_t **error );
int
liblnk_file_close ( liblnk_file_t *file , liblnk_error_t **error );
int
liblnk_file_get_ascii_codepage ( liblnk_file_t *file , int *ascii_codepage , liblnk_error_t **error );
int
liblnk_file_set_ascii_codepage ( liblnk_file_t *file , int ascii_codepage , liblnk_error_t **error );
int
liblnk_file_is_corrupted ( liblnk_file_t *file , liblnk_error_t **error );
Available when compiled with wide character string support:
int
liblnk_file_open_wide ( liblnk_file_t *file , const wchar_t *filename , int access_flags , liblnk_error_t **error );
Available when compiled with libbfio support:
int
liblnk_file_open_file_io_handle ( liblnk_file_t *file , libbfio_handle_t *file_io_handle , int access_flags , liblnk_error_t **error );
Link information functions
int
liblnk_file_get_data_flags ( liblnk_file_t *file , uint32_t *data_flags , liblnk_error_t **error );
int
liblnk_file_get_data_size ( liblnk_file_t *file , size64_t *data_size , liblnk_error_t **error );
int
liblnk_file_link_refers_to_file ( liblnk_file_t *file , liblnk_error_t **error );
int
liblnk_file_get_file_creation_time ( liblnk_file_t *file , uint64_t *filetime , liblnk_error_t **error );
int
liblnk_file_get_file_modification_time ( liblnk_file_t *file , uint64_t *filetime , liblnk_error_t **error );
int
liblnk_file_get_file_access_time ( liblnk_file_t *file , uint64_t *filetime , liblnk_error_t **error );
int
liblnk_file_get_file_size ( liblnk_file_t *file , uint32_t *file_size , liblnk_error_t **error );
int
liblnk_file_get_icon_index ( liblnk_file_t *file , uint32_t *icon_index , liblnk_error_t **error );
int
liblnk_file_get_show_window_value ( liblnk_file_t *file , uint32_t *show_window_value , liblnk_error_t **error );
int
liblnk_file_get_hot_key_value ( liblnk_file_t *file , uint16_t *hot_key_value , liblnk_error_t **error );
int
liblnk_file_get_file_attribute_flags ( liblnk_file_t *file , uint32_t *file_attribute_flags , liblnk_error_t **error );
int
liblnk_file_get_drive_type ( liblnk_file_t *file , uint32_t *drive_type , liblnk_error_t **error );
int
liblnk_file_get_drive_serial_number ( liblnk_file_t *file , uint32_t *drive_serial_number , liblnk_error_t **error );
int
liblnk_file_get_utf8_volume_label_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_volume_label ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_volume_label_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_volume_label ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_local_path_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_local_path ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_local_path_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_local_path ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_network_path_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_network_path ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_network_path_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_network_path ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_description_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_description ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_description_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_description ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_relative_path_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_relative_path ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_relative_path_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_relative_path ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_working_directory_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_working_directory ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_working_directory_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_working_directory ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_command_line_arguments_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_command_line_arguments ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_command_line_arguments_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_command_line_arguments ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_icon_location_size ( liblnk_file_t *file , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf8_icon_location ( liblnk_file_t *file , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_icon_location_size ( liblnk_file_t *file , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_utf16_icon_location ( liblnk_file_t *file , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_file_get_link_target_identifier_data_size ( liblnk_file_t *file , size_t *data_size , liblnk_error_t **error );
int
liblnk_file_copy_link_target_identifier_data ( liblnk_file_t *file , uint8_t *data , size_t data_size , liblnk_error_t **error );
Distributed link tracking data functions
int
liblnk_file_has_distributed_link_tracking_data ( liblnk_file_t *file , liblnk_error_t **error );
Extra data block functions
int
liblnk_file_get_number_of_data_blocks ( liblnk_file_t *file , int *number_of_data_blocks , liblnk_error_t **error );
int
liblnk_file_get_data_block_by_index ( liblnk_file_t *file , int data_block_index , liblnk_data_block_t **data_block , liblnk_error_t **error );
Data block functions
int
liblnk_data_block_free ( liblnk_data_block_t **data_block , liblnk_error_t **error );
int
liblnk_data_block_get_signature ( liblnk_data_block_t *data_block , uint32_t *signature , liblnk_error_t **error );
int
liblnk_data_block_get_data_size ( liblnk_data_block_t *data_block , size_t *data_size , liblnk_error_t **error );
int
liblnk_data_block_copy_data ( liblnk_data_block_t *data_block , uint8_t *data , size_t data_size , liblnk_error_t **error );
Strings data block functions
int
liblnk_strings_data_block_get_utf8_string_size ( liblnk_data_block_t *data_block , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf8_string ( liblnk_data_block_t *data_block , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf16_string_size ( liblnk_data_block_t *data_block , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf16_string ( liblnk_data_block_t *data_block , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf8_path_string_size ( liblnk_data_block_t *data_block , size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf8_path_string ( liblnk_data_block_t *data_block , uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf16_path_string_size ( liblnk_data_block_t *data_block , size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_strings_data_block_get_utf16_path_string ( liblnk_data_block_t *data_block , uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
Distributed link tracking data block functions
int
liblnk_distributed_link_tracking_data_block_get_utf8_machine_identifier_size , ( liblnk_data_block_t *data_block size_t *utf8_string_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_utf8_machine_identifier ,( liblnk_data_block_t *data_block uint8_t *utf8_string , size_t utf8_string_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_utf16_machine_identifier_size , ( liblnk_data_block_t *data_block size_t *utf16_string_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_utf16_machine_identifier , ( liblnk_data_block_t *data_block uint16_t *utf16_string , size_t utf16_string_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_droid_volume_identifier ,( liblnk_data_block_t *data_block uint8_t *guid_data , size_t guid_data_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_droid_file_identifier ( liblnk_data_block_t *data_block , uint8_t *guid_data , size_t guid_data_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_birth_droid_volume_identifier , ( liblnk_data_block_t *data_block uint8_t *guid_data , size_t guid_data_size , liblnk_error_t **error );
int
liblnk_distributed_link_tracking_data_block_get_birth_droid_file_identifier , ( liblnk_data_block_t *data_block uint8_t *guid_data , size_t guid_data_size , liblnk_error_t **error );
DESCRIPTION
The liblnk_get_version () function is used to retrieve the library version.
RETURN VALUES
Most of the functions return NULL or -1 on error, dependent on the return type. For the actual return values see "liblnk.h".
ENVIRONMENT
None
FILES
None
NOTES
liblnk can be compiled with wide character support (wchar_t).
To compile
liblnk with wide character support use:
./configure
--enable-wide-character-type=yes
or define:
_UNICODE
or
UNICODE
during compilation.
LIBLNK_WIDE_CHARACTER_TYPE
in liblnk/features.h can be used to determine if liblnk was
compiled with wide character support.
BUGS
Please report bugs of any kind on the project issue tracker: https://github.com/libyal/liblnk/issues
AUTHOR
These man pages are generated from "liblnk.h".
COPYRIGHT
Copyright (C) 2009-2024, Joachim Metz <joachim.metz@gmail.com>.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO
the liblnk.h include file liblnk October 28, 2023 liblnk (3)