Delphi ´ò¿ªÎļþ¼Ð·½·¨
µÚÒ»ÖÖ·½·¨,ʹÓÃSelectDirectory º¯Êý ,ÔÚShellApiÖÐ
procedure TForm2.BtSelectPathClick(Sender: TObject);
var
strCaption,strDirectory:String;
wstrRoot:WideString;
begin
strCaption:='ÕâÊÇä¯ÀÀÎļþ¼ÐµÄ˵Ã÷ÎÄ×Ö£¬¿ÉÒÔ¸ù¾ÝÐèÒª½øÐÐÊéд¡£'
+#13#10+'Ò»°ã¶þÐÐÎÄ×Ö¾ÍÂúÁË¡£';
//¸Ã²ÎÊýÊÇä¯ÀÀÎļþ¼Ð´°¿ÚµÄÏÔʾ˵Ã÷²¿·Ö
wstrRoot:='';
//Õâ¸ö²ÎÊý±íʾËùÏÔʾµÄä¯ÀÀÎļþ¼Ð´°¿ÚÖеĸùĿ¼£¬Ä¬ÈÏ»ò¿Õ±íʾ“ÎҵĵçÄÔ”¡£
SelectDirectory(strCaption,wstrRoot,strDirectory);
EdLocalPath.Text:=strDirectory;
end;
µÚ¶þÖÖ·½·¨
ÒªÇó£ºÀûÓÃWin32 API SHBrowseForFolder¿ªÆôÒ»¸öÑ¡ÔñÎļþĿ¼µÄ¶Ô»°¿ò£¬Ô¤Ïȶ¨Î»µ½Ä¬ÈϵÄĿ¼£¬×îºó·µ»ØËùÑ¡ÔñµÄ½á¹û£¬Èç¹ûûÓнøÐÐÑ¡Ôñ£¨¼´µ¥»÷“È¡Ïû”½áÊøÑ¡Ôñ£©Ôò·µ»Ø¿Õ''¡£
´úÂëÈçÏÂ:(ÒÔÏÂÁ½¸öº¯Êý¶¨ÒåÐèÒªÔÚusesÖÐÒýÈëÁ½¸öµ¥ÔªShlObj,Windows;)
function BrowseCallbackProc(Wnd: HWND; uMsg: UINT; lParam, lpData: LPARAM): Integer stdcall;
begin
case uMsg of
BFFM_INITIALIZED: SendMessage(Wnd, BFFM_SETSELECTION, 1, lpData);
end;
Result := 0;
end;
function BrowsFolder(const Folder: string): string;
var
TitleName: string;
lpItemID: PItemIDList;
BrowseInfo: TBrowseInfo;
DisplayName: array[0..MAX_PATH] of char;
TempPath: array[0..MAX_PATH] of char;
begin
Result := Folder;
FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
BrowseInfo.hwndOwner := GetActiveWindow;
BrowseInfo.pszDisplayName := @DisplayName;
TitleName := 'ÇëÑ¡ÔñÒ»¸öĿ¼';
BrowseInfo.lpszTitle := PChar(TitleName);
BrowseInfo.ulFlags := BIF_RETURNONLYFSDIRS;
BrowseInfo.lpfn := BrowseCallbackProc;
BrowseInfo.lParam := Integer(PChar(Folder));
lpItemID := SHBrowseForFolder(BrowseInfo);
if Assigned(lpItemId) then
begin
SHGetPathfromIDList(lpItemID, TempPath);
GlobalFreePtr(lpItemID);
Result := string(TempPath);
end
else
Ïà¹ØÎĵµ£º
VCÉùÃ÷
HANDLE CreateMutex(
¡¡¡¡LPSECURITY_ATTRIBUTES lpMutexAttributes, // SD
¡¡¡¡BOOL bInitialOwner, // initial owner
¡¡¡¡LPCTSTR lpName // object name
¡¡¡¡);
delphiÉùÃ÷£º
function CreateMutex(lpMutexAttributes: PSecurityAttributes; bInitialOwner: BOOL; lpName: PChar): THandle; stdcall;
´´½ ......
Ò»¸öÓѺõÄÓû§½çÃæ,±ØÐë¾ßÓÐÏÂÀ²Ëµ¥£¬µ¯³ö²Ëµ¥£¬¹¤¾ßÌõºÍ¿ì½Ý¼ü¡£Í¬ÑùÒ»¸ö¹¦ÄÜ£¬³ÌÐòÔ±¿ÉÄÜÒªÌṩ¼¸ÖÖ²Ù×÷·½Ê½£¬ÈçÎı¾¿½±´£¬²Ëµ¥ÃüÁî&Copy,¿ì½Ý¼üCtrl+C,¹¤¾ßÌõÉϵĿ½±´°´Å¥£¬¶¼ÊdzÌÐòÔ±Ìṩ¸øÓû§µÄ²Ù×÷£¬¿ÉÒÔ´ó´ó·½±ãÁ˲»Í¬²ã´ÎµÄÓû§¡£µ«ÊÇ£¬¶àÔö¼ÓÒ»ÖÖ²Ù×÷·½Ê½£¬¾ÍÒâζ×ÅÔö¼ÓÏìӦʼþµÄ´úÂë£ ......
windows¼¸¸öÖØÒªµÄÄÚºËÊý¾Ý½á¹¹ËäÈ»ÍøÉÏÒ²ÓÐÏà¹ØµÄ¶¨Ò壬µ«¸öÈ˾õµÃ²»ÆëÈ«¶¨Òå²»¹æ·¶£¬Òò´ËÓÃÒ»Ììʱ¼äʹÓÃWinDbg+Win2000sourcecodeÖØÐ¶¨ÒåÁ˳£ÓõÄÄÚºËÊý¾Ý½á¹¹£¬²¢¾¡¿ÉÄÜ»¹Ô΢ÈíµÄԽṹ¶¨Ò壬ÿ¸ö½á¹¹¶¼µÝ¹éµ½×î×Ó²ãµÄ½á¹¹²¢ÇÒͨ¹ýÁ˲âÊÔ¡£Í¨¹ýÕâ´Î¹¤×÷¹ý³Ì²»½öʹ×Ô¼ºµÃµ½Ò»´ÎѧϰµÄ»ú»á£¬¶øÇÒÌá¸ßÁË×Ô¼ºµÄÕûÌåÈí¼þ¼Ü¹ ......
Delphi7 µ÷Óà C#µÄWebservice ²»ÄÜ´«Èë²ÎÊý
½â¾ö°ì·¨£º
ÔÚDelphiµ¼ÈëWSDLºóÉú³ÉµÄµ¥ÔªµÄ×îºóÒ»ÐУ¬¼´initializationÀïµÄ³õʼ»¯¶Ë¿ÚµÄ´úÂëÖмÓÈë´úÂë
InvRegistry.RegisterInvokeOptions(TypeInfo(½Ó¿ÚÃû), ioDocument);
¼´¿É
......