C/C++ ÅжÏ·¾¶ÎªÎļþ
/***************************************************
* º¯Êý˵Ã÷: Åжϵ±Ç°path²ÎÊýÊÇ·ñΪһ¸ö¿É¶ÁµÄÎļþ
* º¯Êý·µ»Ø: 0 - Îļþ¿Ì¶È 1 - ȨÏ޾ܾø -1 -º¯Êý´íÎó
* ²Î Êý : path Îļþ·¾¶.
***************************************************/
int isReadFile(const char *path)
{
struct stat info;
int euid,egid;
if ( 0!= stat(path,&info) )
{
return -1;
}
//if it is a file
if( S_IFREG != (info.st_mode & S_IFMT ) )
{
return 1;
}
euid=geteuid();//returns the real user ID of the
current process
egid=getegid();//returns the effective user ID of the
current process
//if effective user is root
if(euid==0)
{
if(info.st_mode & S_IRUSR || info.st_mode &
S_IRGRP ||info.st_mode & S_IROTH)
{
return 0;
}
Ïà¹ØÎĵµ£º
ϵͳ»·¾³£ºWindows 7
Èí¼þ»·¾³£ºVisual C++ 2008 SP1 +SQL Server 2005
±¾´ÎÄ¿µÄ£º±àдһ¸öº½¿Õ¹ÜÀíϵͳ
ÕâÊÇÊý¾Ý¿â¿Î³ÌÉè¼ÆµÄ³É¹û£¬ËäÈ»³É¼¨²»¼Ñ£¬µ«ÊÇ×÷ΪÎÒÓÃVC++ ÒÔÀ´±àдµÄ×î´ó³ÌÐò»¹ÊÇ´«µ½ÍøÉÏ£¬ÒÔ¹©²Î¿¼¡£ÓÃVC++ ×öÊý¾Ý¿âÉè¼Æ²¢²»ÈÝÒ×£¬µ«Ò²²»ÊDz»¿ÉÄÜ¡£ÒÔÏÂÊÇÎҵijÌÐò½çÃæ£¬ºóÃæ ......
ÕâÆªÎÄÕÂÖмǼ±¾È˶ÔһЩC/C++»ù´¡¸ÅÄîµÄÀí½â£¬Ö÷Òª°üÀ¨ÒÔϼ¸¸ö·½ÃæÄÚÈÝ£º
1¡¢ÀàÐÍת»»
1¡¢ÀàÐÍת»»
ÔÚCºÍC++µÄÒ»¸ö±í´ïʽÖÐÍùÍù»á°üº¬¼¸ÖÖ²»Í¬µÄÊý¾ÝÀàÐÍ£¬ÒªÈÃÕâЩÊý¾ÝÀàÐÍÖ®¼ä¿ÉÒÔ½øÐÐÔËË㣬±ØÐëÈÃËûÃÇÖ®ÖеÄһЩ»òÈ«²¿½øÐÐÀàÐÍת»»£¬ÕâÖÖת»»ÓÐÁ½ÖÖÐÎʽ£¬Ò»ÖÖÊDZàÒëÆ÷×Ô¶¯½øÐе쬽ÐÒþʽÀàÐÍת»»£¬ÁíÒ»ÖÖÊDZà³ÌÖÐÇ ......
CRTÔÏÈÊÇÖ¸Microsoft¿ª·¢µÄC Runtime Library£¬ÓÃÓÚ²Ù×÷ϵͳµÄ¿ª·¢¼°ÔËÐС£ºóÀ´ÔÚ´Ë»ù´¡ÉÏ¿ª·¢ÁËC++
Runtime Library£¬ËùÒÔÏÖÔÚCRTÊÇÖ¸Microsoft¿ª·¢µÄC/C++ Runtime
Library¡£ÔÚVCµÄCRT/SRCĿ¼Ï£¬¿ÉÒÔ¿´µ½CRTµÄÔ´Â룬²»½öÓÐCµÄ£¬Ò²ÓÐC++µÄ¡£
CRTÔÏȵÄÄ¿µÄ¾ÍÊÇÖ§³Ö²Ù×÷ϵͳµÄ ......
µÚ2ÕÂ
»·¾³£º·Òë»·¾³: Ô´´úÂëת»¯³É¿ÉÖ´ÐеĻúÆ÷Ö¸Áî¡£
Ö´Ðл·¾³£ºÓÃÓÚʵ¼ÊÖ´ÐдúÂë¡£
·Ò룺ԴÎļþ-¡µÄ¿±êÎļþ-¡µ¿ÉÖ´ÐÐÎļþ£¨Í¨¹ýÁ´½ÓÆ÷½«¶à¸öÄ¿±êÎļþÀ¦°óÔÚÒ»Æð£©
±àÒë¹ý³Ì£ºÔ¤´¦ÀíÆ÷-¡µÔ´´úÂë¾¹ý½âÎö²úÉúÄ¿±ê´úÂ루Õâ¸ö¹ý³ÌÖÐÊǾø´ó¶àÊý´íÎóºÍ¾¯¸æ²úÉúµÄµØ·½£©-¡µÓÅ»¯Æ÷£¨¾ÍÊǶÔÄ¿±ê´úÂë½øÐнøÒ»²½ÓÅ»¯£¬Ê¹Ð§ÂÊ ......
×Ö·ûÊý×éºÍ×Ö·û´®
&×Ö·ûÊý×éºÍ×Ö·û´®µÄ¸ÅÄî &×Ö·ûÊý×éµÄ³õʼ»¯
&×Ö·û´®µÄÊäÈëÊä³ö &×ۺϾÙÀý
×Ö·ûÊý×éºÍ×Ö·û´®µÄ¸ÅÄî
×Ö·ûÊý×éÊÇÔªËØÀàÐÍΪ×Ö·ûµÄÊý×é ,Ëü¼È¾ßÓÐÆÕͨÊý×éµÄÒ»°ãÐÔÖÊ ,ÓÖ¾ßÓÐÄ³Ð©ÌØÊâÐÔÖÊ¡£
& ......