高手救命啊。。。。。。关于ACTIVEX的编写 我是新手,哪个大侠给个DELPHI或VC编写的OCX的源码。实现功能,能够用过JS调用DELPHI的函数。功能:通过OCX取得IP返回给JS的变量。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 留下你的email,我发给你--ocx部分代码function LocalIP:string;type TaPInAddr = array [0..10] of PInAddr; PaPInAddr = ^TaPInAddr;var phe : PHostEnt; pptr : PaPInAddr; Buffer : array [0..63] of char; I : Integer; GInitData : TWSADATA;begin WSAStartup($101, GInitData); Result := ''; GetHostName(Buffer, SizeOf(Buffer)); phe :=GetHostByName(buffer); IF phe = nil THEN Exit; pptr := PaPInAddr(Phe^.h_addr_list); I := 0; while pptr^[I] <> nil do begin result:=StrPas(inet_ntoa(pptr^[I]^)); Inc(I); end; WSACleanup;end;function TActiveFormX.Get_ip: WideString;begin Result:=LocalIp;end;--c#调用部分代码<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ><HTML> <HEAD> <title>WebForm1</title> <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1"> <meta name="CODE_LANGUAGE" Content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <script language="javascript"> function ip() { var o; o = document.Form1.getip1; alert(o.ip); } </script> </HEAD> <body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <OBJECT id="getip1" style="Z-INDEX: 101; LEFT: 192px; POSITION: absolute; TOP: 104px" classid="clsid:B2DC9B66-2A89-4F5F-A482-331AA914D5BB" VIEWASTEXT> <PARAM NAME="Visible" VALUE="0"> <PARAM NAME="AutoScroll" VALUE="0"> <PARAM NAME="AutoSize" VALUE="0"> <PARAM NAME="AxBorderStyle" VALUE="1"> <PARAM NAME="Caption" VALUE="ActiveFormX"> <PARAM NAME="Color" VALUE="4278190095"> <PARAM NAME="Font" VALUE="MS Sans Serif"> <PARAM NAME="KeyPreview" VALUE="0"> <PARAM NAME="PixelsPerInch" VALUE="96"> <PARAM NAME="PrintScale" VALUE="1"> <PARAM NAME="Scaled" VALUE="-1"> <PARAM NAME="DropTarget" VALUE="0"> <PARAM NAME="HelpFile" VALUE=""> <PARAM NAME="ScreenSnap" VALUE="0"> <PARAM NAME="SnapBuffer" VALUE="10"> <PARAM NAME="DoubleBuffered" VALUE="0"> <PARAM NAME="Enabled" VALUE="-1"> </OBJECT> <INPUT style="Z-INDEX: 102; LEFT: 296px; POSITION: absolute; TOP: 424px" type="button" value="Button" onclick="ip();"> </form> </body></HTML> 呵呵,我刚做过,用属性就可以返回给javascript 目前正在写WEB控件,现在已经进入测试阶段,建议你用VC写控件,如果需要用DELPHI写的代码,可以通过在控件里面调用DELPHI写的DLL来实现,我自已写的控件和DLL,已经打包成cab文件,可以自动安装和更新.没问题 如何设置Word中某一段文字的颜色? 从来没有来过D这里,发一个帖子给自己做宣传博客,认识的兄弟给我捧场,谢谢 客户端用TTCPClient发送Byte数组,服务端用Java写的Socket监听。为什么收到的数据不一致? 在QR报表中画斜线的问题? 新手提问 帮忙,详细地解释一下vcl组件的‘拥有关系’和‘父子关系’的区别吧 主窗体和子窗体如何共用一个ADOQuery? 请问Delphi和C++的code,能结合吗? Delphi 多线程如何得到返回值 有关query的问题 怎样统计edit中的输入数字的个数??? 中专学Delphi吃力吗?我不懂英语,请达人帮我制定一个学习计划
--ocx部分代码
function LocalIP:string;
type
TaPInAddr = array [0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe : PHostEnt;
pptr : PaPInAddr;
Buffer : array [0..63] of char;
I : Integer;
GInitData : TWSADATA;
begin
WSAStartup($101, GInitData);
Result := '';
GetHostName(Buffer, SizeOf(Buffer));
phe :=GetHostByName(buffer);
IF phe = nil THEN Exit;
pptr := PaPInAddr(Phe^.h_addr_list);
I := 0;
while pptr^[I] <> nil do
begin
result:=StrPas(inet_ntoa(pptr^[I]^));
Inc(I);
end;
WSACleanup;
end;function TActiveFormX.Get_ip: WideString;
begin
Result:=LocalIp;
end;
--c#调用部分代码
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm1</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script language="javascript">
function ip()
{
var o;
o = document.Form1.getip1;
alert(o.ip);
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<OBJECT id="getip1" style="Z-INDEX: 101; LEFT: 192px; POSITION: absolute; TOP: 104px" classid="clsid:B2DC9B66-2A89-4F5F-A482-331AA914D5BB"
VIEWASTEXT>
<PARAM NAME="Visible" VALUE="0">
<PARAM NAME="AutoScroll" VALUE="0">
<PARAM NAME="AutoSize" VALUE="0">
<PARAM NAME="AxBorderStyle" VALUE="1">
<PARAM NAME="Caption" VALUE="ActiveFormX">
<PARAM NAME="Color" VALUE="4278190095">
<PARAM NAME="Font" VALUE="MS Sans Serif">
<PARAM NAME="KeyPreview" VALUE="0">
<PARAM NAME="PixelsPerInch" VALUE="96">
<PARAM NAME="PrintScale" VALUE="1">
<PARAM NAME="Scaled" VALUE="-1">
<PARAM NAME="DropTarget" VALUE="0">
<PARAM NAME="HelpFile" VALUE="">
<PARAM NAME="ScreenSnap" VALUE="0">
<PARAM NAME="SnapBuffer" VALUE="10">
<PARAM NAME="DoubleBuffered" VALUE="0">
<PARAM NAME="Enabled" VALUE="-1">
</OBJECT>
<INPUT style="Z-INDEX: 102; LEFT: 296px; POSITION: absolute; TOP: 424px" type="button"
value="Button" onclick="ip();">
</form>
</body>
</HTML>