システムwiki

宣言を64ビットに変換します

Geoff_L 受付中 最終更新日:2021-05-11 01:34

おはようございます

誰かが助けてくれることができますか? OnAccess 201064bitを使用するには、次のDelareステートメント(Access 2007 32ビットで作成された)を調整する必要があります(これは32ビットに変更されませんでした-それを試してみました!).誰かが私が必要な新しいコードを与えたり、私が必要なものを説明することができますか
行う?お願いします...

機能shgetpathfromidlista lib "shell32.dll"(_
BYVAL PIDLは長く、_
byval pszbufferが文字列として)長い

Function Functions ShbrowseForFoldera lib "shell32.dll"(_
LPBROWSEINFO「BROWSEINFOとして)長い

どうもありがとう

geoff

返信リスト(回答:2)

1 #
DJSteel 1

試してみてください:

PtrSafe関数SHGetPathFromIDListALib "shell32.dll"(_
ByVal pidl As Long、_
ByVal pszBuffer As String)As Long

を宣言します.

PtrSafe関数SHBrowseForFolderALib "shell32.dll"(_
lpBrowseInfo As BrowserInfo)を宣言する

間の互換性を参照してください.32ビットおよび64ビットversionのOffice2010または詳細については、64ビットOfficeでのAPI関数の宣言をご覧ください.

2 #
HansVMV

お試しください

PtrSafe関数SHGetPathFromIDListALib "shell32.dll"(_
ByVal pidl As LongPtr、ByVal pszPath As String)AsBooleanを宣言します
PtrSafe関数SHBrowseForFolderALib "shell32.dll"(_
lpBrowseInfo As BROWSEINFO)As LongPtr

BrowseInfoタイプの宣言も変更する必要があります:

Type BROWSEINFO
hOwner As LongPtr
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As LongPtr
lParam As LongPtr
iImage As Long
End Type

https://www.jkp-adsを参照してください.com/articles/apideclarations.asp