delphiÖÐCreateMutex£¬OpenMutexʹÓÃÒ»Àý
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;
´´½¨Ò»¸ö»¥³âÌ壨MUTEX£©
¡¡¡¡·µ»ØÖµ
¡¡¡¡Long£¬ÈçÖ´Ðгɹ¦£¬¾Í·µ»Ø»¥³âÌå¶ÔÏóµÄ¾ä±ú£»Áã±íʾ³ö´í¡£»áÉèÖÃGetLastError¡£¼´Ê¹·µ»ØµÄÊÇÒ»¸öÓÐЧ¾ä±ú£¬µ«ÌÈÈôÖ¸¶¨µÄÃû×ÖÒѾ´æÔÚ£¬GetLastErrorÒ²»áÉèΪERROR_ALREADY_EXISTS
¡¡¡¡²ÎÊý±í ²ÎÊý ÀàÐͼ°ËµÃ÷
¡¡¡¡lpMutexAttributes SECURITY_ATTRIBUTES£¬Ö¸¶¨Ò»¸öSECURITY_ATTRIBUTES½á¹¹£¬»ò´«µÝÁãÖµ£¨½«²ÎÊýÉùÃ÷ΪByVal As Long£¬²¢´«µÝÁãÖµ£©£¬±íʾʹÓò»ÔÊÐí¼Ì³ÐµÄĬÈÏÃèÊö·û
¡¡¡¡bInitialOwner Long£¬Èç´´½¨½ø³ÌÏ£ÍûÁ¢¼´ÓµÓл¥³âÌ壬ÔòÉèΪTRUE¡£Ò»¸ö»¥³âÌåͬʱֻÄÜÓÉÒ»¸öÏß³ÌÓµÓÐ
¡¡¡¡lpName String£¬Ö¸¶¨»¥³âÌå¶ÔÏóµÄÃû×Ö¡£ÓÃvbNullString´´½¨Ò»¸öδÃüÃûµÄ»¥³âÌå¶ÔÏó¡£ÈçÒѾ´æÔÚÓµÓÐÕâ¸öÃû×ÖµÄÒ»¸öʼþ£¬Ôò´ò¿ªÏÖÓеÄÒÑÃüÃû»¥³âÌå¡£Õâ¸öÃû×Ö¿ÉÄܲ»ÓëÏÖÓеÄʼþ¡¢ÐźŻú¡¢¿ÉµÈ´ý¼ÆʱÆ÷»òÎļþÓ³ÉäÏà·û
¡¡¡¡×¢½â
¡¡¡¡Ò»µ©²»ÔÙÐèÒª£¬×¢Òâ±ØÐëÓÃCloseHandleº¯Êý½«»¥³âÌå¾ä±ú¹Ø±Õ¡£´ÓÊôÓÚËüµÄËùÓоä±ú¶¼±»¹Ø±Õºó£¬¾Í»áɾ³ý¶ÔÏó
¡¡¡¡½ø³ÌÖÐֹǰ£¬Ò»¶¨ÒªÊÍ·Å»¥³âÌ壬Èç²»É÷δ²ÉÈ¡Õâ¸ö´ëÊ©£¬¾Í»á½«Õâ¸ö»¥³âÌå±ê¼ÇΪ·ÏÆú£¬²¢×Ô¶¯ÊÍ·ÅËùÓÐȨ¡£¹²ÏíÕâ¸ö»¥³âÌåµÄÆäËûÓ¦ÓóÌÐòÒ²ÐíÈÔÈ»Äܹ»ÓÃËü£¬µ«»á½ÓÊÕµ½Ò»¸ö·ÏÆú״̬ÐÅÏ¢£¬Ö¸³öÉÏÒ»¸öËùÓнø³ÌδÄÜÕý³£¹Ø±Õ¡£ÕâÖÖ×´¿öÊÇ·ñ»áÔì³ÉÓ°ÏìÈ¡¾öÓÚÉæ¼°µ½µÄ¾ßÌåÓ¦ÓóÌÐò
º¯Êý¹¦ÄÜ£ºÎªÏÖÓеÄÒ»¸öÒÑÃüÃû»¥³âÌå¶ÔÏó´´½¨Ò»¸öоä±ú
¡¡¡¡º¯ÊýÔÐÍ£º HANDLE OpenMutex(
dwDesiredAccess, // access
¡¡¡¡DWORD
¡¡¡¡ BOOL bInheritHandle, // inheritance option
¡¡¡¡ LPCTSTR lpName // object name
¡¡¡¡ );
delphiÉùÃ÷£º
function OpenMutex(dwDesiredAccess: DWORD; bInheritHandle: BOOL; lpName: PChar): THandle; stdcall;
¡¡¡¡²ÎÊý£º
¡¡¡¡dwDesiredAccess£º
¡¡¡¡MUTEX_ALL_ACCESS ÇëÇó¶Ô»¥³âÌåµÄÍêÈ«·ÃÎÊ
¡¡¡¡MUTEX_MODIFY_STATE ÔÊÐíʹÓà ReleaseMutex º¯Êý
¡¡¡¡SYNCHRONIZE ÔÊÐí»¥³âÌå¶ÔÏóͬ²½Ê¹ÓÃ
¡¡¡¡bInheritHandle : ÈçÏ£Íû×Ó½ø³ÌÄܹ»¼Ì³Ð¾ä±ú£¬ÔòΪTRUE
¡¡¡¡lpName £ºÒª´ò¿ª¶ÔÏóµÄÃû×Ö
¡¡¡¡·µ»ØÖµ£ºÈçÖ´Ðгɹ¦£
Ïà¹ØÎĵµ£º
¸ÅÒª
×ÔÈ¥ÄêCodeGear±»Ó¢°Í¿¨µÏŵ£¨Embarcadero Technologies£©ÊÕ¹ººó£¬´ó¼Ò¶ÔDelphiµÄδÀ´·¢Õ¹·Ç³£¹ØÐÄ¡£½üÈÕ£¬InfoQÖÐÎÄÕ¾ÓÐÐÒ¶ÔDavid I½øÐÐÁ˶À¼Òר·Ã£¬ÒÔÁ˽â¸ü¶à¹ØÓÚDelphiµÄÏà¹ØÐÅÏ¢¡£
¸öÈ˼ò½é
David Intersimone£¨¼ò³ÆDavid I£©£¬Ó¢°Í¿¨µÏŵ¸ºÔ𿪷¢Õß¹ØϵµÄ¸±×ܲúÍÊ×ϯÐû´«¹Ù£¨Chief Evangelist£©¡£David¸º ......
(Ò») ʹÓö¯Ì¬´´½¨µÄ·½·¨
Ê×ÏÈ´´½¨ Excel ¶ÔÏó£¬Ê¹ÓÃComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application' );
1) ......
ÕÐƸÈËÊý£º 4ÈË
ѧÀúÒªÇó£º ²»ÏÞ
¹¤×÷ÄêÏÞ£º ²»ÏÞ
н×Ê·¶Î§£º ÃæÒé
¹¤×÷µØµã£º ±±¾©Í¨ÖݾſÃÊ÷
Delphi³ÌÐòÔ±ËÄÃûְλҪÇó
񻂗:
1. ÊìÁ·Ê¹ÓÃDELPHI(C,C++, C#µÈ)½øÐпª·¢£»
2. ¾ßÓÐÁ¼ºÃµÄ³ÌÐò±àдϰ¹ß£»
3. ÔúʵµÄ»ù±¾¹¦£¬½á¹¹ÇåÎú¡¢ºÏÀí£»
4. Á¼ºÃµÄÖ´ÐÐÄÜÁ¦£¬½ÏºÃµÄÍê³ÉÔ¤¶¨ÈÎÎñ£»
5. ÉϽøÐÄÇ¿£¬ÄܳԿ ......
Õª
Òª£º±¾ÎÄͨ¹ýʹÓÃDelphiºÍWebServices¼¼Êõ¿ª·¢¶ÌÐÅÓ¦ÓóÌÐòµÄʵÀýÏêϸµÄ½éÉÜÁËÈçºÎÔÚDelphiÖпª·¢»ùÓÚWebServices¼¼Êõ
µÄÓ¦ÓóÌÐò¡£
¡¡¡¡¹Ø¼ü×Ö£ºDelphi£»WebService£»¶ÌÐÅÓ¦ÓóÌÐò¿ª·¢
¡¡¡¡Ò»ÌáÆð»ùÓÚWebServices¼¼ÊõµÄÓ¦ÓóÌÐò¿ª·¢£¬Ò»°ãÈËÊ×ÏÈÏëµ½µÄ¿ª·¢¹¤¾ßÊÇVS.net£¬Æäʵ×÷Ϊ¿ìËÙÓ¦ÓóÌÐò¿ª·¢¹¤¾ß
(RAD)µ ......
alter procedure qry_page
@sqlstr nvarchar(4000), --²éѯ×Ö·û´®
@page int, --µÚNÒ³
@pagesize int &n ......