الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية اخذ اسماء ال printer من عند المستخدم

مغلق
بدأه mohamedbdran في 12 فبراير 2007 · 11 رد · 988 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اريد ان اسال كيف بامكاني اخذ اسماءالprinter التي يستعمها الclient لكي يطبع عليها من خلال الasp.net او ال javascript

اريد اخذ اسماءprinter لكي اظهرها للمستخدم ويطبع من خلالها

استعملت Printing.PrinterSettings.InstalledPrinters

ولكنها تجلب ال printer الموجودة في السيرفر اريد طريقة اخرى

ولا اريد استعمال winrow.print() لاسباب معينة لا اود الاطالة عليكم

فارجو المساعدة لاني محتاجها بشكل ضروري

#2

الطريقة الوحيدة التي يستطيع عن طريقها الـASP.NET من التعامل مع طابعات المستخدم (أو أي من موارده الأخرى) هي عن طريق الجافا سكريبت أو أي أداة خارجية أخرى (ActiveX مثلاً) و لكن حسب ما أتذكر أن الجافا سكريبت لا يستطيع معرفة طابعات المستخدم.

#3

شكرا لك اخي على هذا الرد

الفكرة انه عندي تقرير على crystal report واريد طباعته مباشرة بدون فتح التقرير وعند الطباعة ان يختار المستخدم الطابعة لكي يطبع عليها

او يظهر له printer dialog فالمشكلة كيف

وشكرا لك

#4

لا توجد طريقة مباشرة (حسب ما أعرف) لفعل هذا عن طريق الـASP.NET. و هي أحد المشاكل المعروفة في التقارير في تطبيقات الويب بشكل عام. هناك نقاش على نفس هذا المنتدى حول هذا الموضوع و طرق الإلتفاف حول هذه المشكلة.

/index.php?showtopic=116248

تم تعديل هذه المشاركة بواسطة System Down في 12 فبراير 2007 في 13:44

#5
mohamedbdran كتب:
شكرا لك اخي على هذا الرد

الفكرة انه عندي تقرير على crystal report واريد طباعته مباشرة بدون فتح التقرير وعند الطباعة ان يختار المستخدم الطابعة لكي يطبع عليها

او يظهر له printer dialog فالمشكلة كيف

وشكرا لك

لا توجد طريقة لفعل ذلك أبدا، كل ما يمكنك عمله هو فتح نافذة الطباعة للمستخدم

logo.gif
استضافة ويندوز


اقتباس

مساحة تبدأ من 2000 ميجا بايت بسعر 1.99 دولار شهريا.ا

اقتباس

ASP.NET 1.1-2.0-3.0-3.5-4.0-4.5.1 / MVC ASP.NET / PHP 5.x / ColdFusion / MSSQL 2008 & 2012 / MYSQL

#6

جرب هذا الكود

في Page.Load

  If Not Page.IsPostBack Then
			Call PopulateInstalledPrintersCombo()

		End If

وهذي الدالة اللي عم نناديها

   Private Sub PopulateInstalledPrintersCombo()
		Dim pkInstalledPrinters As String
		For Each pkInstalledPrinters In PrinterSettings.InstalledPrinters
			DropDownList1.Items.Add(pkInstalledPrinters)
		Next
	End Sub

طبعا بدون شرح بس لا تنسى تعمل imports للملف System.Drawing.printing

تم تعديل هذه المشاركة بواسطة Scoool في 13 فبراير 2007 في 15:20

#7
Scoool كتب:
جرب هذا الكود

في Page.Load

  If Not Page.IsPostBack Then
			Call PopulateInstalledPrintersCombo()

		End If

وهذي الدالة اللي عم نناديها

   Private Sub PopulateInstalledPrintersCombo()
		Dim pkInstalledPrinters As String
		For Each pkInstalledPrinters In PrinterSettings.InstalledPrinters
			DropDownList1.Items.Add(pkInstalledPrinters)
		Next
	End Sub

طبعا بدون شرح بس لا تنسى تعمل imports للملف System.Drawing.printing

هذا الكود شو راح يعمل بالضبط في ال ASP.NET ؟

logo.gif
استضافة ويندوز


اقتباس

مساحة تبدأ من 2000 ميجا بايت بسعر 1.99 دولار شهريا.ا

اقتباس

ASP.NET 1.1-2.0-3.0-3.5-4.0-4.5.1 / MVC ASP.NET / PHP 5.x / ColdFusion / MSSQL 2008 & 2012 / MYSQL

#8

عجيب أمرك .. :blink:

سؤالك كان :

اقتباس
اريد ان اسال كيف بامكاني اخذ اسماءالprinter التي يستعمها الclient لكي يطبع عليها من خلال الasp.net او ال javascript

اريد اخذ اسماءprinter لكي اظهرها للمستخدم ويطبع من خلالها

استعملت Printing.PrinterSettings.InstalledPrinters

طيب الكود هذا راح يعمل لك اللي تريده بدون الرجوع الى Javascript ولا حاجه

بس جرب انسخ الكود مع اضافة DropDownList الى الصفحة

وأدعي لي

#9

و لكن هذا الكود سيعرض الطابعات الموصولة في السيرفر و ليس في الكلاينت و هو طلب الأخ smiling4ever.

#10
System Down كتب:
و لكن هذا الكود سيعرض الطابعات الموصولة في السيرفر و ليس في الكلاينت و هو طلب الأخ smiling4ever.

في الحقيقة هذا مو طلبي، وإنما طلب محمد بدران،

ما أحببت التعليق عليه هو أن الكود الذي كتب أعلاه سوف يعرض طابعات المخدم وليس طابعات ال Client، بالإضافة إلى أنه سوف يعود بـ Security Exception على المخدم أيضا بسبب البيئة التي يعمل فيها ال ASP.NET في مهدمات أجهزة الإستضافة.

logo.gif
استضافة ويندوز


اقتباس

مساحة تبدأ من 2000 ميجا بايت بسعر 1.99 دولار شهريا.ا

اقتباس

ASP.NET 1.1-2.0-3.0-3.5-4.0-4.5.1 / MVC ASP.NET / PHP 5.x / ColdFusion / MSSQL 2008 & 2012 / MYSQL

#11
smiling4ever كتب:
في الحقيقة هذا مو طلبي، وإنما طلب محمد بدران،

Copy paste error :lol:

#12
System Down كتب:
Copy paste error :lol:

No problem :lol:

logo.gif
استضافة ويندوز


اقتباس

مساحة تبدأ من 2000 ميجا بايت بسعر 1.99 دولار شهريا.ا

اقتباس

ASP.NET 1.1-2.0-3.0-3.5-4.0-4.5.1 / MVC ASP.NET / PHP 5.x / ColdFusion / MSSQL 2008 & 2012 / MYSQL

هذا الموضوع مغلق.

مواضيع مشابهة