C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 21 - Создаем LOG файл SetupInitializeFileLog / Win 32 API / Win32 API

Шаг 21 - Создаем LOG файл SetupInitializeFileLog

Ну давайте сразу глянем код:

// TestLog.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "afxwin.h"
#include "setupapi.h"
#include "iostream.h"

#pragma comment(lib,"setupapi.lib")


void main()
{
	HSPFILELOG hp;
	hp=SetupInitializeFileLog("my.log",SPFILELOG_FORCENEW);
	if (hp!=INVALID_HANDLE_VALUE)
	{
	}
	else
		cout << "Error Create File Log" << endl;
}

Сначала мы создаем переменную типа HSPFILELOG. Она определена так:

typedef PVOID HSPFILELOG;

В нее и будет помещен результат выполнения функции SetupInitializeFileLog куда передается имя LOG файла и флаг. Это флаг SPFILELOG_FORCENEW, говорит о том, что перезаписывать файл если он есть. Какие еще флаги есть ???

SPFILELOG_SYSTEMLOG Использовать системный LOG файл
SPFILELOG_FORCENEW  Перезаписывать если есть
SPFILELOG_QUERYONLY Только для запроса информации

Ну и естественно, что если результат не равен INVALID_HANDLE_VALUE все нормально. Кстати знаете зачем вот эти флаги ? Ну во-первых системный LOG нельзя перезаписывать. А флаг на выборку - это для продолжения инсталляции после прерывания. Сталкивались в Windows при поиске оборудования ??? Вот примерно тоже самое сделать можете и Вы.


| |
Автор Каев Артем.
[AD]