Я не знаю о «наилучшей практике», но я бы очень хотел внести изменения с помощью кода в приемнике функций.
Со строкой, которая создает резервную копию файла для последующего восстановления.
Для ведения журнала мы использовали код Скотта Хиллиерса здесь , чтобы создать поставщика трассировки для входа в систему.
Работает угощение.
Я должен уточнить, что мы используем статическую оболочку только для чтения для поставщика трассировки
static readonly Log instance = new Log();
, который регистрируется с кодом
SPFarm farm = SPFarm.Local;
Guid traceGuid = farm.TraceSessionGuid;
unit result = NativeMethods.RegisterTraceGuids(ControlCallback, null, ref traceGuid, 0, IntPrt.Zero, null, null, out hTraceReg);
System.Diagnostics.Debug.Assert(result==NativeMethods.ERROR_SUCCESS, "TraceRegister result = " + result.ToString());
Г!
Затем он создается только один раз, и мы используем деструктор для его отмены.