ホームページ >バックエンド開発 >PHPチュートリアル >ASP/PHP などの動的 Web ページ用の COM コンポーネントを作成する

ASP/PHP などの動的 Web ページ用の COM コンポーネントを作成する

WBOY
WBOYオリジナル
2016-06-23 13:59:071030ブラウズ

ASP、PHP、その他の動的 Web 言語はすでに非常に強力ですが、COM を使用すると、それらをさらに強力にすることができます。実は私たちが普段使っているADO、FSO、JmailなどもCOMです。 COM を使用すると、WEB はローカル アプリケーションのほぼすべての関数を呼び出してページにフィードバックできます。たとえば、サーバーのディスク使用量、CPU 使用量などをクエリします。最後に、主流ではないアイデアについてもいくつか説明します。

COMを開発するためのツールは、VB、VC、DelphiなどのEXEアプリケーションを開発するためのツールでもあります。ただし、VB には、わずか数行のコードで COM を記述できるという当然の利点があります。 VB では、COM は ActiveX DLL とも呼ばれます。非常に簡単な例を借りて、その年がうるう年かどうかを判断してみましょう。

新しい ActiveX DLL プロジェクトを作成し、プロジェクトに Check Year という名前を付け、自動的に生成されたクラスに Leap Year という名前を付けます。次のコードを書きます:

代 代

Option ExplicitPublic Function IsLeapYear(yr As Variant) As Boolean    If yr Mod 4 = 0 And yr Mod 100 <> 0 Then IsLeapYear = True Else IsLeapYear = FalseEnd Function
咳、単純では少し不快です。このようにして、COM の準備が整い、DLL が生成されるようになります。次に、登録します。操作中に「regsvr32 H:checkyear.dll」と入力するだけです。ローカル ラックに IIS または NetBox がある場合は、ASP Web ページでそれを呼び出すことができます。サーバー上で使用する場合は、上記の作業をサーバー上で行う必要があります。 ASP の呼び出しコードは次のとおりです。

<% Option ExplicitDim oCheckYear,sDim Year, isleapYearYear=2004Set oCheckYear=CreateObject("CheckYear.LeapYear")isleapyear=oCheckYear.IsLeapYear(Year)Set oCheckYear=Nothing%><body><% If isleapYear=True Then s="是闰年!" Else s="不是闰年!"%><%=Year%>年<%=s%></body>
COM は、EXE アプリケーション開発ツールでも呼び出すことができます。これらを使用して、複雑な COM を作成するときに機能を検出できます。 COM が登録されると、VB の「参照」リストに表示されます。たとえば、VB で呼び出すコードは次のとおりです。

Private Sub Command1_Click()    Dim c    Set c = CreateObject("CheckYear.LeapYear")    Dim d As Boolean    d = c.IsLeapYear(2004)    MsgBox dEnd Sub

COM は無限の可能性の扉を開き、それを使うのはあなた次第です。 Kingdee や UFIDA などはこの方法を非常に得意としています。私の非主流的な使い方について話しましょう。誰もが WebService を使用したことがあるはずです。多くのポータルやメーカーが、天気情報、株式市場、その他の情報を無料の WebService の形で提供しています。プログラム内の URL を使用して直接アクセスできます。ここで説明したいのは、非公開かつ非公式の「サービス」、つまり、IP138 Web サイト http://iframe.ip138.com/ic.asp によって提供される、単純な IP を返す IP 情報クエリ ページです。例: 「あなたの IP は: [17.89.9.11] 送信者: 広東省深セン電信」。私のプログラムでは、ユーザーの位置をクエリするためにデータベースに情報を要求します。これは、データベースを自分でチェックするよりもはるかに簡単で、そのアドレスは常に最新であると主張します。これは、COM で提供されているメソッドをページ上で呼び出すだけで、COM でも使用できます。 「これは常にサーバーのアドレス情報を取得するのではないか?」と疑問に思う人もいるかもしれません。したがって、WinHttpRequest を使用して独自のデータ パッケージを構築する必要もあります。ページはユーザー IP を COM に渡し、COM はユーザー IP をデータ パケットに組み込んで IP138 に送信します。 VB の送信方法には、Inet コントロールと xmlhttp が含まれます。詳細については、Baidu を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。