سؤال

وكيف يمكنني كتابة البيانات XML في سجل الأحداث ويندوز؟

ولقد لاحظت أن هناك طريقة لإدراج XML في سجل الأحداث ويندوز (وليس مجرد حشو في الوصف). والنتيجة هي أن تحصل فقط رسالة وصفك في عرض General على ويندوز فيستا. يمكنك ان ترى بيانات XML في طريقة العرض Details.

إذا حدد زر الاختيار Friendly، فإنه يظهر تحت عقدة Event Data. إذا قمت بتحديد عرض XML، فإنك تحصل على رؤية XML.

وأعتقد أن صفيف بايت rawData في طريقة EventLog.WriteEntry() ستسمح لي أن أفعل ذلك. حاولت حشو إخراج XMLWriter فيه. التي وضعت البيانات في سجل الأحداث، ولكن ينظر إليها على أنها ثنائي بدلا من XML.

هل كانت مفيدة؟

المحلول

وإذا لم أكن مخطئا، من أجل كتابة XML لهذا الحدث قرمزي / فيستا تسجيل الدخول سيكون لديك إنشاء وتسجيل واضح من شأنها أن تعطيك القنوات والأحداث المناسبة. ثم لديك لتجميع واضح استخدام في مترجم رسالة (mc.exe) في WindowsSDK .

وبعد ذلك إذا كنت تريد تسجيل من C # هل تريد أن إنشاء موفر المدارة إلى التفاف API تسجيل الأحداث. هذا هو أصعب قليلا لأنك سوف تضطر إلى استخدام PInvoke للحصول على API.

وهناك وظائف بلوق على كيفية القيام بذلك العملية برمتها هنا .

نصائح أخرى

لديك عينة في ويندوز SDK (النسخة 6.1) دعا EventProvider.
انها لC # مزود (يحتاج ويندوز فيستا وحتى العمل) يستخدم API سجل الأحداث الجديد (AKA قرمزي).
هذا المعرض عينة كيفية إضافة بيانات مخصصة (تصل أمور أخرى).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top