thumbsdb

Crates.iothumbsdb
lib.rsthumbsdb
version0.1.2
sourcesrc
created_at2018-03-22 14:51:11.945305
updated_at2018-03-23 00:38:10.990749
descriptionForensic library: parser and reader for Microsoft Thumbs.db file
homepagehttps://github.com/zadlg/thumbsdb
repositoryhttps://github.com/zadlg/thumbsdb.git
max_upload_size
id56898
size69,374
zadig (zadlg)

documentation

README

ThumbsDB

Crates.io Crates.io license

A simple parser and reader for Microsoft Thumbs.db files.

This includes a basic parser, which validates the format of the given file, and a reader for extracting thumbnails.

This library will be used in a global forensic computing library very soon.

Usage

Add this to your Cargo.toml:

[dependencies]
thumbsdb = "0.1.2"

and this to your crate root:

extern crate thumbsdb;

Example

use thumbsdb;
use std::io::Write;

let mut file = std::fs::File::open("assets/Thumbs.db").unwrap();

// We're going to extract the thumbnails from the Thumbs.db
let thumbs = thumbsdb::new(file).unwrap();
for thumbnail in thumbs.iterate() {
  let mut buffer = std::vec::Vec::<u8>::new();
  thumbs.extract_thumbnail(thumbsnail, &mut buffer);

  // Saves the extracted thumbnail
  let mut extracted_file = std::fs::File::create(format!("assets/streams/{}",
    thumbnail.name())).unwrap();
  extracted_file.write_all(&buffer[..]);
}

Releases

Release notes are available in RELEASES.md.

Compatibility

thumbsdb seems to work for rust 1.9 and greater.

License

http://www.wtfpl.net/about/

Commit count: 0

cargo fmt