PDA

View Full Version : سوال: Backup گرفتن از Event های ویندوز



bpzone
شنبه 05 مرداد 1392, 17:55 عصر
با سلام خدمت تمامی دوستان
چطوری می تونیم از event های ویندوز backup بگیریم
بطوری که بتونیم فایلی با پسوند evt باشه
ممنون از راهنمایی دوستان

bpzone
یک شنبه 06 مرداد 1392, 10:16 صبح
با سلام خدمت دوستان

از دوستان کسی ایده ای در این رابطه نداره که راهنمایی کنه ؟

ممنون

programerinfonet
یک شنبه 06 مرداد 1392, 11:05 صبح
دوست عزیز منظورت از Event چه چیزایی هست ؟
از چه بخش هایی میخوایی بکاپ بگیری ؟؟؟

bpzone
یک شنبه 06 مرداد 1392, 11:09 صبح
با سلام
از Event logs ویندوز
از قسمت Application & System

programerinfonet
یک شنبه 06 مرداد 1392, 11:18 صبح
ببین این کمکت می کنه ؟

public class ClsEventLog
{
public bool CreateLog(string strLogName)
{
bool Result = false;

try
{
System.Diagnostics.EventLog.CreateEventSource(strL ogName, strLogName);
System.Diagnostics.EventLog SQLEventLog =
new System.Diagnostics.EventLog();

SQLEventLog.Source = strLogName;
SQLEventLog.Log = strLogName;

SQLEventLog.Source = strLogName;
SQLEventLog.WriteEntry("The " + strLogName + " was successfully
initialize component.", EventLogEntryType.Information);

Result = true;
}
catch
{
Result = false;
}

return Result;
}
public void WriteToEventLog(string strLogName
, string strSource
, string strErrDetail)
{
System.Diagnostics.EventLog SQLEventLog = new System.Diagnostics.EventLog();

try
{
if (!System.Diagnostics.EventLog.SourceExists(strLogN ame))
this.CreateLog(strLogName);


SQLEventLog.Source = strLogName;
SQLEventLog.WriteEntry(Convert.ToString(strSource)
+ Convert.ToString(strErrDetail),
EventLogEntryType.Information);

}
catch (Exception ex)
{
SQLEventLog.Source = strLogName;
SQLEventLog.WriteEntry(Convert.ToString("INFORMATION: ")
+ Convert.ToString(ex.Message),
EventLogEntryType.Information);
}
finally
{
SQLEventLog.Dispose();
SQLEventLog = null;
}
}
}

bpzone
یک شنبه 06 مرداد 1392, 12:00 عصر
دوست عزیز، ممنون از راهنمایی شما
اما هدف من ایجاد یک event جدید و نوشتن در آن نیست
در ویندوز event های مختلفی داریم ( دسته بندی های مختلف ) به عنوان مثال Application و System
هدف من تهیه backup از Application می باشد ، به طوری که بتوانم فایلی با پسوند evt داشته باشم که قابلیت Import کردن مجدد در Event log ویندوز را داشته باشد.
با تشکر

bpzone
شنبه 12 مرداد 1392, 14:15 عصر
دوستان کسی ایده ای به ذهنش نمی رسه در این مورد ؟
ممنون میشم اگر راهنمایی بفرمایید ...

aliagamon
شنبه 12 مرداد 1392, 14:21 عصر
از این استفاده کنید

public void DoBackup(string sLogName)
{
string sBackup = sLogName; // masalan "App"
EventLog log = new EventLog();
log.Source = sBackup;

var query = from EventLogEntry entry in log.Entries
orderby entry.TimeGenerated descending
select entry;

string sBackupName = sBackup+"Log";
var xml = new XDocument(
new XElement(sBackupName,
from EventLogEntry entry in log.Entries
orderby entry.TimeGenerated descending
select new XElement("Log",
new XElement("Message", entry.Message),
new XElement("TimeGenerated", entry.TimeGenerated),
new XElement("Source", entry.Source),
new XElement("EntryType", entry.EntryType.ToString())
)
)
);

DateTime oggi = DateTime.Now;
string sToday = DateTime.Now.ToString("yyyyMMdd_hhmmss");
string path = String.Format("{0}_{1}.xml", sBackupName, sToday);
xml.Save(Path.Combine(Environment.CurrentDirectory , path));
}

اینجا هم یه اموزش در این مورد هست بیا یه سر بزن (http://www.linqitalia.com/script/65/Effettuare-Backup-Event-Viewer-LINQ-XML.aspx)