Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

C# API ´óÈ«

C:\ProgramFiles\MicrosoftVisual Studio .NET\ FrameworkSDK\Samples\ Technologies\ Interop\PlatformInvoke\ WinAPIs\CSĿ¼ÏÂÓдóÁ¿µÄµ÷ÓÃAPIµÄÀý×Ó¡£
Ò»¡¢µ÷Óøñʽ
using System.Runtime.InteropServices; //ÒýÓôËÃû³Æ¿Õ¼ä£¬¼ò»¯ºóÃæµÄ´úÂë
//ʹÓÃDllImportAttributeÌØÐÔÀ´ÒýÈëapiº¯Êý£¬×¢ÒâÉùÃ÷µÄÊǿշ½·¨£¬¼´·½·¨ÌåΪ¿Õ¡£
[DllImport("user32.dll")]
public static extern ReturnType FunctionName(type arg1,type arg2,...);
//µ÷ÓÃʱÓëµ÷ÓÃÆäËû·½·¨²¢ÎÞÇø±ð
¿ÉÒÔʹÓÃ×ֶνøÒ»²½ËµÃ÷ÌØÐÔ£¬ÓöººÅ¸ô¿ª£¬È磺
[ DllImport( "kernel32", EntryPoint="GetVersionEx" )]
DllImportAttributeÌØÐԵĹ«¹²×Ö¶ÎÈçÏ£º
1¡¢CallingConvention ָʾÏò·ÇÍйÜʵÏÖ´«µÝ·½·¨²ÎÊýʱËùÓÃµÄ CallingConvention Öµ¡£
CallingConvention.Cdecl : µ÷Ó÷½ÇåÀí¶ÑÕ»¡£ËüʹÄúÄܹ»µ÷ÓþßÓÐ varargs µÄº¯Êý¡£
CallingConvention.StdCall : ±»µ÷Ó÷½ÇåÀí¶ÑÕ»¡£ËüÊÇ´ÓÍйܴúÂëµ÷Ó÷ÇÍйܺ¯ÊýµÄĬÈÏÔ¼¶¨¡£
2¡¢CharSet ¿ØÖƵ÷Óú¯ÊýµÄÃû³Æ°æ±¾¼°Ö¸Ê¾ÈçºÎÏò·½·¨·âËÍ String ²ÎÊý¡£
´Ë×ֶα»ÉèÖÃΪ CharSet ÖµÖ®Ò»¡£Èç¹û CharSet ×Ö¶ÎÉèÖÃΪ Unicode£¬ÔòËùÓÐ×Ö·û´®²ÎÊýÔÚ´«µÝµ½·ÇÍйÜʵÏÖ֮ǰ¶¼×ª»»³É Unicode ×Ö·û¡£Õ⻹µ¼ÖÂÏò DLL EntryPoint µÄÃû³ÆÖÐ×·¼Ó×Öĸ“W”¡£Èç¹û´Ë×Ö¶ÎÉèÖÃΪ Ansi£¬Ôò×Ö·û´®½«×ª»»³É ANSI ×Ö·û´®£¬Í¬Ê±Ïò DLL EntryPoint µÄÃû³ÆÖÐ×·¼Ó×Öĸ“A”¡£´ó¶àÊý Win32 API ʹÓÃÕâÖÖ×·¼Ó“W”»ò“A”µÄÔ¼¶¨¡£Èç¹û CharSet ÉèÖÃΪ Auto£¬ÔòÕâÖÖת»»¾ÍÊÇÓëÆ½Ì¨Óйصģ¨ÔÚ Windows NT ÉÏΪ Unicode£¬ÔÚ Windows 98 ÉÏΪ Ansi£©¡£CharSet µÄĬÈÏֵΪ Ansi¡£CharSet ×Ö¶ÎÒ²ÓÃÓÚÈ·¶¨½«´ÓÖ¸¶¨µÄ DLL µ¼ÈëÄĸö°æ±¾µÄº¯Êý¡£CharSet.Ansi ºÍ CharSet.Unicode µÄÃû³ÆÆ¥Å乿Ôò´ó²»Ïàͬ¡£¶ÔÓÚ Ansi À´Ëµ£¬Èç¹û½« EntryPoint ÉèÖÃΪ“MyMethod”ÇÒËü´æÔڵϰ£¬Ôò·µ»Ø“MyMethod”¡£Èç¹û DLL ÖÐûÓГMyMethod”£¬µ«´æÔÚ“MyMethodA”£¬Ôò·µ»Ø“MyMethodA”¡£¶ÔÓÚ Unicode À´ËµÔòÕýºÃÏà·´¡£Èç¹û½« EntryPoint ÉèÖÃΪ“MyMethod”ÇÒËü´æÔڵϰ£¬Ôò·µ»Ø“MyMethodW”¡£Èç¹û DLL Öв»´æÔÚ“MyMethodW”£¬µ«´æÔÚ“MyMethod”£¬Ôò·µ»Ø“MyMethod”¡£Èç¹ûʹÓõÄÊÇ Auto£¬ÔòÆ¥Å乿ÔòÓëÆ½Ì¨Óйأ¨ÔÚ Windows NT ÉÏΪ U


Ïà¹ØÎĵµ£º

c#Ïß³Ì

c#ÖÐдһ¸ö¶àÏß³ÌÓ¦ÓÃÊǷdz£¼òµ¥µÄ£¬±¾Õ½«½éÉÜÈçºÎÔÚc#ÖÖ¿ª·¢¶àÏ̳߳ÌÐò¡£ÔÚ.netÖÐÏß³ÌÊÇÓÉSystem.Threading Ãû×Ö¿Õ¼äËù¶¨ÒåµÄ¡£ËùÒÔÄã±ØÐë°üº¬Õâ¸öÃû×ֿռ䡣
using System.Threading;
¿ªÊ¼Ò»¸öÏß³Ì
System.Threading Ãû×Ö¿Õ¼äµÄÏß³ÌÀàÃèÊöÁËÒ»¸öÏ̶߳ÔÏó£¬Í¨¹ýʹÓÃÀà¶ÔÏó£¬Äã¿ÉÒÔ´´½¨¡¢É¾³ý¡¢Í£Ö¹¼°»Ö¸´Ò»¸öÏ̡߳£ ......

C#ÈëÃÅ

±äÁ¿¡¢³£Á¿¼°±í´ïʽ±äÁ¿ºÍ³£Á¿±äÁ¿(¾²Ì¬¡¢·Ç¾²Ì¬¡¢Êý×éÔªËØ¡¢Öµ²ÎÊý¡¢ÒýÓòÎÊý¡¢Êä³ö²ÎÊý¡¢¾Ö²¿±äÁ¿)¾²Ì¬(static) Èç public static int x;  Ò»µ©¾²Ì¬±äÁ¿ËùÊôµÄÀà±»×°ÔØ£¬Ö±µ½°üº¬¸ÃÀàµÄ³ÌÐòÔËÐнáÊøÊ±ËüÒ»Ö±´æÔÚ¡£·Ç¾²Ì¬£º²»´øÓÐstaticÐÞÊηûÉùÃ÷µÄ±äÁ¿³ÆÎªÊµÀý±äÁ¿£¬Èçint a ;³£Á¿(attributes constnt-modifiers CO ......

¶¯Ì¬µ÷ÓÃWebService(C#)

ͨ³£ÎÒÃÇÔÚ³ÌÐòÖÐÐèÒªµ÷ÓÃWebServiceʱ£¬¶¼ÊÇͨ¹ý“Ìí¼ÓWebÒýÓÔ£¬ÈÃVS.NET»·¾³À´ÎªÎÒÃÇÉú³É·þÎñ´úÀí£¬È»ºóµ÷ÓöÔÓ¦µÄWeb·þÎñ¡£ÕâÑùÊÇʹ¹¤×÷¼òµ¥ÁË£¬µ«ÊÇÈ´ºÍÌṩWeb·þÎñµÄURL¡¢·½·¨Ãû¡¢²ÎÊý°ó¶¨ÔÚÒ»ÆðÁË£¬ÕâÊÇVS.NET×Ô¶¯ÎªÎÒÃÇÉú³ÉWeb·þÎñ´úÀíµÄÏÞÖÆ¡£Èç¹ûÄÄÒ»Ìì·¢²¼Web·þÎñµÄURL¸Ä±äÁË£¬ÔòÎÒÃÇÐèÒªÖØÐÂÈÃVS.NE ......

c#ʵÏÖÏÂÔØ´úÂëÊÕ¼¯

//TransmitFileʵÏÖÏÂÔØ
    protected void Button1_Click(object sender, EventArgs e)
    {
        /*
        Î¢ÈíΪResponse¶ÔÏóÌṩÁËÒ»¸öÐµķ½·¨TransmitFileÀ´½â¾öʹÓÃRespo ......

C# stringÀàÐÍÌØÐÔС¼Ç

(1)stringÊÇÒýÓÃÀàÐÍ£º
stringÊÇÒýÓÃÀàÐÍ£¬Õâ¾ÍÊÇ˵stringÔÚ¶ÑÉϱ£´æÊý¾Ý£¬¶øÔÚÕ»Öд洢µÄÊǶÔÏóµØÖ·£¬ÔÚÀí½âstringÀàÐÍÌØÐÔʱÊ×ÏÈÐèÒª¼ÇסÕâµã¡£Ö»²»¹ýÓëÆäËüһЩÒýÓÃÀàÐÍÏà±È£¬ËüÓÖÓÐһЩ±È½ÏÌØÊâµÄÌØÐÔ£¬±ÈÈçÏÂÃæµÄÕâЩ£º
(2)stringÊDz»¿É±äµÄ(immutable)£º
stringµÄÕâÒ»ÌØÐÔÊÇÖ¸£¬¶ÔÓÚÒÑÓеÄÒ»¸östring¶ÔÏ󣬵±ÄãÐÞ¸ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