DELPHI写DLL在ASP中调用问题 |
尚未結案
|
dengguo
一般會員 發表:41 回覆:49 積分:23 註冊:2004-01-09 發送簡訊給我 |
|
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
你好: 因你提供資訊有限,不知道你想知道的哪部分(ASP or Delphi)。如果是要取得網頁傳 回值可以使用下列方式來取得參數值。 A = Request.QueryString ("DefA") 使用網址傳遞參數或是使用表單的 GET 模式 Ex: http://deepen.com.tw/page?DefA=10 <FORM ACTION="xxx.asp" METHOD="GET"> <INPUT NAME="DefA" TYPE="hidden" VALUE="1"> </FORM> A = Request.Form ("DefA") 使用 <Form> 傳遞參數時用 <FORM ACTION="xxx.asp" METHOD="POST"> <INPUT NAME="DefA" TYPE="hidden" VALUE="1"> </FORM> A = Request.BinaryRead 使用二進位傳遞資料時使用, 需自行依格式分解參數 <FORM ACTION="xxx.asp" METHOD="POST" ENCTYPE="multipart/form-data"> <INPUT NAME="DefA" TYPE="hidden" VALUE="1"> </FORM> 以上說明是針對你已了解 Delphi 如何設計 ASP Object,但不熟 ASP 物件的使用。 如果我的解說方向錯誤,在麻煩你說清楚你想要了解的東西。 ^^ |
dengguo
一般會員 發表:41 回覆:49 積分:23 註冊:2004-01-09 發送簡訊給我 |
ha0009:您好!!是这样的 ASP:
<% Set DelphiASPObj = Server.CreateObject("connstr.conn")
response.write(application("str"))
DelphiASPObj.outstr(str)
%> DELPHI: 其实我就是想用COM的属性或方法传值到ASP程式中
procedure Tconn.outstr(out str: WideString);
begin
response.write('1112');
application.Set_Value('str','123');
str:='123456';
end; procedure Tconn.Set_ss(const str1: WideString);
begin
set_ss('123456');
end; 在ASP能得到这两个值么,应该怎样做?
|
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
你好: 我了解你的意思了,在 ASP 中有幾個重要的物件 Appliction 代表整個網站, 屬於全域的物件 Session 代表某個使用者的連線, 屬於該使用者獨有。 以上兩個物件都有一個存放變數的記憶體空間,所以下面 兩段程式結果都是會在 Application 物件中增加一個名為 str 的變數。 delphi : application.Set_Value('str','123') VBS ASP : Application ("Str") = "123" 你也可以使用 COM 物件的屬性 / 程序將值傳給 ASP 作處理 set obj = Server.CreateObject ("AAALib.XXX") x = obj.PropertyA if x > 100 then ..... else ..... end if set obj = nothing 以上的解釋不曉得是不是你要的,如果不是在討論吧~ |
dengguo
一般會員 發表:41 回覆:49 積分:23 註冊:2004-01-09 發送簡訊給我 |
引言:我正是要"用 COM 物件的屬性 / 程序將值傳給 ASP 作處理",但是现在就是传递不过去了!! Set DelphiASPObj = Server.CreateObject("connstr.conn") str_x=DelphiASPObj.ss response.write(str_x) 这里STR_X为空白...请继续指点!!你好: 我了解你的意思了,在 ASP 中有幾個重要的物件 Appliction 代表整個網站, 屬於全域的物件 Session 代表某個使用者的連線, 屬於該使用者獨有。 以上兩個物件都有一個存放變數的記憶體空間,所以下面 兩段程式結果都是會在 Application 物件中增加一個名為 str 的變數。 delphi : application.Set_Value('str','123') VBS ASP : Application ("Str") = "123" 你也可以使用 COM 物件的屬性 / 程序將值傳給 ASP 作處理 set obj = Server.CreateObject ("AAALib.XXX") x = obj.PropertyA if x > 100 then ..... else ..... end if set obj = nothing 以上的解釋不曉得是不是你要的,如果不是在討論吧~ |
dengguo
一般會員 發表:41 回覆:49 積分:23 註冊:2004-01-09 發送簡訊給我 |
问题搞定了
Modifier --->[out, retval] function Tconn.outstr: WideString;
begin
result:='123456';
end; procedure Tconn.Set_ss(const str1: WideString);
begin end; function Tconn.Get_ss: WideString;
begin
result:='eeeeee';
end;
-------------------------------------
<% Set DelphiASPObj = Server.CreateObject("connstr.conn")
str=DelphiASPObj.outstr
response.write(str&"
") x=DelphiASPObj.ss response.write(x) %> |
Ktop_Robot
站務副站長 發表:0 回覆:3511 積分:0 註冊:2007-04-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |