본문 바로가기

Other Programming/Application Programming

C# 에서 API 사용하기

반응형

c# 에서 api 사용하기 .

비공개2007.12.16 02:14

답변 1| 조회 665

c# 에서 GetPrivateProfileString 을 사용하려는데 에러나요.

//===============================
DWORD GetPrivateProfileString(
  LPCTSTR lpAppName,
  LPCTSTR lpKeyName,
  LPCTSTR lpDefault,
  LPTSTR lpReturnedString,
  DWORD nSize,
  LPCTSTR lpFileName
);
 //==========================

  브라우져 즐겨찾기 파일에서 바로가기 문자열을
  읽으려는데
  GetPrivateProfileString("InternetShortcut", key, null, ref sb, 1000, FileName);
  에서 다운되요.

 

     소스를 어떻게 고쳐야 제대로 작동하나요.?
  
  
  [DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
  public static extern int GetPrivateProfileString(
   string lpAppName,
   string lpKeyName,
   string lpDefault,
   ref StringBuilder lpReturnedString,
   int nSize,
   string lpFileName);  
   
   public string 콜_get_ini_key(string FileName, string key)
  {
   if (!System.IO.File.Exists(FileName)) return null;

   try
   {
    StringBuilder sb = new StringBuilder(1000);
    GetPrivateProfileString("InternetShortcut", key, null, ref sb, 1000, FileName);
    return sb.ToString();
   }
   catch { }
   return null; 
  }
       
      

신고

의견 쓰기

ssogarif님의 지식을 나누어주세요! 
답변하시면 내공 10점을, 답변이 채택되면 내공 75점(채택25+추가50)을 드립니다.
>나도 답변하기

질문자 선택

re: c# 에서 api 사용하기 .

rowset

답변채택률75.5%

2007.12.16 12:26

아래와 같이 한번 고쳐보세요

전 잘 되네요

 

[DllImport("kernel32.dll")]
        static extern uint GetPrivateProfileString(
      string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName);

 

public string 콜_get_ini_key(string FileName, string key)
{
            if (!System.IO.File.Exists(FileName)) return null;

            try
            {
                StringBuilder sb = new StringBuilder(1000);

                GetPrivateProfileString("InternetShortcut", key, null, sb, sb.Capacity, FileName);
                return sb.ToString();
            }
            catch { }
            return null;
}




///////////// 출처 네이버 ///////