五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

HTA

2022-02-25 08:20 作者:CSDN首席噴子  | 我要投稿

HTML應(yīng)用(HTML?Application,HTA)可以算是最早的WebView了,在Windows?2000到Windows?10中都可以使用,實(shí)際上就是一個(gè)啟用本地權(quán)限的IE瀏覽器,可以借助ActiveX在.NET上開發(fā)擴(kuò)展。編寫一個(gè)靜態(tài)HTML頁面,然后將其擴(kuò)展名修改為HTA,就變成了一個(gè)本地應(yīng)用,這個(gè)頁面擁有信任站點(diǎn)權(quán)限。但是相應(yīng)地,有些限制跨域的Web開發(fā)手段就不能使用了。除此之外,還必須考慮當(dāng)前使用的IE版本。

元信息標(biāo)簽

除了標(biāo)準(zhǔn)的HTML頁面外,可以在<head>標(biāo)簽里面加入一個(gè)<HTA:AppLICATION>標(biāo)簽用于描述應(yīng)用本身:

<head>

<HTA:AppLICATION

ICON="favicon.ico"

WINDOWSTATE="maximize">

</HTA:AppLICATION>

...

基于.NET的COM組件

對(duì)于IE?11版本來說,其必須使用.NET?4.0以上版本創(chuàng)建的COM組件。一個(gè).NET?上的COM組件實(shí)例如下:

using?System;

using?System.Runtime.InteropServices;

namespace?Exercise.Background

{

[ComVisible(true)]

[Guid("54AC547E-32D6-4540-9A2A-B5B71E2A313F")]

public?interface?ICalculator

{

????[ComVisible(true)]

????double?Add(double?val1,?double?val2);

}


[ComVisible(true)]

[Guid("8A7DE620-5D50-441D-ACC2-543CA8F2B664")]

public?class?CalculatorImpl:ICalculator

{

[ComVisible(true)]

public?double?Add(double?val1,?double?val2)

{

return?val1?+?val2;

}

}

}

編譯,然后在管理員權(quán)限下使用C:\Windows\Microsoft.NET\Framework或Framework64下v4.0.x目錄中的regasm.exe注冊(cè)生成的DLL。

在HTA中調(diào)用COM組件

在頁面中首先聲明組件(使用實(shí)現(xiàn)類的CLSID):

<object?CLASSID?=?"CLSID:?8A7DE620-?5D50-?441d-?ACC2-?543CA8F2B664"?id?=?"?calculator?"></object>

然后在Javascript中按HTML ID調(diào)用即可:

<script>

window.onload?=?function()?{

var?output?=?document.getElementById("output");

output.innerHTML?=?calculator.Add(1.0,?2.0).toString();

}

</script>

這種創(chuàng)建COM的方式只能創(chuàng)建單例??梢栽趩卫幕A(chǔ)上使用工廠方法創(chuàng)建其它對(duì)象,注意如果使用數(shù)據(jù)對(duì)象,數(shù)據(jù)對(duì)象也必須根據(jù)接口傳入?yún)?shù):

interface?IStudent?{

void?SetAge(int?age);

...

}

?

class?StudentImpl?{

public?void?SetAge(int?age) { ... }

...

}

換言之,對(duì)于Javascript而言只能看到COM的接口。如果不想按照COM的約定實(shí)現(xiàn)序列化,也可以借助JSON.NET等工具,直接傳遞JSON/XML字符串。

????

HTA的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
枣阳市| 克东县| 乌鲁木齐市| 焉耆| 晴隆县| 肇东市| 额尔古纳市| 全南县| 黑山县| 通辽市| 开化县| 平顺县| 廉江市| 政和县| 萨嘎县| 广平县| 江安县| 南华县| 威信县| 阜康市| 共和县| 宿松县| 莆田市| 汾阳市| 九江县| 十堰市| 紫阳县| 手游| 长汀县| 年辖:市辖区| 安陆市| 永济市| 汉中市| 鄯善县| 保德县| 宣威市| 沅陵县| 双江| 工布江达县| 瑞昌市| 彝良县|