好消息!軟航文檔控件(NTKO WebOffice)在Chrome 133版本上提示擴展已停用的解決方案

? ? ? ? 軟航文檔控件現有版本依賴Manifest V2擴展技術支持才能正常運行,然而這個擴展技術到2025年6月在Chrome高版本上就徹底不支持了,現在Chrome 133開始的版本已經開始彈出警告,必須手工開啟擴展支持才能正常運行。那么如何解決這個技術難題呢?

? ? ? ? PluginOK中間件作為一個實現瀏覽器與本地程序之間進行雙向調用的低成本、強兼容、安全可控、輕量級、易集成、可擴展、跨瀏覽器的原生小程序系統,解決起來毫無壓力,可在線體驗。步驟如下:

1、首先下載體驗軟件包:安裝包->http://local.zorrosoft.com/Files/PluginOKNet.exe 綠色版-> http://local.zorrosoft.com/Files/WRL.zip 綠色版下載后解壓運行installwrl.bat即可完成安裝。

2、打開體驗網站:http://local.zorrosoft.com/ocxfull.html 或者?http://local.zorrosoft.com/ocxframe.html,前者實現整個網頁區嵌入,后者實現網頁局部區域嵌入顯示,然后點擊連接,提示連接成功說明第一步安裝的中間件服務啟動正常。然后在發送按鈕上面的輸入框中替換內容如下:

A、ocxfull.html完整嵌入的填寫以下內容:

{"req":"Wrl_AppletStart","rid":99,"para":{"Type":"0","Title":"ActiveX網頁小程序","NodeName":"OcxWebApplet","PID":"OcxWebApplet","Flag":72,"Left":0,"Top":0,"Width":0,"Height":0,"IframeX":0,"IframeY":0,"Option":"0","Zoom":100,"ScrollTop":0,"Web": {"DataPath":"c:/OfficeDoc","ClassID":"{A39F1330-3322-4A1D-9BF0-0BA2BB90E970}"},"Open":"http://local.zorrosoft.com/Files/test.doc"}}

B、ocxframe.html 局部嵌入的填寫以下內容:

{"req":"Wrl_AppletStart","rid":8,"para":{"Type":"0","Title":"ActiveX網頁小程序","NodeName":"OcxWebApplet","PID":"OcxWebApplet","Flag":66,"Left":20,"Top":20,"Width":480,"Height":320,"IframeX":0,"IframeY":210,"BarW":0,"BarH":0,"Option":"0","Web": {"DataPath":"c:/OfficeDoc","ClassID":"{A39F1330-3322-4A1D-9BF0-0BA2BB90E970}"},"Open":"http://local.zorrosoft.com/Files/test.doc"}}

發送內容替換完成后,直接點擊發送,正常情況下,您可以分別看到如下畫面:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 完整嵌入效果

? ? ? 局部嵌入效果,點擊適配顯示切換,也可以自動適配網頁區顯示大小聰明右側和底部顯示。

對于控件提供的開發接口,也提供了自動化的接口請求支持:

11)、請求獲取屬性值
Name 指定屬性名稱 如遇到取子接口的,名稱增加子接口的名稱,支持多級,比如獲取VLC播放列表的數量名稱用playlist.itemCount 下同
{"req":"OCX_GetProperty","rid":11,"para":{"Name":"src"}}
{"req":"OCX_GetProperty","rid":11,"para":{"Name":"volume"}}
{"req":"OCX_GetProperty","rid":11,"para":{"Name":"Toolbar"}}
{"req":"OCX_GetProperty","rid":11,"para":{"Name":"playlist.itemCount"}}
{"req":"OCX_GetProperty","rid":11,"para":{"Name":"input.rate"}}
{"req":"OCX_PutProperty","rid":11,"para":{"Name":"video.logo.opacity"}}
返回: {"ret":0,"rid":11,"data":{"Ret":0,"Val":""}}
如果返回的是自動化接口,Val的值類似這樣的:playlist={CatchDispatch},需要繼續調用這個自動化接口的屬性或方法時,接下來的請求里指定參數{CatchDispatch},否則默認調用控件主接口的,下同

