ڈاٹ فسکیٹر میں سسٹم.XML نام کی جگہ میں کلاسیں استعمال کرنے والی اسمبلیوں کو ختم کرنے سے بچیں جو غلطیوں کا سبب بنیں گی۔

جب صفحے کی تازہ کاری :
صفحہ تخلیق تاریخ :

علامات کی جانچ پڑتال

ایک نیا پروجیکٹ بنائیں۔ یہ ونڈوز فارم یا ڈبلیو پی ایف ہو سکتا ہے، لیکن یہاں ہم ڈبلیو پی ایف ایپلی کیشن بنا رہے ہیں۔

ان کلاسوں کو استعمال کرنے کے لیے کوڈ لکھیں جو سسٹم.ایکس ایم ایل نیم اسپیس سے تعلق رکھتی ہیں۔ یہاں ہم "ایکس ایم ایل دستاویز" اور "ایکس ایم ایل نوڈ" کی کلاسیں درج ذیل استعمال کرتے ہیں۔

using System.Windows;
using System.Xml;

namespace DotfuscatorTest
{
  /// <summary>MainWindow.xaml の相互作用ロジック</;summary>
  public partial class MainWindow : Window
  {
    public MainWindow()
    {
      InitializeComponent();

      XmlDocument doc = new XmlDocument();
      doc.LoadXml("<a></a>");
      XmlNode node = doc.FirstChild;
    }
  }
}

System.Xml 名前空間のクラスを使用したコード

تعمیر کرنے کے بعد مینیو میں موجود ٹولز میں سے "پری ایمپمینٹیڈو ڈاٹفسکیٹر اینڈ اینالیٹکس" منتخب کریں اور اسے لانچ کریں۔

PreEmptive Dotfuscator and Analytics を起動

آپ کی بنائی ہوئی .exe مسل شامل کریں اور اسے بنائیں۔

.exe ファイルを追加

پھر، درج ذیل نقص پیغام ظاہر ہوتا ہے اور تعمیر ناکام ہو جاتی ہے۔

یہ ایک منتظم ماڈیول نہیں ہے (ج:\پروگرام مسلیں (٪86)\حوالہ اسمبلیاں\Mmtmt\فریم ورک\سلورلائٹ\وی4.0\پروفائل\ونڈوز فون71\جا\نظام.ایکس ایم ایل.dll). نقص بنائیں۔

ビルドエラー

میں نے یہ جاننے کی کوشش کی کہ اس غلطی کی وجہ کیا ہے، لیکن مجھے اس کا واضح جواب نہیں مل سکا۔ اس بات کو مدنظر رکھتے ہوئے کہ انگریزی سائٹ پر کوئی معلومات نہیں ہیں اور سسٹم.ایکس ایم ایل.dll راستے میں "این" ہے، آپ اندازہ لگا سکتے ہیں کہ یہ انگریزی ماحول کے علاوہ ایک منفرد غلطی ہے۔

ورک اراؤنڈڈسمنٹ

اگرچہ یہ پروجیکٹ ونڈوز کلائنٹ سسٹم.ایکس ایم ایل .dll کا حوالہ دیتا ہے، جب آپ ڈاٹفسکیٹر کے ساتھ تعمیر کرتے ہیں، یہ ونڈوز فون سسٹم ڈاٹ ایکس ایم ایل میں اسمبلی کا حوالہ دیتا ہے.dll لہذا ہم نے مقامی طور پر زبردستی سسٹم.ایکس ایم ایل نقل کیا.dll میں اس کا حوالہ دے کر غلطیوں کی تعمیر سے بچنا چاہوں گا۔

پروجیکٹ کے حوالہ جات کھولیں، دائیں کلک نظام.ایکس ملی لیٹر، اور خواص کا انتخاب کریں۔

プロパティを選択

مقامی نقل میں شے کو صحیح میں تبدیل کریں۔

ローカル コピーの項目を True に変更

جب آپ اس حالت میں تعمیر کرتے ہیں، "سسٹم.ایکس ایم ایل.dll" .exe فائل کے ساتھ مل کر آؤٹ پٹ ہوتا ہے۔

System.Xml.dll が出力される

ڈاٹفسکیٹر کھولیں اور اسمبلی کے ساتھ "سسٹم.ایکس ایم ایل.dll" شامل کریں جو آپ ختم کرنا چاہتے ہیں۔ یہ اسمبلی کو اس لئے روکتا ہے تاکہ یہ نصب فریم ورک کے ڈی ایل ایل کا حوالہ نہ دے اور مقامی ڈی ایل ایل کو دیکھے۔

نوٹ کریں کہ سسٹم.ایکس ایم ایل.dll پراپرٹی لائبریری موڈ چیک کرتا ہے۔ اس چیک کے بغیر سسٹم.ایکس ایم ایل.dll کو بھی ختم کیا جاسکتا ہے، اور اس کے حوالہ جات والے طبقاتی نام تبدیل ہو سکتے ہیں۔ یقینا، اگر کلاس کا نام تبدیل ہو جاتا ہے، تو آپ عام طور پر ایپلی کیشن شروع نہیں کر سکیں گے۔

System.Xml.dll を追加

اگر آپ اس ریاست میں تعمیر کریں گے تو یہ کامیابی سے مکمل ہوگا۔

ビルド成功

آپ یقین کر سکتے ہیں کہ اوبفسکیٹڈ ایپلی کیشن بغیر کسی پریشانی کے خود ہی لانچ ہوتی ہے۔

アプリケーションを起動

یہاں پیش کیا گیا مواد کسی حد تک مشکل طریقے سے ایک کام ہے، لہذا ہم اس بات کی ضمانت نہیں دے سکتے کہ یہ ان اسمبلیوں کے لئے بھی موثر ہوگا جو اس کے مطابق تعمیر کی گئی ہیں۔ یہاں تک کہ اگر تعمیر کامیاب ہے اور شروع کیا جا سکتا ہے, اس امکان سے انکار نہیں ہے کہ یہ ایک مخصوص عمل انجام دیتے وقت گر جائے گا, تو براہ مہربانی رہائی سے پہلے آپریشن کو ٹھیک سے چیک کریں.

یہاں تک کہ اگر یہ سسٹم.ایکس ایم ایل نیم اسپیس تک محدود نہیں ہے، اوبفسکیشن ایک حساس خصوصیت ہے جسے آپ کو اس بات کو یقینی بنانے کی ضرورت ہے کہ مستقل مزاجی برقرار رہے۔ خاص طور پر، عکاسی کا استعمال کرتے وقت، میں/او سے متعلق چیزیں جیسے فائل آئی/او اور بیرونی اے پی آئی کے ساتھ تعامل متاثر ہونے کا امکان ہے، لہذا محتاط رہیں۔