#include #include #include #include #include #include #include #include #include #include #include #include #define VIDPID_PATH "/usr/local/bin/mtpd.sh" /* * FunctionName: main * Description: */ int main01(int argc, char *argv[]) { int ret = 0; printf("argc = %d \n", argc); if (argc != 3) { return -1; } unsigned int i_vid = atoi(argv[1]); unsigned int i_pid = atoi(argv[2]); printf("arg0 = %d arg1=%d \n", i_vid, i_pid); char buf_vid[5] ={0}; char buf_pid[5] ={0}; buf_vid[4]='\0'; buf_pid[4]='\0'; sprintf(buf_vid,"%04x",i_vid); sprintf(buf_pid,"%04x",i_pid); printf("buf_vid = %s buf_pid=%s \n", buf_vid, buf_pid); if (i_pid > 0 && i_vid > 0) { FILE *fd; fd = fopen(VIDPID_PATH, "rb+"); if (!fd) { printf( "error open /usr/local/bin/mtp.sh...\n"); return -1; } else { printf( "open %s scuess.fd = %d\n", VIDPID_PATH,fd); } /*set vid*/ fseek(fd , 0x18e , SEEK_SET); ret = fwrite(buf_vid, 1, 4, fd); /*set pid*/ fseek(fd , 0x1c8 , SEEK_SET); ret = fwrite(buf_pid, 1, 4, fd); fclose(fd); return 0; } return -1; } /* ---------- end of function main ---------- */