亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? detect.c

?? Media transfer protocol implementation on POSIX. Have detailed readme on how to move to windows
?? C
字號:
#include "common.h"#include <unistd.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#define XML_BUFSIZE 0x10000static void dump_xml_fragment(uint8_t *buf, uint32_t len){  static int endianness = 0; // 0 = LE, 1 = BE  uint32_t bp = 0;    while (bp < len) {    if (buf[bp+0] == 0xFF && buf[bp+1] == 0xFE) {      endianness = 0;    } else if (buf[bp+0] == 0xFE && buf[bp+1] == 0xff) {      endianness = 1;    } else {      uint16_t tmp;            if (endianness == 0) {	tmp = buf[bp+1] << 8 | buf[bp+0];      } else {	tmp = buf[bp+0] << 8 | buf[bp+1];      }      // Fix this some day, we only print ISO 8859-1 correctly here,      // should atleast support UTF-8.      printf("%c", (uint8_t) tmp);    }    bp += 2;  }  printf("\n");}int main (int argc, char **argv){  LIBMTP_mtpdevice_t *device;  LIBMTP_file_t *files;  uint32_t xmlfileid = 0;  uint64_t totalbytes;  uint64_t freebytes;  char *storage_description;  char *volume_label;  char *friendlyname;  char *syncpartner;  char *sectime;  char *devcert;  uint16_t *filetypes;  uint16_t filetypes_len;  uint8_t maxbattlevel;  uint8_t currbattlevel;  int ret;  int probeonly = 0;  LIBMTP_Init();  if (argc > 1 && !strcmp(argv[1], "-p")) {    probeonly = 1;  }  if (probeonly) {    uint16_t vid;    uint16_t pid;    ret = LIBMTP_Detect_Descriptor(&vid, &pid);    if (ret > 0) {      printf("DETECTED MTP DEVICE WITH VID:%04x, PID:%04X\n", vid, pid);      exit(0);    } else {      exit(1);    }  }  device = LIBMTP_Get_First_Device();  if (device == NULL) {    printf("No devices.\n");    exit (0);  }  LIBMTP_Dump_Device_Info(device);    printf("MTP-specific device properties:\n");  // The friendly name  friendlyname = LIBMTP_Get_Friendlyname(device);  if (friendlyname == NULL) {    printf("   Friendly name: (NULL)\n");  } else {    printf("   Friendly name: %s\n", friendlyname);    free(friendlyname);  }  syncpartner = LIBMTP_Get_Syncpartner(device);  if (syncpartner == NULL) {    printf("   Synchronization partner: (NULL)\n");  } else {    printf("   Synchronization partner: %s\n", syncpartner);    free(syncpartner);  }  // Some storage info  ret = LIBMTP_Get_Storageinfo(device, &totalbytes, &freebytes, &storage_description, &volume_label);  if (ret == 0) {#ifdef __WIN32__    printf("   Total bytes on device: %I64u (%I64u MB)\n",	   totalbytes, totalbytes/(1024*1024));    printf("   Free bytes on device: %I64u (%I64u MB)\n",	   freebytes, freebytes/(1024*1024));#else    printf("   Total bytes on device: %llu (%llu MB)\n",	   totalbytes, totalbytes/(1024*1024));    printf("   Free bytes on device: %llu (%llu MB)\n",	   freebytes, freebytes/(1024*1024));#endif    if (storage_description != NULL) {      printf("   Storage description: \"%s\"\n", storage_description);      free(storage_description);    }    if (volume_label != NULL) {      printf("   Volume label: \"%s\"\n", volume_label);      free(volume_label);    }  } else {    printf("   Error getting disk info...\n");  }  // Some battery info  ret = LIBMTP_Get_Batterylevel(device, &maxbattlevel, &currbattlevel);  if (ret == 0) {    printf("   Battery level %d of %d (%d%%)\n",currbattlevel, maxbattlevel, 	   (int) ((float) currbattlevel/ (float) maxbattlevel * 100.0));  } else {    // Silently ignore. Some devices does not support getting the     // battery level.  }  ret = LIBMTP_Get_Supported_Filetypes(device, &filetypes, &filetypes_len);  if (ret == 0) {    uint16_t i;        printf("libmtp supported (playable) filetypes:\n");    for (i = 0; i < filetypes_len; i++) {      printf("   %s\n", LIBMTP_Get_Filetype_Description(filetypes[i]));    }  }  // Secure time XML fragment  ret = LIBMTP_Get_Secure_Time(device, &sectime);  if (ret == 0 && sectime != NULL) {    printf("\nSecure Time:\n%s\n", sectime);    free(sectime);  }  // Device certificate XML fragment  ret = LIBMTP_Get_Device_Certificate(device, &devcert);  if (ret == 0 && devcert != NULL) {    printf("\nDevice Certificate:\n%s\n", devcert);    free(devcert);  }  // Try to get Media player device info XML file...  files = LIBMTP_Get_Filelisting_With_Callback(device, NULL, NULL);  if (files != NULL) {    LIBMTP_file_t *file, *tmp;    file = files;    while (file != NULL) {      if (!strcmp(file->filename, "WMPInfo.xml")) {	xmlfileid = file->item_id;      }      tmp = file;      file = file->next;      LIBMTP_destroy_file_t(tmp);    }  }  if (xmlfileid != 0) {    FILE *xmltmp = tmpfile();    int tmpfile = fileno(xmltmp);        if (tmpfile != -1) {      int ret = LIBMTP_Get_Track_To_File_Descriptor(device, xmlfileid, tmpfile, NULL, NULL);      if (ret == 0) {	uint8_t *buf = NULL;	uint32_t readbytes;	buf = malloc(XML_BUFSIZE);	if (buf == NULL) {	  printf("Could not allocate %08x bytes...\n", XML_BUFSIZE);	  exit(1);	}	lseek(tmpfile, 0, SEEK_SET);	readbytes = read(tmpfile, (void*) buf, XML_BUFSIZE);		if (readbytes >= 2 && readbytes < XML_BUFSIZE) {	  printf("\nDevice description WMPInfo.xml file:\n");	  dump_xml_fragment(buf, readbytes);	}      }      fclose(xmltmp);    }  }  // King Fisher of Triad rocks your world!  LIBMTP_Release_Device(device);  printf("OK.\n");  exit (0);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看三级视频欧美| 成人av在线看| 亚洲精品国久久99热| 精品国产乱码久久久久久浪潮| 色婷婷av久久久久久久| 色又黄又爽网站www久久| 8x8x8国产精品| 色播五月激情综合网| 日本韩国精品在线| 欧美在线观看你懂的| 欧美性猛交xxxxxx富婆| 欧美做爰猛烈大尺度电影无法无天| 色av一区二区| 欧美色成人综合| 日韩一区二区三区电影在线观看| 日韩欧美一区二区免费| 久久亚洲欧美国产精品乐播| 国产色综合久久| 最新国产成人在线观看| 亚洲一区二区三区四区五区黄| 亚洲成年人影院| 久久国产夜色精品鲁鲁99| 国产精品亚洲一区二区三区在线| 大胆亚洲人体视频| 色一情一伦一子一伦一区| 欧美三级中文字| 精品成人免费观看| 中文字幕 久热精品 视频在线| 亚洲男人天堂av网| 日韩av一级片| 国产白丝网站精品污在线入口| 99久精品国产| 91精品国模一区二区三区| 久久久午夜电影| 亚洲精品欧美激情| 国模少妇一区二区三区| 一本一道波多野结衣一区二区| 欧美精品v国产精品v日韩精品| 26uuu国产在线精品一区二区| 亚洲欧美日韩综合aⅴ视频| 日本在线不卡一区| av资源网一区| 日韩欧美美女一区二区三区| 中文字幕亚洲欧美在线不卡| 热久久一区二区| 成人av集中营| 欧美videos中文字幕| 亚洲精品美国一| 精品一区二区三区免费| 97久久人人超碰| 精品久久久久久亚洲综合网| 一区二区三区不卡在线观看| 国产一区二区三区综合| 欧美日韩精品一区二区三区蜜桃| 国产午夜精品一区二区三区嫩草| 亚洲一区二区三区中文字幕在线| 国产真实乱子伦精品视频| 欧美色涩在线第一页| 国产精品乱码久久久久久| 免费成人在线观看视频| 色天使久久综合网天天| 国产日韩欧美不卡在线| 蜜桃视频第一区免费观看| 欧美特级限制片免费在线观看| 欧美激情一区二区三区四区| 久久se这里有精品| 欧美一区二区视频在线观看2022| 亚洲精品五月天| 99re热这里只有精品视频| 久久久久国产精品麻豆ai换脸| 日韩和欧美一区二区三区| 欧美亚洲图片小说| 亚洲制服丝袜一区| 一本大道久久a久久精品综合| 国产偷国产偷亚洲高清人白洁| 麻豆久久久久久久| 日韩免费福利电影在线观看| 日韩精品1区2区3区| 欧美片网站yy| 石原莉奈一区二区三区在线观看| 欧美午夜精品久久久久久孕妇| 亚洲综合一区在线| 色欧美88888久久久久久影院| 亚洲视频一区二区在线观看| 99热在这里有精品免费| 成人免费在线观看入口| 99精品视频一区二区| 综合分类小说区另类春色亚洲小说欧美| 丁香一区二区三区| 国产精品初高中害羞小美女文| 91片黄在线观看| 夜夜精品视频一区二区| 欧美日韩另类一区| 久久成人免费网| 国产亚洲成年网址在线观看| 国产91精品久久久久久久网曝门 | 亚洲乱码国产乱码精品精98午夜| a亚洲天堂av| 亚洲一区二区三区在线看| 欧美精三区欧美精三区| 九色porny丨国产精品| 国产欧美日韩在线观看| 91最新地址在线播放| 亚洲一区二区在线视频| 日韩欧美国产系列| 成人三级伦理片| 一区二区三区欧美久久| 日韩欧美在线综合网| 国产精品一区在线观看你懂的| 中文字幕一区二区5566日韩| 欧美日韩精品电影| 韩国v欧美v日本v亚洲v| 亚洲少妇屁股交4| 6080国产精品一区二区| 国产不卡高清在线观看视频| 亚洲高清免费在线| 久久久亚洲综合| 欧美亚洲另类激情小说| 精品一区二区在线免费观看| 亚洲天堂a在线| 日韩精品影音先锋| 色婷婷综合久久久久中文| 日韩国产精品91| 日本不卡不码高清免费观看| 国产亚洲精品福利| 在线成人av影院| 91偷拍与自偷拍精品| 黑人精品欧美一区二区蜜桃| 亚洲综合另类小说| 中文字幕精品一区二区三区精品| 欧美精选一区二区| 色综合 综合色| 成人一级视频在线观看| 日本三级亚洲精品| 亚洲一区二区免费视频| 国产亚洲一区二区三区四区 | 亚洲成人在线免费| 国产精品久久久久影院老司| 日韩午夜激情视频| 欧美日韩一级片网站| 成人深夜在线观看| 国产一区二区毛片| 免费日韩伦理电影| 亚洲不卡一区二区三区| 亚洲国产你懂的| 久久精品国产秦先生| 亚洲国产精品综合小说图片区| 中文字幕精品一区二区精品绿巨人| 欧美一区二区三区电影| 在线观看www91| 91免费在线看| 91麻豆6部合集magnet| 成人少妇影院yyyy| av一二三不卡影片| 成人免费av网站| 国产精品一区二区久久不卡| 精品在线亚洲视频| 久久99精品久久久久久动态图 | 国产成人午夜电影网| 精品在线视频一区| 午夜精品爽啪视频| 伊人夜夜躁av伊人久久| 麻豆精品视频在线观看视频| 亚洲一区影音先锋| 一区二区三区在线视频观看| 日本一区二区免费在线观看视频| 国产三级一区二区三区| 国产精品嫩草影院com| 国产精品久久三区| 亚洲人成小说网站色在线| 67194成人在线观看| 精品日韩欧美一区二区| 欧美午夜在线一二页| 久久久午夜精品| 成人久久视频在线观看| 日本aⅴ精品一区二区三区| 美女诱惑一区二区| 久久99国产精品久久99| 国产自产v一区二区三区c| 国产最新精品免费| 国产在线一区二区综合免费视频| 欧美性猛交xxxx黑人交| 亚洲男同性恋视频| 97精品国产97久久久久久久久久久久| 91福利区一区二区三区| 精品久久久久久无| 一区二区在线免费| 国产精品中文有码| 久久精品这里都是精品| 国内精品伊人久久久久影院对白| 欧美亚洲尤物久久| 综合亚洲深深色噜噜狠狠网站| 成人高清av在线| 日韩欧美一区二区久久婷婷| 亚洲在线一区二区三区| 丁香亚洲综合激情啪啪综合| 欧美在线免费观看亚洲| 91精品国产综合久久蜜臀 | 精品一区二区在线免费观看| 国产a精品视频|