VB/VBAͨÓ÷¾¶Ñ¡Ôñ¶Ô»°¿ò
Option Explicit
Private Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pDisplayName As String
lpTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
Private Declare Function SHGetPathfromIDList Lib "shell32.dll" Alias _
"SHGetPathfromIDListA" (ByVal pidl As Long, _
ByVal pPath As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32.dll" Alias _
"SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) _
As Long
Private Const BIF_RETURNONLYFSDIRS = &H1
' *******************************************************************
' º¯ÊýÃû: BrowseFolder
' ¹¦ÄÜ: ä¯ÀÀ¼°Ñ¡ÔñÎļþ¼ÐͨÓöԻ°¿ò
' ʹÓ÷½·¨:£¨1£©½«mdlBrowseFolder.basÄ£¿éÌí¼Óµ½µ±Ç°¹¤³ÌÖÐ;
' (2£©ÔÚµ±Ç°¹¤³ÌÖÐʹÓÃ
' dim strMyPath as String
' strMyPath=BrowseFolder("ÇëÑ¡ÔñĿ¼")
' ´úÂë¶Î½øÐе÷Óã¬Óû§Ñ¡ÔñµÄĿ¼½«±£´æÔÚstrPath×Ö·û´®±äÁ¿ÏÂ;
' (3) Èç¹ûÓû§Ñ¡Ôñ"È¡Ïû"°´Å¥,ÔòstrPathµÄֵΪ¿Õ;
' *******************************************************************
Public Function BrowseFolder(strDialogTitle As String) As String
Dim X As Long
Dim bi As BROWSEINFO
Dim dwIList As Long
Dim strPath As String
Dim wPos As Integer
With bi
.hOwner = 0& 'hWndAccessApp
.lpTitle = strDialogTitle
.ulFlags = BIF_RETURNONLYFSDIRS
End With
dwIList = SHBrowseForFolder(bi)
strPath = Space$(512)
X = SHGetPathfromIDList(ByVal dwIList, ByVal strPath)
If X Then
wPos = InStr(strPath, Chr(0))
BrowseFolder = Left$(strPath, wPos - 1)
Else
BrowseFolder = vbNullString
End If
' È·±£·µ»ØµÄ·¾¶×Ö·û´®µÄ×îºóÒ»¸ö×Ö·ûΪ"\"
If BrowseFolder <> "" And Right(Trim(BrowseFolder), 1) <> "\" Then
BrowseFolder = BrowseFolder & "\"
End If
End Function
' ²âÊÔʾÀý
Sub Main
Ïà¹ØÎĵµ£º
Ãû³Æ ÀàÐÍ ËµÃ÷
abort º¯Êý ÒýÆð·ÅÆúµÄÒâÍâ´¦Àí
abs º¯Êý ¾ø¶ÔÖµº¯Êý
addexitproc º¯Êý ½«Ò»¹ý³ÌÌí¼Óµ½ÔËÐÐʱ¿âµÄ½áÊø¹ý³Ì±íÖÐ
addr º¯Êý ·µ»ØÖ¸¶¨¶ÔÏóµÄµØÖ·
adjustlinebreaks º¯Êý ½«¸ø¶¨×Ö·û´®µÄÐзָô·ûµ÷ÕûΪcr/lfÐòÁÐ
align ÊôÐÔ Ê¹¿Ø¼þλÓÚ´°¿Úij²¿·Ö
alignment ÊôÐÔ ¿Ø¼þ±êÇ©µÄÎÄ×ÖλÖÃ
allocmem º ......
VBÖÐÀûÓÃCopyMemoryʹÓÃÖ¸Õë
¡¡¡¡Ò»¡¢Ö¸ÕëÊÇʲô£¿
¡¡¡¡²»ÐèҪȥÕÒʲô±ê×¼µÄ¶¨Ò壬Ëü¾ÍÊÇÒ»¸ö32λÕûÊý£¬ÔÚCÓïÑÔºÍÔÚVBÀï¶¼¿ÉÒÔÓÃLongÀàÐÍÀ´±íʾ¡£ÔÚ32λWindowsƽ̨ÏÂËüºÍÆÕͨµÄ32볤ÕûÐÍÊýûÓÐʲô²»Í¬£¬Ö»²»¹ýËüµÄÖµÊÇÒ»¸öÄÚ´æµØÖ·£¬ÕýÊÇÒòΪÕâ¸öÕûÊýÏóÕëÒ»ÑùÖ¸ÏòÒ»¸öÄÚ´æµØÖ·£¬ËùÒÔ¾ÍÓÐÁËÖ¸ÕëµÄ¸ÅÄî¡£
¡¡¡¡ÓÐÍ ......
delphiÖеÄDLLÖеÄÉùÃ÷ÔÂëÈçÏ£º
ÕâÀïÉùÃ÷ÁËÊä³öÐÔ²ÎÊý·Ö±ðΪÊý×ÖÓë×Ö·ûÀàÐÍ
library dll1;
uses
SysUtils,
Classes;
{$R *.res}
Function mymax(x, y: Integer; out jj: Integer; out abc: PChar): Integer; stdcall;
begin
jj := x * y;
abc := PChar(StrPas(abc) + 'ÕâÊÇ´«³öµÄ' ......
ÌÖÂÛVBÖеĽṹÌå[×ªÔØ]
2009Äê10ÔÂ20ÈÕ ÐÇÆÚ¶þ 11:30
VBÀïÃæµÄ½á¹¹ÌåÊÇÒ»ÖÖWORD/DWORD¶ÔÆëµÄ½á¹¹Ì壬ÕâÒ»µãÔÚ±à³ÌÖÐÓÈÆäҪעÒ⣬Èç¹ûÊÇ´¿VB±à³Ì£¬Ôò½á¹¹ÌåµÄ¸÷¸öÓòÈçºÎÅÅÁпÉÒÔ»ù±¾²»ÓùØÐÄ£¬
¶øÈç¹ûÊǵ÷ÓÃAPI»òÕßÊǵ÷ÓÃÆäËûµÄ¶¯Ì¬Á´½Ó¿â£¬ÔòºÜÈÝÒ׳öÎÊÌ⣬ÔÒò¾ÍÔÚÓÚ£ºÕâЩ¶¯Ì¬Á´½Ó¿âÊÇÓÃC/C++дµÄ£¬¶ø´ó²¿·ÖC/C++»·¾³ ......
×ÜÊö
±¾ÎÄÐðÊöÁËÈçºÎÔÚVBÖÐʵÏֿؼþµÄIobjectSafety½Ó¿Ú£¬ÒÔ±êÖ¾¸Ã¿Ø¼þÊǽű¾°²È«ºÍ³õʼ»¯°²È«µÄ¡£VB¿Ø¼þĬÈϵĴ¦Àí·½Ê½ÊÇÔÚ×¢²á±íÖÐ×¢²á×é¼þÀàÀ´±êʶÆä°²È«ÐÔ£¬µ«ÊµÏÖIobjectSafety½Ó¿ÚÊǸüºÃµÄ·½·¨¡£±¾ÑÔÓï°üÀ¨ÁËʵÏÖ¹ý³ÌÖÐËùÐèµÄËùÓдúÂë¡£
Çë×¢Ò⣬¿Ø¼þÖ»ÓÐȷȷʵʵÊǰ²È«µÄ£¬²ÅÄܱ»±êʶΪ“°²È«µÄ”¡£±¾ ......