شراب 7.0 کی مستحکم ریلیز

ایک سال کی ترقی اور 30 ​​تجرباتی ورژن کے بعد، Win32 API کے کھلے نفاذ کی ایک مستحکم ریلیز پیش کی گئی - Wine 7.0، جس میں 9100 سے زیادہ تبدیلیاں شامل تھیں۔ نئے ورژن کی اہم کامیابیوں میں زیادہ تر وائن ماڈیولز کا PE فارمیٹ میں ترجمہ، تھیمز کے لیے سپورٹ، HID انٹرفیس کے ساتھ جوائس اسٹک اور ان پٹ ڈیوائسز کے لیے اسٹیک کی توسیع، اور 64 بٹ پروگراموں کو چلانے کے لیے WoW32 فن تعمیر کا نفاذ شامل ہے۔ 64 بٹ ماحول۔

وائن نے ونڈوز کے لیے 5156 (ایک سال پہلے 5049) پروگراموں کے مکمل آپریشن کی تصدیق کی ہے، ایک اور 4312 (ایک سال پہلے 4227) پروگرامز اضافی ترتیبات اور بیرونی DLLs کے ساتھ بالکل کام کرتے ہیں۔ 3813 پروگراموں (3703 سال پہلے) میں معمولی آپریشنل مسائل ہیں جو ایپلی کیشنز کے اہم افعال کے استعمال میں مداخلت نہیں کرتے ہیں۔

