JZsdk_FileSystm.c
2.0 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include <stdio.h>
#include "JZsdk_FileSystm.h"
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
/*
* 用于运行指令
*
*/
int JZsdk_RunSystemCmd(char *systemCmd)
{
//FILE *fp;
//printf("JZsdk_RunSystemCmd:%s\n",systemCmd);
// fp = popen(systemCmd, "r");
// if (fp == NULL) {
// return -1;
// }
int status = system(systemCmd);
if (status == -1 || WIFEXITED(status) == false) {
printf("Call %s error, status = %d\n", systemCmd, status);
return -1;
}
if (WEXITSTATUS(status) == 0) {
printf("指令执行成功%s\n",systemCmd);
return 0;
} else {
printf("Exit status is = %d", WEXITSTATUS(status));
return -2;
}
//pclose(fp);
return 0;
}
/*
运行命令 并读取返回值
*/
// FILE* JZsdk_RunSystemCmd_ReturnFilePointer(char *systemCmd)
// {
// FILE *fp;
// fp = popen(systemCmd, "r");
// pclose(fp);
// return fp;
// }
int JZsdk_Socket()
{
}
//获取设备序列号
T_JZsdkReturnCode GetSerialNumber(char *SerialNumber)
{
FILE *num_file;
char num_char[15];
num_file = fopen("/root/num", "rb+");
if (num_file == NULL)
{
num_file = fopen("/root/num", "wb+");
if (num_file == NULL)
{
return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
}
}
else
{
int ret = fseek(num_file, 0, SEEK_SET);
if (ret != 0) {
printf("Seek log count file error, ret: %d.\r\n", ret);
}
ret = fread((char *) &num_char,14, sizeof(char), num_file);
if (ret != sizeof(char)) {
printf("Read num file error.\r\n");
}
else{
printf("Read num file=%s\n",&num_char);
}
}
fclose(num_file);
if (SerialNumber != NULL)
{
memcpy(SerialNumber, num_char, 14);
return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
}
return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
}