C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[358] IE "오프라인으로 작업" 체크여부.
빈센트 [kaisar] 7437 읽음    2002-08-14 18:09

IE5이상에서 파일메뉴의 "오프라인으로 작업"항목의 체크여부입니다.
www.delmadang.com 김상경님(softzang@korea.com)의 델파이코드를
빌더로 바꿨습니다.

원래 출처는 이곳인듯 합니다.
http://delphi.about.com/bltip1100.htm

빌더 코드..

//---------------------------------------------------------------------------
typedef BOOL (__stdcall *InetIsOffLineFunc)(DWORD dwFlags);
bool __fastcall FuncAvail(char *_dllname,char * _funcname, InetIsOffLineFunc &_p)
{
    bool res = false;
    HANDLE _lib;
    if(!LoadLibrary(_dllname))
        return res;
    _lib = GetModuleHandle(_dllname);
    if (_lib){
        _p = (InetIsOffLineFunc)GetProcAddress(_lib, _funcname);
        if (_p)
            res = true;
    }
    return res;
}
void __fastcall TForm1::Button1Click(TObject *Sender)
{
/* Call  SHELL32.DLL for Win > Win98 otherwise call URL.dll */
    InetIsOffLineFunc             InetIsOffLine;
   if (FuncAvail("URL.DLL", "InetIsOffline", InetIsOffLine))
       if (InetIsOffLine(0))
            ShowMessage("Not connected!");
       else
            ShowMessage("Connected!");


}

//델파이 코드

procedure TForm1.Button1Click(Sender: TObject);
function FuncAvail(_dllname, _funcname: string;
                   var _p: pointer): boolean;
    {return True if _funcname exists in _dllname}
var _lib: tHandle;
begin
     Result := false;
     if LoadLibrary(PChar(_dllname)) = 0 then exit;
     _lib := GetModuleHandle(PChar(_dllname));
     if _lib <> 0 then
     begin
       _p := GetProcAddress(_lib, PChar(_funcname));
        if _p <> NIL then Result := true;
     end;
end;

{
Call  SHELL32.DLL for Win > Win98
otherwise call URL.dll
}
{buton code:}
var
InetIsOffline : function(dwFlags: DWORD):
                 BOOL; stdcall;
begin
   if FuncAvail('URL.DLL', 'InetIsOffline',
              @InetIsOffline) then
   if InetIsOffLine(0) = true  then ShowMessage('Not connected')
   else ShowMessage('Connected!');

end;

빈센트 [kaisar]   2002-08-17 11:17 X
이 함수는 IE5이상의 파일 메뉴에서 '오프라인에서 작업'항목의 값을 체크하는 함수입니다.
빈센트 [kaisar]   2002-08-17 11:18 X
확인하지 않고 올려 죄송합니다.^^;

+ -

관련 글 리스트
358 IE "오프라인으로 작업" 체크여부. 빈센트 7437 2002/08/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.