質問するログイン新規登録

回答編集履歴

2

API が間違っていたのを修正

2019/12/07 07:35

投稿

atata0319
atata0319

スコア881

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  .NET Framework には仮想プリンタかどうかを識別する方法は用意されていません。
2
2
 
3
- Win32 API の GetDriverInfo で DRIVER_INFO_8 を指定して取得すると dwPrinterDriverAttributes メンバに PRINTER_DRIVER_CATEGORY_VIRTUAL が格納されるのでこれで判別します。
4
- [https://docs.microsoft.com/en-us/windows/win32/printdocs/driver-info-8](https://docs.microsoft.com/en-us/windows/win32/printdocs/driver-info-8)
3
+ Win32 API の [GetPrinterDriver](https://docs.microsoft.com/en-us/windows/win32/printdocs/getprinterdriver) で [DRIVER_INFO_8](https://docs.microsoft.com/en-us/windows/win32/printdocs/driver-info-8)
4
+ を指定して取得すると dwPrinterDriverAttributes メンバに PRINTER_DRIVER_CATEGORY_VIRTUAL が格納されるのでこれで判別します。
5
5
 
6
6
  この API より前の時代に作成された仮想プリンタドライバではおそらく効果がないと思います。そんな古い世代の仮想プリンタを今も使ってるとも思えないので問題ないとは思いますが。

1

URLをリンクに変更

2019/12/07 07:35

投稿

atata0319
atata0319

スコア881

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  .NET Framework には仮想プリンタかどうかを識別する方法は用意されていません。
2
2
 
3
3
  Win32 API の GetDriverInfo で DRIVER_INFO_8 を指定して取得すると dwPrinterDriverAttributes メンバに PRINTER_DRIVER_CATEGORY_VIRTUAL が格納されるのでこれで判別します。
4
- https://docs.microsoft.com/en-us/windows/win32/printdocs/driver-info-8
4
+ [https://docs.microsoft.com/en-us/windows/win32/printdocs/driver-info-8](https://docs.microsoft.com/en-us/windows/win32/printdocs/driver-info-8)
5
5
 
6
6
  この API より前の時代に作成された仮想プリンタドライバではおそらく効果がないと思います。そんな古い世代の仮想プリンタを今も使ってるとも思えないので問題ないとは思いますが。