2、如果您的设备不支持此功能,会提示:您的设备尚不支持此功能。建议您暂时先不要使用itunes回传,避免应用被抹掉。您可以使用同步助手在电脑上管理您的应用。
3、保证您的当前设备上至少有一款应用是通过App Store或者通过itunes Store下载安装的正版应用。如果没有,请打开设备上App Store,选择一款免费应用点击下载,并安装完成。
4、在开启itunes回传的情况下,用同步推安装一款软件。以京东商城为例,选中京东商城,点击免费下载后,等待下载安装完成。。
5、连接设备到电脑,并运行itunes。有两种方法可进行itunes回传。
方法一:1)选中设备,右键点击“传输购买项目”,进行传输。
2)传输完成后,点击“应用程序”,可查看到成功回传到itunes资料库的软件。
方法二:与同步软件的方法一样
1)选中设备,点击“应用程序”,勾选“同步应用程序”,然后任意勾选一款软件,点击“应用”。
2)如果itunes询问是否把未出现在itunes资料库中的购买陪梁项目回传到itunes资料库中,点击“传输”。
3)同步完成后,点击“应用程序”,即可查看到回传的软件了。
注:若您的设备上有通过尚未授权给您当前使用电脑的账户购买的正版应用,则设备上该帐号购买的正版应用会被抹掉。好饥
先看下你HMI上有没有插SD卡,有卡悄档扮,如果在下载程序时开启了回传功能,那么可以将HMI中的程序回传到PC中。如果没开启回传功能,你只能备份,备份在电脑中是打不开的。
项目--传送--通讯设置,先设置好通讯参数
然后
项目--传送--回传(或备份/恢复)
如果设置没问题,连接也正常,HMI会自动切换到传送或备份画面。等待传送/备蠢历份结束启灶
以下这段程序并纯册是裤尺我自己 编写并测试过了的测试过了的.....最大定义的默认的可循环logfile size是500M
不过,在使用的时候,用logfilesize 来替代
除非logfilesize=0才使用
本程序的使用方法:
if(traceEnabled) {
trace("....")
}
#define MAXFILESIZE (500*1024*1024) /*Maximum file size in Kbytes:500M*/
static CRITICAL_SECTION traceMutex
//static CRITICAL_SECTION performanceTraceMutex
static char fname[256]=LOGDIR/*set a default logdir*/
static int initialized=0 /绝宏*trace() should call traceInit if this value is not set*/
extern int removeTraceFiles /*t==1, the log file will be deleted at anytime*/
extern int maxfilesize /*filesize Kbytes */
extern long position
void
traceInit(char *p_logDir) {
strcpy(fname, p_logDir)
InitializeCriticalSection(&traceMutex)
//InitializeCriticalSection(&performanceTraceMutex)
if (removeTraceFiles) {
DeleteFile(fname)
removeTraceFiles=0/* don't delete logfile repeatedly*/
position=0
}
if ((maxfilesize<=0)||(maxfilesize>=MAXFILESIZE)) {
maxfilesize=MAXFILESIZE
/*just in case if maxfilesize is wrongly defined, won't cause error*/
}
initialized = 1
}
void traceWrapup()
{
if ( initialized )
DeleteCriticalSection( &traceMutex )
}
void
trace(char *msg) {
FILE*file
struct tm *t
struct timebtp
char new_msg[26]
char tmpString[200]
int filesize,iNewFile,iFileSize,newMsgSize=0
if (!initialized) {
/* the log file has not yet been initialised*/
traceInit(fname)
}
EnterCriticalSection(&traceMutex)
ftime( &tp )
t = localtime(&(tp.time))
if (removeTraceFiles) {
DeleteFile(fname)
removeTraceFiles=0/* don't delete logfile repeatedly*/
position=0
}
newMsgSize=sprintf(new_msg, "[%02d/%02d %02d:%02d:%02d.%03d] ",
t->tm_mon+1, t->tm_mday,
t->tm_hour, t->tm_min, t->tm_sec,
tp.millitm)
if (!access(fname,0)) {
file = fopen(fname, "r+")/*open file for read and write*/
iNewFile=0
}
else {
file = fopen(fname, "a+") /* */
if (file!=NULL) {
PrintToFile(file,new_msg)
position=ftell(file)
}
iNewFile=1
}
if ((!iNewFile) &&(file!=NULL)) {
/*Check the file size, if the limitation is exceeded
then try to rewrite the file from beginning
otherwise do appendant*/
fseek(file,0L,SEEK_END)/*to the end of file*/
filesize=ftell(file) /*calculate the file size*/
iFileSize=filesize+newMsgSize+strlen(msg)
if (iFileSize>= maxfilesize) {
/*Appendant to file is not allowed, so goto position*/
if ((position>=filesize)||(position<0)) {
position=0
}
fseek(file, position, SEEK_SET)
if (!position) {
sprintf(tmpString, "[%02d/%02d %02d:%02d:%02d.%03d] Warning:Log file is FULL and existing logs are being re-written!\n",
t->tm_mon+1, t->tm_mday,
t->tm_hour, t->tm_min, t->tm_sec,
tp.millitm)
PrintToFile(file, tmpString)
}
}
PrintToFile(file, new_msg)
PrintToFile(file, msg)
PrintToFile(file,"\n")
position=ftell(file)
position=(position>=maxfilesize)?0:position
}
if (file!=NULL) {
fflush(file)
fclose(file)
}
LeaveCriticalSection(&traceMutex)
}
void PrintToFile(FILE *file, char *msg)
{
while (*msg) if (!ferror(file)) fputc(*msg++,file)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)