تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] ارجو مساعدتي بالاجابة عن سؤال
#1
   
السلام عليكم اخوتي
ارجو المساعدة
لدي طابعتين على كومبيوتري كل واحدة اطبع فيها على حدا . فعندما احتاج الطابعة الاولى اقوم
بالنقر عليها كلك ايمن واضغط set default printer كما موضح بالصورة A . وعندما احتاج الطباعة
على الطابعة الثانية افعل نفس الشيء للطابعة الثانية .
احتاج الى برنامج بسيط يتكون كما موضح من button عدد 2 كما موضح بالصورة B . فعند الضغط
على button الطابعة رقم 1 يقوم بجعل الطابعة الاولى هي الطابعة الdefault و عند الضغط
على button الطابعة رقم 2 يقوم بجعل الطابعة الثانية هي الطابعة الdefault

وجزاكم الله خيرا

http://im54.gulfup.com/myIFKB.jpg

http://im54.gulfup.com/ofrMU9.jpg
الرد }}}
تم الشكر بواسطة:
#2
اهلا اخي Smile
جرب هذا الكود , و ضع بدل كلمة Printer اسم الطابعة
كود :
Shell("RUNDLL32 PRINTUI.DLL,PrintUIEntry /y /n ""printer""")
مثلا :
كود :
Shell("RUNDLL32 PRINTUI.DLL,PrintUIEntry /y /n ""HP Deskjet F2100 series""")
و للامانة فان امر الـ CMD منقول .. Wink

تحياتي :")
الرد }}}
تم الشكر بواسطة:
#3
تفضل أخي Smile

كود :
'كود جلب أسماء كل الطابعات المثبتة على الجهاز
Public Sub LoadAllPrinters()
    For Each Name As String In Printing.PrinterSettings.InstalledPrinters
        ComboBox1.Items.Add(Name)
    Next

    Dim PrintDoc As New Printing.PrintDocument()
    ComboBox1.Text = PrintDoc.PrinterSettings.PrinterName
End Sub

'كود تعيين الطابعة الافتراضية
Public Function SetDefaultPrinter(ByVal Name As String) As Boolean
    Dim PrintDoc As New Printing.PrintDocument()
    Dim WshNetwork As Object = Nothing
    Dim OldPrinterName As String = String.Empty

    Try
        OldPrinterName = PrintDoc.PrinterSettings.PrinterName
        WshNetwork = Microsoft.VisualBasic.CreateObject("WScript.Network")
        WshNetwork.SetDefaultPrinter(Name)
        PrintDoc.PrinterSettings.PrinterName = Name

        If PrintDoc.PrinterSettings.IsValid Then
            Return True
        Else
            WshNetwork.SetDefaultPrinter(OldPrinterName)
            Return False
        End If

    Catch ex As Exception
        If WshNetwork IsNot Nothing Then
            WshNetwork.SetDefaultPrinter(OldPrinterName)
        End If

    Finally
        PrintDoc = Nothing
        WshNetwork = Nothing
    End Try

    Return False
End Function

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    LoadAllPrinters()
End Sub

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    If SetDefaultPrinter(ComboBox1.Text) Then
        MessageBox.Show(String.Format("الطابعة ""{0}"" أصبحت هي الطابعة الافتراضية", ComboBox1.Text),
                        "الطابعة", MessageBoxButtons.OK, MessageBoxIcon.Information,
                        MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading)
    End If
End Sub

المرجع: Setting Windows default printer
الرد }}}
تم الشكر بواسطة: سعود , احمد129 , a_almisery


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال عن الاسمبلي و النيم سبيس justforit 0 103 07-12-25, 12:28 AM
آخر رد: justforit
  فائدة بخصوص التعامل مع علامات التنصيص مع {سؤال} justforit 4 270 02-11-25, 11:19 PM
آخر رد: justforit
  [نقاش] سؤال MetoDas 2 1,489 20-04-25, 10:21 PM
آخر رد: Kamil
  [سؤال] سؤال ترددت قبل نشرة:طابعة الباركود لماذا تطبع أكثر من ليبل فارغ قبل السليم dr.programming 1 511 20-04-25, 09:26 PM
آخر رد: Kamil
  ارجو تعديل الكود بواستطة الاجراء المخزن new_programer 3 676 03-04-25, 02:44 PM
آخر رد: princelovelorn
  سؤال لو سمحتم احبتى فى الله خالد كامل1 4 807 09-02-25, 12:02 AM
آخر رد: princelovelorn
  ارجو تعديل الكود جلب البيانات عن طريق اجراء مخزن - مرفق مثال new_programer 0 620 05-02-25, 01:51 AM
آخر رد: new_programer
  سؤال واستفسار خالد كامل1 1 402 04-02-25, 09:31 PM
آخر رد: aliday03
  سؤال فى تقرير كريستال خالد كامل1 0 393 04-02-25, 05:50 AM
آخر رد: خالد كامل1
Question [VB.NET] هناك سؤال يهم كل مبرمج الماذا برنامجك يظهر على بعض الشاشات اكثر دقه بشكل مصغر ومشوه Microformt 0 448 01-02-25, 03:48 PM
آخر رد: Microformt

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم