반응형
* VBNET API 이용한 제어판 기본 프린터 (Default Printer) 변경 하기 예제...
전체 소스 코드
Form1.vb
Imports System.Collections
Imports System.Drawing.Printing
Public Class Form1
'API
Declare Function SetDefaultPrinter Lib "winspool.drv" Alias "SetDefaultPrinterA" (ByVal pszPrinter As String) As Boolean
Private Sub button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button1.Click
'프린터 목록 콜렉션 배열에 담기...
Dim alList As System.Collections.ArrayList = New System.Collections.ArrayList(PrinterSettings.InstalledPrinters)
'정렬
alList.Sort()
'리스트뷰 아이템 초기화
listView1.Items.Clear()
Dim iCount As Integer
For iCount = 0 To alList.Count - 1 Step iCount + 1
'프린터 목록 리스트 보여주기...
Dim lvi As ListViewItem = New ListViewItem()
lvi.Text = (iCount + 1).ToString()
lvi.SubItems.Add(alList(iCount).ToString())
'리스트뷰 아이템에 추가...
listView1.Items.Add(lvi)
Next
End Sub
Private Sub listView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles listView1.SelectedIndexChanged
'Select Printer
lblSelectPrinter.Text = listView1.FocusedItem.SubItems(1).Text
End Sub
Private Sub button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles button2.Click
'Default Printer Set
If lblSelectPrinter.Text = "" Then Return
If SetDefaultPrinter(lblSelectPrinter.Text) Then
MessageBox.Show("Default Printer Set Success...", "확 인", MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
Else
MessageBox.Show("Default Printer Set Failed...", "확 인", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
End Sub
End Class
*예제 결과
위 그림은 기본 프린터 변경 전 모습으로 윈도우 시작 -> 제어판 -> 장치 및 프린터 로 가보게 되면 기본 프린터가 NesPDF 로 되어 있습니다.
해당 리스트뷰에서 기본 프린터로 지정될 항목을 클릭 한 뒤 Default Printer Set 버튼을 클릭 하여 아래의 그림과 같이
변경
https://kdsoft-zeros.tistory.com/167
https://kdsoft-zeros.tistory.com/170
반응형
'VB.NET Programming' 카테고리의 다른 글
[VBNET] DateTimeFormat - 전역 설정 (0) | 2020.03.26 |
---|---|
[VBNET] 설치된 닷넷프레임워크 버전 리스트 조회 (0) | 2020.03.24 |
[VBNET] [WMI] 실시간 메모리 사용량 체크 (Memory Check) - Progressbar (0) | 2020.03.18 |
[VBNET] 제어판 프린터(Printer) 목록 불러오기 (0) | 2020.03.16 |
[VBNET] [API] Mouse Cursor Move And AutoClick Event (0) | 2020.03.12 |