12)、請求設置屬性
Name 指定屬性名稱 如遇到設置子接口的,名稱增加子接口的名稱,支持多級
Val 指定屬性值,字符串用""包含,字符串中包含\或"等字符時,需要加轉義符\,數值型不用"",BOOL類型設置真時數值是-1
當需要釋放緩存的自動化接口時,Name可以指定為類似這樣的playlist={CatchDispatch},Val設置為0或空
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"src","Val":"d:/zorro/test.pdf"}}
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"Toolbar","Val":-1}}
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"Visible","Val":-1}}
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"volume","Val":0}}
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"input.rate","Val":2}}
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"video.logo.opacity","Val":50}}
{"req":"OCX_PutProperty","rid":12,"para":{"Name":"playlist={CatchDispatch}","Val"0}}
返回: {"ret":0,"rid":12,"data":{"Ret":0}}

13)、請求無傳入參數方法
Name 指定方法名稱 如遇到調用子接口的,名稱增加子接口的名稱,支持多級,比如調用VLC播放列表播放方法名稱用playlist.play 下同
DID 也可以指定方法序號
{"req":"OCX_Invoke0","rid":13,"para":{"Name":"gotoFirstPage"}}
{"req":"OCX_Invoke0","rid":13,"para":{"Name":"gotoNextPage"}}
{"req":"OCX_Invoke0","rid":13,"para":{"Name":"playlist.play"}}
返回: {"ret":0,"rid":13,"data":{"Ret":0,"Val":""}}

14)、請求只傳入1個參數方法
Name 指定方法名稱 如遇到調用子接口的,名稱增加子接口的名稱,支持多級,比如調用VLC播放列表播放方法名稱用playlist.add 下同
DID 也可以指定方法序號
Para1 對應參數值 ,字符串用""包含,字符串中包含\或"等字符時,需要加轉義符\,數值型不用"";參數如果需要再次調用自動化接口獲取的值,可以這樣傳參{DispatchPara}=playlist.itemCount 下同
{"req":"OCX_Invoke1","rid":14,"para":{"Name":"LoadFile","Para1":"d:/zorro/test.pdf"}}
{"req":"OCX_Invoke1","rid":14,"para":{"Name":"setShowToolbar","Para1":0}}
{"req":"OCX_Invoke1","rid":14,"para":{"Name":"video.logo.file","Para1":"D:\\Zorro\\test.png"}}
{"req":"OCX_Invoke1","rid":14,"para":{"Name":"playlist.add","Para1":"http://www.zorrosoft.com/Files/PluginOKBrowserApplet.mp4"}}
返回: {"ret":0,"rid":14,"data":{"Ret":0,"Val":""}}

15)、請求只傳入2個參數方法
Name 指定方法名稱
DID 也可以指定方法序號
Para1和Para2分別對應參數1和2數值 如果需要傳緩存的自動化接口,可以這樣傳參{CatchDispatch}=playlist
{"req":"OCX_Invoke2","rid":15,"para":{"Name":"printPages","Para1":1,"Para2":2}}
返回: {"ret":0,"rid":15,"data":{"Ret":0,"Val":""}}

16)、請求只傳入3個參數方法
Name 指定方法名稱
DID 也可以指定方法序號
Para1、Para2、Para3分別對應參數1、2和3的數值
{"req":"OCX_Invoke3","rid":16,"para":{"Name":"printPagesFit","Para1":"1","Para2":"2","Para3":"0"}}
返回: {"ret":0,"rid":16,"data":{"Ret":0,"Val":""}}

17)、請求只傳入4個參數方法
Name 指定方法名稱
DID 也可以指定方法序號
Para1、Para2、Para3、Para4分別對應參數1、2、3和4的數值
{"req":"OCX_Invoke4","rid":17,"para":{"Name":"setCurrentHighlight","Para1":255,"Para2":0,"Para3":255,"Para4":0}}
返回: {"ret":0,"rid":17,"data":{"Ret":0,"Val":""}}

18)、請求只傳入5個參數方法
Name 指定方法名稱
DID 也可以指定方法序號
Para1、Para2、Para3、Para4、Para5分別對應參數1、2、3、4和5的數值
福昕OFD版式辦公套件OCX 調用打開文檔
{"req":"OCX_Invoke5","rid":18,"para":{"Name":"openFile","Para1":"d:/zorro/test.pdf","Para2":"0","Para3":"","Para4":"","Para5":""}}
返回: {"ret":0,"rid":18,"data":{"Ret":0,"Val":""}}

19)、請求只傳入6個參數方法
Name 指定方法名稱
DID 也可以指定方法序號
Para1、Para2、Para3、Para4、Para5、Para6分別對應參數1、2、3、4、5和6的數值
{"req":"OCX_Invoke6","rid":19,"para":{"Name":"","Para1":"","Para2":"","Para3":"","Para4":"","Para5":"","Para6":""}}
返回: {"ret":0,"rid":19,"data":{"Ret":0,"Val":""}}
支持更多參數的接口也有,就不一一展示了。

