⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 record.cpp.svn-base

📁 vc环境下编译的一个对USB设备进行烧录的驱动程序
💻 SVN-BASE
字号:
#include "stdafx.h"
#include "burn.h"

static BOOL enRecord=TRUE;
extern configuration config;
HANDLE fd[MAX_DEVICE_NUM];
HANDLE fd_info[MAX_DEVICE_NUM];

extern char Current_DirectoryBuffer[MAX_PATH];

void record_int(int port)
{

	char DirectoryBuffer[255];
	char buf[255];
	CString file;
	SYSTEMTIME st;


	GetLocalTime(&st);

	strcpy(DirectoryBuffer, Current_DirectoryBuffer);

	//strcat(DirectoryBuffer, ".\\");

	//change the log file way by fufuqing
	sprintf(buf, ".\\Log\\%s", config.mobile_type);
	
	strcat(DirectoryBuffer, buf);

	//sprintf(file, "trace%d.txt", port);
	file.Format("trace%d-%d-%d-%d_%d-%d-%d.txt", port,
		st.wYear, st.wMonth, 
		st.wDay, st.wHour, st.wMinute, st.wSecond);

	strcat(DirectoryBuffer, file);

	fd[port - config.base_com] = CreateFile(DirectoryBuffer, GENERIC_WRITE|GENERIC_READ,
					FILE_SHARE_READ|FILE_SHARE_WRITE, NULL,
					CREATE_ALWAYS,
					FILE_ATTRIBUTE_NORMAL,
					NULL);
	if (fd[port - config.base_com] == INVALID_HANDLE_VALUE)
	{
		return;
	}
	enRecord = TRUE;
}

void record_write(char *s, int len,int port)
{
	unsigned long wlen;

	if (fd[port - config.base_com] != INVALID_HANDLE_VALUE && enRecord==TRUE)
		WriteFile(fd[port - config.base_com], s, len, &wlen, NULL);
}

void record_free(int port)
{
	if (fd[port - config.base_com] != INVALID_HANDLE_VALUE)
		CloseHandle(fd[port - config.base_com]);
	fd[port - config.base_com] = INVALID_HANDLE_VALUE;
}

void record_enable()
{
	enRecord = TRUE;
}

void record_disable()
{
	enRecord = FALSE;
}

void info_record_int(int port)
{

	char DirectoryBuffer[255];
	CString file;


	strcpy(DirectoryBuffer, Current_DirectoryBuffer);

	strcat(DirectoryBuffer, "\\");

	file.Format("information%d.txt", port);

	strcat(DirectoryBuffer, file);

	fd_info[port - config.base_com] = CreateFile(DirectoryBuffer, GENERIC_WRITE|GENERIC_READ,
					FILE_SHARE_READ|FILE_SHARE_WRITE, NULL,
					CREATE_ALWAYS,
					FILE_ATTRIBUTE_NORMAL,
					NULL);
	if (fd_info[port - config.base_com] == INVALID_HANDLE_VALUE)
	{
		return;
	}

}

void info_record_write( LPCSTR s, int len,int port)
{
	unsigned long wlen;

	if (fd_info[port - config.base_com] != INVALID_HANDLE_VALUE)
		WriteFile(fd_info[port - config.base_com], s, len, &wlen, NULL);
}

void info_record_free(int port)
{
	if (fd_info[port - config.base_com] != INVALID_HANDLE_VALUE)
		CloseHandle(fd_info[port - config.base_com]);
	fd_info[port - config.base_com] = INVALID_HANDLE_VALUE;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -