تقييم الموضوع :
  • 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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال بخصوص الوقت philo 2 67 اليوم, 02:49 AM
آخر رد: philo
  سؤال بخصوص الداتا جريد فيو احمد خطاب 2 59 19-10-18, 12:42 PM
آخر رد: احمد خطاب
  [سؤال] ارجو المساعدة في تصحيح هذا الكود لزر الحفظ gharib 0 53 19-10-18, 12:39 PM
آخر رد: gharib
  سؤال فى التكست بوكس احمد خطاب 0 57 19-10-18, 09:29 AM
آخر رد: احمد خطاب
  سؤال :- فى كيغية ادراج بيانات فى الداتا جريد فيو احمد خطاب 1 91 18-10-18, 02:54 AM
آخر رد: EYADISMAIL
  سؤال فى الحفظ من الداتا جريد salah mansour 5 135 17-10-18, 06:31 AM
آخر رد: mero5000
  [سؤال] سؤال في vb.net و mysql في شبكة محلية بدون انترنت اللورد محمود 3 97 17-10-18, 04:31 AM
آخر رد: حريف برمجة
  سؤال مهم بالنسبة لي أرجوا الاجابة عليه nrkarat 1 64 16-10-18, 03:49 PM
آخر رد: DOX.1
  سؤال عن الاستعلام والبحث احمد خطاب 5 131 16-10-18, 02:20 AM
آخر رد: mero5000
  سؤال :- عن التيكست بوكس احمد خطاب 1 71 16-10-18, 12:43 AM
آخر رد: عبد العزيز البسكري

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


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