PluginOK中間件也不僅僅支持NTKO WebOffice文檔控件,金格iWebOffice、OfficeCtrl、微軟DSOFramer、點聚等文檔控件也毫無壓力。

最最重要的是,基于PluginOK中間件實現的PageHiOffice文檔控件,可以全面碾壓以上文檔控件對Office、金山WPS及永中Office的兼容性,而且還額外提供了完整嵌入模式,功能更全,完全不依賴瀏覽器提供的任何插件或擴展接口,不用再擔心瀏覽器的升級導致技術方案失效引發的系統停擺風險!在線體驗可以戳這里-> VUE2:http://local.zorrosoft.com/office?VUE3:http://local.zorrosoft.com/office3 JS:http://local.zorrosoft.com/officeJS

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/75605.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/75605.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/75605.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

字典樹與01trie

字典樹簡介 當我們通過字典查一個字或單詞的時候,我們會通過前綴或關鍵字的來快速定位一個字的位置,進行快速查找。 字典樹就是類似字典中索引表的一種數據結構,能夠幫助我們快速定位一個字符串的位置。 字典樹是一種存儲字符串的數據結構…

二十五、實戰開發 uni-app x 項目(仿京東)- 前后端輪播圖

定義了一個名為 Swiper 的Java類,用于表示一個輪播圖實體。它使用了 Jakarta Persistence API (JPA) 來映射數據庫表,并使用了 Lombok 庫來簡化代碼。以下是對代碼的詳細講解: 1. 包聲明 package com.jd.jdmall.model; 這行代碼聲明了該類所在的包路徑為 com.jd.jdmall.mode…

游戲搖桿開發:利用 Windows API 實現搖桿輸入捕獲

在現代游戲開發中,游戲搖桿(Joystick)作為一種重要的輸入設備,能夠為玩家提供更加沉浸式的游戲體驗。Windows 操作系統提供了一系列 API 函數,允許開發者輕松地捕獲和處理游戲搖桿的輸入。本文將介紹如何使用 Windows …

Ceph集群2025(Squid版)快速對接K8S cephFS文件存儲

ceph的塊存儲太簡單了。所以不做演示 查看集群 創建一個 CephFS 文件系統 # ceph fs volume create cephfs01 需要創建一個子卷# ceph fs subvolume create cephfs01 my-subvol -----------------#以下全部自動創建好 # ceph fs ls name: cephfs01, metadata pool: c…

Python中數據結構元組詳解

在Python中,元組(Tuple)是一種不可變的序列類型,常用于存儲一組有序的數據。與列表(List)不同,元組一旦創建,其內容無法修改。本文將詳細介紹元組的基本操作、常見運算、內置函數以及…

游戲引擎學習第183天

回顧和今天的計劃 我對接下來的進展感到非常興奮。雖然我們可能會遇到一些問題,但昨天我們差不多完成了將所有內容遷移到新的日志系統的工作,我們正在把一些內容整合進來,甚至是之前通過不同方式記錄時間戳的舊平臺層部分,現在也…

Spring 如何處理循環依賴

在 Spring 框架里,循環依賴指的是多個 Bean 之間相互依賴,從而形成一個閉環。例如,Bean A 依賴 Bean B,而 Bean B 又依賴 Bean A。Spring 主要通過三級緩存機制來處理循環依賴,下面詳細介紹相關內容。 1. 三級緩存的定…

Android開發layer-list

Android開發layer-list 它的用處可以在drawable上進行多圖拼接&#xff0c;比如啟動頁&#xff0c;不想圖片被拉伸就這么做。還有做某些線突出來。 示例代碼&#xff1a; <?xml version"1.0" encoding"utf-8"?> <layer-list xmlns:android&q…

手機測試,工作中學習

要學習各種機型的截圖方式、開發模式在哪。 榮耀機型&#xff1a;截圖&#xff1a;關節快速敲兩下。開發者模式在“系統和更新”里。 1.出現缺陷&#xff0c;需要獲取日志。 學習adb生成日志&#xff1a;當測試中出現缺陷的&#xff0c;使用adb logcat -d > d:/log.txt …

OBS虛擬背景深度解析:無需綠幕也能打造專業教學視頻(附插件對比)

想要錄制教學視頻卻苦于背景雜亂&#xff1f;本文將手把手教你用OBS實現專業級虛擬背景效果&#xff0c;無需綠幕也能輕松營造沉浸式教學場景。文末附6個提升畫面質感的免費背景資源&#xff01; 一、虛擬背景的核心價值&#xff1a;從「教師宿舍」到「虛擬講堂」的蛻變 我們調…

零基礎搭建智能法律知識庫!騰訊云HAI實戰教程

為什么需要法律知識庫&#xff1f; 想象一下&#xff0c;你的所有法律文件都在手邊&#xff0c;隨時可以搜索和分析。這就是法律知識庫的魅力所在。對于法律專業人士、處理大量法律文檔的企業&#xff0c;甚至是希望了解法律事項的普通人來說&#xff0c;法律知識庫都是一個不…

Rust從入門到精通之進階篇:19.Rust 生態系統

Rust 生態系統 Rust 擁有一個豐富而活躍的生態系統&#xff0c;提供了各種庫和框架來支持不同領域的開發。在本章中&#xff0c;我們將探索 Rust 生態系統中的主要組件&#xff0c;了解常用的庫和工具&#xff0c;以及如何在項目中有效地使用它們。 Rust 包管理&#xff1a;C…

前端面試:如何去衡量用戶操作過程中否卡頓?

衡量用戶在應用中的操作是否卡頓是前端開發中的一個關鍵任務&#xff0c;涉及用戶體驗的各個方面。以下是一些常用的方法和工具&#xff0c;可以幫助你有效地評估用戶操作中的卡頓情況&#xff1a; 1. 使用性能分析工具 瀏覽器開發者工具&#xff1a;大多數現代瀏覽器&#xf…

Python技術棧與數據可視化創意實踐詳解(三)

Python在數據可視化領域憑借豐富的庫和靈活的生態系統&#xff0c;能夠實現從基礎圖表到復雜交互式可視化的全場景覆蓋。以下從技術選型、創意實現到實戰優化進行系統化解析&#xff0c;并提供可直接落地的代碼示例。 一、Python數據可視化技術棧 1. 基礎與統計可視化 Matplotl…

訂票系統|基于Java+vue的火車票訂票系統(源碼+數據庫+文檔)

訂票系統目錄 基于Springbootvue的火車票訂票系統 一、前言 二、系統設計 三、系統功能設計 1會員信息管理 2 車次信息管理 3訂票訂單管理 4留言板管理 四、數據庫設計 五、核心代碼 六、論文參考 七、最新計算機畢設選題推薦 八、源碼獲取&#xff1a; 博主介紹…

Snowflake 算法的實現

snowflake(雪花算法)是一個開源的分布式 ID 生成算法&#xff0c;結果是一個 long 型的 ID。snowflake 算法將 64bit 劃分為多段&#xff0c;分開來標識機器、時間等信息&#xff0c;具體組成結構如下圖所示&#xff1a; snowflake 算法的核心思想是使用 41bit 作為毫秒數&…

C 語言中, scanf 函數在哪些情況下會結束輸入讀取:

在 C 語言中&#xff0c; scanf 函數在以下幾種情況下會結束輸入讀取&#xff1a; &#xff1a; 1. 遇到指定格式匹配失敗&#xff1a; scanf 按照格式字符串要求讀取輸入。當輸入數據格式與格式字符串不匹配時&#xff0c;就會結束讀取。例如 scanf(“%d”, &num) 要求輸…

括號合法題

一、括號合法題 2116. 判斷一個括號字符串是否有效 //采用從左往右和從右往左遍歷的貪心算法&#xff0c;分別保證前綴合法&#xff0c;后綴合法。public boolean canBeValid(String s, String locked) {int ns.length();if (n%21) return false;int num0;// 從左到右掃描&…

圖生生AI商品圖:一鍵更換商品,保留原背景

圖生生AI商品圖工具&#xff0c;推出 “更換商品”功能&#xff0c;只需上傳一張參考圖和自己的商品圖&#xff0c;AI自動完成商品替換&#xff0c;保留原背景&#xff0c;3秒生成專業級電商圖&#xff01;無需PS技能&#xff0c;無需復雜操作&#xff0c;真正實現 “一鍵換商品…

[7-01-03].SpringBoot3集成MinIo

MinIO學習大綱 一、Spingboot整合MinIo 第1步&#xff1a;搭建SpringBoot項目&#xff1a; 第2步&#xff1a;引入minio依賴 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi&q…