2015-07-28 48 views
0

winspool.drv庫中是否有64位版本的Function DeviceCapabilities?我正在尋找的是一個轉換: Private Declare Function DeviceCapabilities Lib「winspool.drv」_ 別名「DeviceCapabilitiesA」(ByVal lpDeviceName As String,_ ByVal lpPort As String,ByVal iIndex As Long,lpOutput As Any, _ ByVal dev As Long)As LongDeviceCapabilities數據庫的64位版本「winspool.drv」

很明顯我更改聲明函數來聲明PtrSafe函數,但Long變量中的哪一個改變,並且它們是否改變爲LongLong或LongPtr?奇怪的是,在過去一個小時的互聯網拖網還沒有提到這一點?

+0

最後一個參數改變了,它是一個指針。你不能使用它,總是通過0. –

+0

So ByVal dev As LongPtr並始終通過0 – user2916577

+0

下面的答案... – user2916577

回答

-1

我現在已經通過聲明如下使用上述函數:

私人聲明PTRSAFE功能DeviceCapabilities庫 「WINSPOOL.DRV」 _ 別名 「DeviceCapabilitiesA」(BYVAL lpDeviceName作爲字符串_ BYVAL lpPort作爲字符串, BYVAL iIndex長,lpOutput爲已任,_ BYVAL dev下龍)作爲 「上」 龍

對於工作的API代碼行 sCurrentPrinter =修剪$(左$(中的ActivePrinter,InStr函數(中的ActivePrinter功能) )) 需要更改爲 sCurrentPri nter = ActivePrinter