وائن 7.0 میں اہم اختراعات:

  • PE فارمیٹ میں ماڈیولز
    • تقریباً تمام DLLs کو ELF کے بجائے PE (پورٹ ایبل ایگزیکیوٹیبل، ونڈوز پر استعمال کیا جاتا ہے) ایگزیکیوٹیبل فائل فارمیٹ استعمال کرنے کے لیے تبدیل کر دیا گیا ہے۔ PE کا استعمال مختلف کاپی پروٹیکشن اسکیموں کی مدد کے ساتھ مسائل کو حل کرتا ہے جو ڈسک اور میموری میں سسٹم ماڈیولز کی شناخت کی تصدیق کرتے ہیں۔
    • معیاری NT کرنل سسٹم کال کا استعمال کرتے ہوئے PE ماڈیولز کو Unix لائبریریوں کے ساتھ بات چیت کرنے کی صلاحیت کو نافذ کیا گیا ہے، جو آپ کو ونڈوز ڈیبگرز سے یونکس کوڈ تک رسائی کو چھپانے اور تھریڈ رجسٹریشن کی نگرانی کرنے کی اجازت دیتا ہے۔
    • بلٹ ان DLLs اب صرف اس صورت میں لوڈ کیے جاتے ہیں جب ڈسک پر متعلقہ PE فائل موجود ہو، قطع نظر اس کے کہ یہ ایک حقیقی لائبریری ہے یا اسٹب۔ یہ تبدیلی ایپلیکیشن کو ہمیشہ PE فائلوں کے لیے صحیح بائنڈنگ دیکھنے کی اجازت دیتی ہے۔ اس رویے کو غیر فعال کرنے کے لیے، آپ WINEBOOTSTRAPMODE ماحولیاتی متغیر استعمال کر سکتے ہیں۔
  • واہ 64
    • WoW64 فن تعمیر (64-bit Windows-on-Windows) کو لاگو کیا گیا ہے، جس سے آپ 32-bit Unix کے عمل میں 64-bit Windows ایپلی کیشنز چلا سکتے ہیں۔ سپورٹ کو ایک پرت کے کنکشن کے ذریعے لاگو کیا جاتا ہے جو 32-بٹ NT سسٹم کالز کو NTDLL میں 64-بٹ کالز میں ترجمہ کرتی ہے۔
    • WoW64 پرتیں زیادہ تر Unix لائبریریوں کے لیے تیار کی جاتی ہیں اور 32-bit PE ماڈیولز کو 64-bit Unix لائبریریوں تک رسائی کی اجازت دیتی ہیں۔ تمام ماڈیولز پی ای فارمیٹ میں تبدیل ہو جانے کے بعد، 32 بٹ یونکس لائبریریوں کو انسٹال کیے بغیر 32 بٹ ونڈوز ایپلی کیشنز کو چلانا ممکن ہو جائے گا۔
  • موضوعات
    • تھیم سپورٹ نافذ کر دی گئی ہے۔ ڈیزائن تھیمز "لائٹ"، "بلیو" اور "کلاسک بلیو" شامل ہیں، جنہیں WineCfg کنفیگریٹر کے ذریعے منتخب کیا جا سکتا ہے۔
    • تھیمز کے ذریعے تمام انٹرفیس کنٹرولز کی ظاہری شکل کو اپنی مرضی کے مطابق بنانے کی صلاحیت شامل کی گئی۔ ڈیزائن تھیم کو تبدیل کرنے کے بعد عناصر کی ظاہری شکل خود بخود اپ ڈیٹ ہوجاتی ہے۔
    • تمام بلٹ ان وائن ایپلی کیشنز میں تھیم سپورٹ شامل کر دی گئی ہے۔ ایپلی کیشنز کو ہائی پکسل ڈینسٹی (ہائی ڈی پی آئی) والی اسکرینوں کے لیے ڈھال لیا گیا ہے۔
  • گرافکس سب سسٹم
    • ایک نئی Win32u لائبریری شامل کی گئی ہے، جس میں GDI32 اور USER32 لائبریریوں کے حصے شامل ہیں جو کرنل کی سطح پر گرافکس پروسیسنگ اور ونڈو مینجمنٹ سے متعلق ہیں۔ مستقبل میں، ڈرائیور کے اجزاء جیسے winex32.drv اور winemac.drv کو Win11u پر پورٹ کرنے پر کام شروع ہو جائے گا۔
    • ولکن ڈرائیور ولکن گرافکس API تفصیلات 1.2.201 کو سپورٹ کرتا ہے۔
    • Direct2D API کے ذریعے ہیچڈ جیومیٹرک آبجیکٹ کو آؤٹ پٹ کرنے کے لیے مدد فراہم کی گئی، یہ جانچنے کی صلاحیت کے ساتھ کہ آیا کلک ہٹ (ہٹ ٹیسٹ) ہوتا ہے۔
    • Direct2D API ID2D1Effect انٹرفیس کا استعمال کرتے ہوئے لاگو بصری اثرات کے لیے ابتدائی مدد فراہم کرتا ہے۔
    • Direct2D API نے ID2D1MultiThread انٹرفیس کے لیے تعاون شامل کیا ہے، جو کثیر تھریڈ ایپلی کیشنز میں وسائل تک خصوصی رسائی کو منظم کرنے کے لیے استعمال ہوتا ہے۔
    • لائبریریوں کا WindowsCodecs سیٹ WMP (Windows Media Photo) فارمیٹ میں تصاویر کو ڈی کوڈنگ اور DDS (DirectDraw Surface) فارمیٹ میں تصاویر کو انکوڈنگ کرنے کے لیے معاونت فراہم کرتا ہے۔ اب ہم ICNS فارمیٹ (macOS کے لیے) میں انکوڈنگ امیجز کو سپورٹ نہیں کرتے ہیں، جو کہ ونڈوز پر تعاون یافتہ نہیں ہے۔
  • Direct3D
    • نئے رینڈرنگ انجن کو نمایاں طور پر بہتر کیا گیا ہے، ڈائریکٹ 3D کالز کو Vulkan گرافکس API میں ترجمہ کر رہا ہے۔ زیادہ تر حالات میں، ولکن پر مبنی انجن میں Direct3D 10 اور 11 کے لیے سپورٹ کی سطح کو پرانے OpenGL پر مبنی انجن کے برابر لایا گیا ہے۔ ولکن رینڈرنگ انجن کو فعال کرنے کے لیے، Direct3D رجسٹری متغیر "renderer" کو "vulkan" پر سیٹ کریں۔
    • ڈائریکٹ 3 ڈی اور 10 کی بہت سی خصوصیات پر عمل درآمد کیا گیا ہے ، بشمول موخر سیاق و سباق ، آلے کے سیاق و سباق میں کام کرنے والی ریاستی اشیاء ، بفروں میں مستقل آفسیٹ ، آرڈر سے باہر کی ساخت کے نظارے کو صاف کرنا ، ٹائپ لیس فارمیٹس میں وسائل کے مابین ڈیٹا کاپی کرنا (dxgi_format_bc11_typeless) .
    • ملٹی مانیٹر کنفیگریشنز کے لیے سپورٹ شامل کیا گیا، جس سے آپ کو فل سکرین موڈ میں ڈائریکٹ 3 ڈی ایپلیکیشن ڈسپلے کرنے کے لیے مانیٹر کا انتخاب کرنے کی اجازت ملتی ہے۔
    • DXGI API اسکرین گاما اصلاح کو لاگو کرتا ہے، جسے Direct3D 10 اور 11 پر مبنی ایپلی کیشنز کے ذریعے اسکرین کی چمک کو تبدیل کرنے کے لیے استعمال کیا جا سکتا ہے۔ ورچوئل فریم بفر کاؤنٹرز (SwapChain) کی بازیافت کو فعال کیا گیا۔
    • Direct3D 12 ورژن 1.1 روٹ دستخطوں کے لیے تعاون کا اضافہ کرتا ہے۔
    • Vulkan API کے ذریعے رینڈرنگ کوڈ میں، جب سسٹم VK_EXT_host_query_reset ایکسٹینشن کو سپورٹ کرتا ہے تو استفسار کی پروسیسنگ کی کارکردگی کو بہتر بنایا گیا ہے۔
    • GDI کے ذریعے ورچوئل فریم بفرز (SwapChain) کو آؤٹ پٹ کرنے کی اہلیت کو شامل کیا گیا اگر اوپن جی ایل یا ولکن کو ڈسپلے کے لیے استعمال نہیں کیا جا سکتا، مثال کے طور پر، CEF (کرومیم ایمبیڈڈ فریم ورک) فریم ورک پر مبنی پروگراموں میں، مختلف پروسیسز سے ونڈو میں آؤٹ پٹ کرتے وقت۔
    • جی ایل ایس ایل شیڈر بیک اینڈ کا استعمال کرتے وقت، شیڈر ہدایات کے لیے "پریسائز" موڈیفائر کو یقینی بنایا جاتا ہے۔
    • DirectDraw API سافٹ ویئر ڈیوائسز جیسے کہ "RGB"، "MMX" اور "Ramp" کا استعمال کرتے ہوئے سسٹم میموری میں 3D رینڈرنگ کے لیے سپورٹ شامل کرتا ہے۔
    • AMD Radeon RX 3M، AMD Radeon RX 5500/6800 XT/6800 XT، AMD Van Gogh، Intel UHD گرافکس 6900 اور NVIDIA GT 630 کارڈز کو Direct1030D گرافکس کارڈ ڈیٹا بیس میں شامل کر دیا گیا ہے۔
    • "UseGLSL" کلید کو HKEY_CURRENT_USER\Software\Wine\Direct3D رجسٹری سے ہٹا دیا گیا ہے، اس کے بجائے، Wine 5.0 سے شروع کرتے ہوئے، آپ کو "shader_backend" استعمال کرنے کی ضرورت ہے۔
    • Direct3D 12 کو سپورٹ کرنے کے لیے، اب آپ کو vkd3d لائبریری کے کم از کم ورژن 1.2 کی ضرورت ہے۔
  • D3DX
    • D3DX 10 کے نفاذ نے بصری اثرات کے فریم ورک کے لیے سپورٹ کو بہتر کیا ہے اور ونڈوز میڈیا فوٹو امیج فارمیٹ (JPEG XR) کے لیے سپورٹ شامل کیا ہے۔
    • D3DX10 میں فراہم کردہ ساخت کی تخلیق کے افعال شامل کیے گئے، جیسے D3DX10CreateTextureFromMemory()۔
    • ID3DX10Sprite اور ID3DX10Font سافٹ ویئر انٹرفیس کو جزوی طور پر نافذ کر دیا گیا ہے۔
  • آواز اور ویڈیو
    • DirectShow اور میڈیا فاؤنڈیشن کے فریم ورک کے لیے GStreamer add-ons کو ایک مشترکہ WineGStreamer بیک اینڈ میں جوڑا گیا ہے، جس سے نئے مواد کو ڈیکوڈنگ APIs کی ترقی کو آسان بنانا چاہیے۔
    • WineGStreamer بیک اینڈ کی بنیاد پر، ونڈوز میڈیا آبجیکٹ کو ہم وقت ساز اور غیر مطابقت پذیر پڑھنے کے لیے لاگو کیا جاتا ہے۔
    • میڈیا فاؤنڈیشن فریم ورک کے نفاذ کو مزید بہتر کیا گیا ہے، IMFPMediaPlayer کی فعالیت کے لیے سپورٹ اور سیمپل ایلوکیٹر کو شامل کیا گیا ہے، اور EVR اور SAR رینڈرنگ بفرز کے لیے سپورٹ کو بہتر بنایا گیا ہے۔
    • wineqtdecoder لائبریری، جو QuickTime فارمیٹ کے لیے ایک ڈیکوڈر فراہم کرتی ہے، ہٹا دی گئی ہے (تمام کوڈیکس اب GStreamer استعمال کرتے ہیں)۔
  • ان پٹ ڈیوائسز۔
    • HID (ہیومن انٹرفیس ڈیوائسز) پروٹوکول کو سپورٹ کرنے والے ان پٹ ڈیوائسز کے اسٹیک کو نمایاں طور پر بہتر کیا گیا ہے، جو HID ڈسکرپٹرز کو پارس کرنے، HID پیغامات پر کارروائی کرنے، اور منی HID ڈرائیور فراہم کرنے جیسی صلاحیتیں فراہم کرتا ہے۔
    • winebus.sys ڈرائیور کے پس منظر میں، HID پیغامات میں ڈیوائس کی تفصیل کا ترجمہ بہتر کیا گیا ہے۔
    • HID پروٹوکول کو سپورٹ کرنے والے joysticks کے لیے ایک نیا DirectInput بیک اینڈ شامل کیا گیا۔ جوائس اسٹک میں تاثرات کے اثرات کو استعمال کرنے کی صلاحیت کو نافذ کیا گیا ہے۔ بہتر جوائس اسٹک کنٹرول پینل۔ XInput ہم آہنگ آلات کے ساتھ بہتر تعامل۔ WinMM میں، جوائس اسٹک سپورٹ کو لینکس پر evdev بیک اینڈ استعمال کرنے کے بجائے DINput میں اور IOHID کو macOS IOHID پر منتقل کر دیا گیا ہے۔ پرانے جوائس اسٹک ڈرائیور winejoystick.drv کو ہٹا دیا گیا ہے۔
    • ورچوئل ایچ آئی ڈی ڈیوائسز کے استعمال کی بنیاد پر اور کسی فزیکل ڈیوائس کی ضرورت نہ ہونے پر ڈی ان پٹ ماڈیول میں نئے ٹیسٹ شامل کیے گئے ہیں۔
  • متن اور فونٹس
    • ڈائریکٹ رائٹ میں فونٹ سیٹ آبجیکٹ کو شامل کیا گیا۔
    • RichEdit درست طریقے سے ٹیکسٹ ہوسٹ انٹرفیس کو لاگو کرتا ہے۔
  • کرنل (ونڈوز کرنل انٹرفیس)
    • وائن میں ایک نامعلوم ایگزیکیوٹیبل فائل (جیسے 'wine foo.msi') چلاتے وقت، start.exe کو اب کہا جاتا ہے، جو فائل کی قسم سے وابستہ ہینڈلرز کو طلب کرتا ہے۔
    • مطابقت پذیری میکانزم NtAlertThreadByThreadId اور NtWaitForAlertByThreadId، لینکس میں futexes کی طرح کے لیے تعاون شامل کیا گیا۔
    • کرنل فنکشنز کو ڈیبگ کرنے کے لیے استعمال ہونے والے NT ڈیبگ آبجیکٹ کے لیے سپورٹ شامل کی گئی۔
    • کارکردگی کے ڈیٹا کو بچانے کے لیے متحرک رجسٹری کیز کے لیے تعاون شامل کیا گیا۔
  • C رن ٹائم
    • C رن ٹائم ریاضی کے افعال کا ایک مکمل سیٹ لاگو کرتا ہے، جو بنیادی طور پر Musl لائبریری سے لے جایا جاتا ہے۔
    • تمام CPU پلیٹ فارم فلوٹنگ پوائنٹ فنکشنز کے لیے درست مدد فراہم کرتے ہیں۔
  • نیٹ ورکنگ کی خصوصیات
    • انٹرنیٹ ایکسپلورر 11 (IE11) کے لیے بہتر کمپیٹیبلٹی موڈ، جو اب HTML دستاویزات پر کارروائی کے لیے بطور ڈیفالٹ استعمال ہوتا ہے۔
    • mshtml لائبریری ES6 JavaScript موڈ (ECMAScript 2015) کو نافذ کرتی ہے، جو لیٹ ایکسپریشن اور میپ آبجیکٹ جیسی خصوصیات کے لیے معاونت فراہم کرتی ہے۔
    • وائن ورکنگ ڈائرکٹری میں گیکو انجن میں اضافے کے ساتھ MSI پیکجوں کی تنصیب اب ضرورت پڑنے پر کی جاتی ہے، نہ کہ وائن اپ ڈیٹ کے دوران۔
    • DTLS پروٹوکول کے لیے سپورٹ شامل کر دی گئی۔
    • NSI (نیٹ ورک سٹور انٹرفیس) سروس کو لاگو کیا گیا ہے، کمپیوٹر پر روٹنگ اور نیٹ ورک انٹرفیس کے بارے میں معلومات کو دیگر خدمات میں محفوظ اور منتقل کرتا ہے۔
    • WinSock API ہینڈلرز جیسے setsockopt اور getsockopt کو NTDLL اور afd.sys ڈرائیور میں منتقل کر دیا گیا ہے تاکہ ونڈوز فن تعمیر کے مطابق ہو۔
    • وائن کی اپنی نیٹ ورک ڈیٹا بیس فائلیں، جیسے /etc/protocols اور /etc/networks، اب وائن ورکنگ ڈائرکٹری میں اسی طرح کے یونکس ڈیٹا بیس تک رسائی کے بجائے انسٹال کی گئی ہیں۔
  • متبادل پلیٹ فارمز
    • M1 ARM چپس (Apple Silicon) پر مبنی ایپل آلات کے لیے سپورٹ شامل کی گئی۔
    • macOS پر BCrypt اور Secur32 خصوصیات کے لیے سپورٹ کے لیے اب GnuTLS لائبریری کی تنصیب کی ضرورت ہے۔
    • اے آر ایم پلیٹ فارمز کے لیے 32 بٹ ایگزیکیوٹیبل اب تھمب-2 موڈ میں بنائے گئے ہیں، ونڈوز کی طرح۔ ایسی فائلوں کو لوڈ کرنے کے لیے ایک پری لوڈر استعمال کیا جاتا ہے۔
    • 32-bit ARM پلیٹ فارمز کے لیے، غیر منقطع استثنیات کے لیے سپورٹ نافذ کر دیا گیا ہے۔
    • FreeBSD کے لیے، کم سطح کے نظام کی معلومات، جیسے کہ میموری کی حیثیت اور بیٹری چارج لیول، کے لیے معاون سوالات کی تعداد کو بڑھا دیا گیا ہے۔
  • بلٹ ان ایپلی کیشنز اور ڈویلپمنٹ ٹولز
    • reg.exe یوٹیلیٹی نے 32- اور 64-bit رجسٹری ویوز کے لیے تعاون شامل کیا ہے۔ رجسٹری کیز کو کاپی کرنے کے لیے مدد شامل کی گئی۔
    • وائن ڈمپ یوٹیلیٹی نے ونڈوز میٹا ڈیٹا کو ڈمپ کرنے اور کوڈ ویو اندراجات کے بارے میں تفصیلی معلومات ظاہر کرنے کے لیے تعاون شامل کیا ہے۔
    • وائن ڈیبگر (وائنڈ بی جی) 32 بٹ ڈیبگر سے 64 بٹ پروسیس کو ڈیبگ کرنے کی صلاحیت فراہم کرتا ہے۔
    • PE فائلوں میں بنی لائبریریوں کو لوڈ کرنے کی اہلیت کو IDL کمپائلر (widl) میں شامل کر دیا گیا ہے، WinRT- مخصوص صفات اور تعمیرات کے لیے تعاون فراہم کیا گیا ہے، اور پلیٹ فارم کے لیے مخصوص لائبریری کی تلاش کو لاگو کیا گیا ہے۔
  • اسمبلی کا نظام
    • فن تعمیر سے متعلق مخصوص ڈائریکٹریوں میں، لائبریریوں کو اب ناموں کے ساتھ محفوظ کیا جاتا ہے جو فن تعمیر اور قابل عمل قسم کی عکاسی کرتے ہیں، مثال کے طور پر، PE فارمیٹ کے لیے 'i386-windows' اور یونکس لائبریریوں کے لیے 'x86_64-unix'، جس میں مختلف فن تعمیرات کے لیے سپورٹ کی اجازت دی جاتی ہے۔ سنگل وائن کی تنصیب اور Winelib کی کراس تالیف فراہم کرتے ہیں۔
    • PE فائلوں کے ہیڈرز میں ایک آپشن سیٹ کرنے کے لیے جو مقامی DLLs کے استعمال میں منتقلی کو کنٹرول کرتا ہے، '-prefer-native option' فلیگ کو winebuild میں شامل کر دیا گیا ہے (DllMain میں DLL_WINE_PREATTACH پروسیسنگ روک دی گئی ہے)۔
    • Dwarf ڈیبگ ڈیٹا فارمیٹ کے ورژن 4 کے لیے سپورٹ شامل کیا گیا، جو اب وائن لائبریریوں کی تعمیر کے وقت بطور ڈیفالٹ استعمال ہوتا ہے۔
    • قابل عمل فائلوں میں منفرد تعمیراتی شناخت کنندگان کو محفوظ کرنے کے لیے تعمیر کا اختیار '—enable-build-id' شامل کیا گیا۔
    • ایم ایس وی سی کمپیٹیبلٹی موڈ میں کلینگ کمپائلر استعمال کرنے کے لیے معاونت شامل کی گئی۔
  • Miscellanea
    • یوزر شیل (ونڈوز شیل) میں مخصوص ڈائریکٹریز کے نام ونڈوز وسٹا سے شروع ہونے والی اسکیم کو دیے جاتے ہیں، یعنی 'My Documents' کے بجائے، اب 'دستاویزات' ڈائرکٹری بنائی گئی ہے، اور زیادہ تر ڈیٹا 'AppData' ڈائرکٹری میں محفوظ کیا جاتا ہے۔
    • اوپن سی ایل لائبریری پرت میں اوپن سی ایل 1.2 تفصیلات کے لیے سپورٹ شامل کر دی گئی ہے۔
    • WinSpool ڈرائیور نے پرنٹ کرتے وقت مختلف صفحہ سائز کے لیے تعاون شامل کیا ہے۔
    • ODBC ڈرائیوروں کے لیے Microsoft OLE DB فراہم کنندہ MSDASQL کے لیے ابتدائی مدد شامل کی گئی۔
    • .NET پلیٹ فارم کے نفاذ کے ساتھ وائن مونو انجن کو 7.0.0 جاری کرنے کے لیے اپ ڈیٹ کر دیا گیا ہے۔
    • یونیکوڈ ڈیٹا کو یونیکوڈ 14 تفصیلات میں اپ ڈیٹ کر دیا گیا ہے۔
    • سورس ٹری میں Faudio, GSM, LCMS2, LibJPEG, LibJXR, LibMPG123, LibPng, LibTiff, LibXml2, LibXslt اور Zlib لائبریریاں شامل ہیں، جو PE فارمیٹ میں مرتب کی گئی ہیں اور یونکس فارمیٹ میں ورژن کی ضرورت نہیں ہے۔ ایک ہی وقت میں، ان لائبریریوں کو بلٹ ان پی ای آپشنز کے بجائے بیرونی اسمبلیوں کو استعمال کرنے کے لیے سسٹم سے درآمد بھی کیا جا سکتا ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں