1. MapInfo二次開發幾種方式的對比
一、利用MapBasic開發
MapBasic是Mapinfo自帶的二次開發語言,它是一種類似Basic的解釋性語言,利用MapBasic編程生成的*.mbx文件能在Mapinfo軟體平台上運行,早期的Mapinfo二次開發都是基於MapBasic進行的。MapBasic學起來容易,用起來卻束縛多多,無法實現較復雜的自定義功能,用它來建立用戶界面也很麻煩,從現在角度看,MapBasic比較適合用於擴展Mapinfo功能。
二、利用OLE自動化開發
1. 建立Mapinfo自動化對象
基於OLE自動化的開發就是編程人員通過標准化編程工具如VC、VB、Delphi、PB等建立自動化控制器,然後通過傳送類似MapBasic語言的宏命令對Mapinfo進行操作。實際上是將Mapinfo用作進程外伺服器,它在後台輸出OLE自動化對象,供控制器調用它的屬性和方法。
OLE自動化開發的首要一步就是建立Mapinfo自動化對象,以Delphi為例(後面都是如此),你可設定一個Variant類型的全程變數代表OLE自動化對象,假設該變數名為olemapinfo,那麼有:
oleMapinfo := CreateOleObject('Mapinfo.Application')
一旦OLE自動化對象建立,也就是後台Mapinfo成功啟動,你就可以使用該對象的Do方法向Mapinfo發送命令,如:
oleMapinfo.Do('Set Next Document Parent' + WinHand + 'Style 1') 中國3S吧 3s8.cn
這一命令使Mapinfo窗口成為應用程序的子窗口,WinHand是地圖窗口句柄,style 1 是沒有邊框的窗口類型。你還可以使用自動化對象的Eval方法返回MapBasic表達式的值,如下面語句返回當前所打開的表數:
TablesNum:=olemapinfo.eval('NumTables()')
你也可以直接調用Mapinfo菜單或按鈕命令對地圖窗口進行操作,如地圖放大顯示:
oleMapinfo.RunMenuCommand(1705)
2. 建立客戶自動化對象觸發CallBack
基於OLE自動化開發的難點在於所謂的CallBack,Mapinfo伺服器對客戶程序地圖窗口的反應叫CallBack,假如你在地圖窗口中移動地圖目標,Mapinfo能返回信息告訴你地圖目標當前的坐標位置,這就是CallBack功能。如果你想定製自己的地圖操作工具或菜單命令,你必須依靠CallBack。但是想捕獲CallBack信息,你的客戶程序必須具備接收CallBack信息的能力,為此需要在客戶程序中定義自己的OLE自動化對象,如:
//定義界面
IMyCallback = interface(IDispatch)
['{2F4E1FA1-6BC7-11D4-9632-913682D1E638}']
function WindowContentsChanged(var WindowID: Integer):SCODE;safecall;
function SetStatusText(var StatusText: WideString): SCODE; safecall; 專業的3S站 3s8.cn
//定義界面實現
TMyCallback = class(TAutoObject, IMyCallback)
function SetStatusText(var StatusText: WideString): SCODE; safecall;
function WindowContentsChanged(var WindowID: Integer): SCODE;safecall;
其中WindowContentsChanged函數用於返回變化窗口的ID號,即當地圖窗口變化時(如放大、縮小),讓Mapinfo將地圖窗口的ID號返回給客戶程序; 另一個SetStatusText函數返回Mapinfo狀態條變化信息。編程人員不能隨意定義這些函數,因為只有在三種情況下Mapinfo伺服器的CallBack才會被觸發:(1)地圖窗口發生變化,觸發函數為WindowContentsChanged;(2)Mapinfo狀態條信息改變,觸發函數為SetStatusText;(3)用戶選擇自定義工具或菜單命令在地圖窗口上操作,如用戶定製的畫線工具,當用戶在地圖窗口畫線時觸發Mapinfo的CallBack返回線的坐標位置。
建立客戶自動化對象後,調用MapInfo自動化對象的SetCallback方法將客戶自己定義的自動化對象告訴Mapinfo,只要程序一運行,客戶自動化對象就會自動在注冊表中注冊,然後就能收到CallBack信息了,如:
My:=MyCallBack.Create
oleMapInfo.SetCallBack(My)
這里打一個比方我想會有助於理解上述機制,客戶程序與Mapinfo之間的交互就像舞台指揮與木偶演員的交流,客戶程序中的地圖窗口或說Mapinfo子窗口只不過是一個牽線木偶,後台的Mapinfo才是真正操縱木偶的演員,所以客戶程序必須與後台Mapinfo建立正向、反向的聯系機制,才能操縱地圖窗口中的圖形目標。 中國3S吧 3s8.cn
三、利用MapX開發
1. 掌握使用MapX
MapX是Mapinfo公司最新推出的ActiveX控制項產品,目前已經發展到MapX4.5。由於MapX是基於Windows操作系統的標准控制項,因而能支持VC、VB、Delphi、PB等標准化編程工具,使用時只需將控制項裝入開發環境,裝入控制項後,開發環境ActiveX工具條上會增加一個控制項按鈕Map,把它拖放到窗體上就可建立一個TMap類型的ActiveX地圖對象Map,通過設置或訪問該Map對象的屬性、調用該Map對象的方法及事件,便能快捷地將地圖操作功能溶入到你的應用程序中。
MapX由一系列Object(對象)和Collection(對象集合)組成,Map是最基本的對象,每個Map由Layer(層)、Dataset(數據集)和Annotation(標注)這三個對象及對象集合(Layers、Datasets、Annotations)來定義, 其中Layer用於操作地圖圖層,Dataset用於訪問空間對象的屬性數據,Annotation用於在地圖上添加文本、符號等標注,掌握上述三個主要對象的特徵後,再順藤摸瓜掌握下一級對象的特徵,如每個Layer又由Feature(點、線、面、文本圖形目標)對象及對象集合(Features)定義,每個Dataset由Field(屬性數據域)對象及對象集合(Fields)定義......,這樣很快就能把MapX學到手。
2. 定義地圖坐標系
在MapX開發中需要特別注意地圖坐標系問題,MapX地圖坐標系分為地圖顯示坐標系和內部計算坐標系,兩者互為獨立,在GIS應用開發中根據應用需要設置好這兩種坐標系非常重要,因為坐標系一方面影響軟體系統的內部坐標處理,另一方面影響地圖的外觀顯示。Map對象的坐標系及投影通過CoordSys對象的Set方法定義:
Set(Type, [Datum], [Units], [OriginLongitude], [OriginLatitude],
[StandardParallelOne], [StandardParallelTwo], [Azimuth], [ScaleFactor],
[FalseEasting], [FalseNorthing], [Range], [Bounds], [AffineTransform])
其中主要參數:Type表示投影類型,Type為1時地圖坐標以經緯度表示,後面都為可選參數,其中Datum為地球基準面;Units為坐標單位,如Units為7表示以米為單位;OriginLongitude、OriginLatitude分別為起始經度和緯度;StandardParallelOne、StandardParallelTwo為第一、第二標准緯線,該參數與地圖投影相關。
通過設置Map對象的DisplayCoordSys和NumericCoordSys屬性返回的CoordSys對象,就可設定地圖顯示坐標系和內部計算坐標系。舉例如下:
procere TMain.DefineMapParam(); 專業的3S站 3s8.cn
var
MapDatum: Variant;//地球基準面
begin
try
MapDatum := CreateOleObject('MapX.Datum.4'); //建立基準面對象
//定義北京54坐標系基準面
// (Ellipsoid, ShiftX, ShiftY, ShiftZ, RotateX, RotateY, RotateZ, ScaleAdjust, PrimeMeridian)
MapDatum.set(3, 24, -123, -94, -0.02, 0.25, 0.13, 1.1, 0);
//定義北京54坐標系經緯度作為內部計算坐標系
Map1.NumericCoordSys.Set_(1, MapDatum);
//定義北京54坐標系30度標准緯線麥卡托投影作為顯示坐標系,單位為米
Map1.DisplayCoordSys.Set_(26,MapDatum,7,0,0,30);
finally
VarClear(MapDatum);
end;
坐標系是GIS系統的基石,正確設置坐標系是系統成敗的關鍵。
3. 操縱地圖對象
你可以簡單地載入一個GeoSet文件,給Layers對象集合賦予具體的內容,隨之在Map對象中就能看到地圖顯示,GeoSet文件類似MapInfo中的工作空間,MapX中帶有Geoset文件的編輯器GeosetMangater.exe,用戶可在編輯器中組合及設置圖層,然後保存生成一個 *.gst 文件直接調入Map對象,這樣可以節省時間。你也可以通過Layers對象的Add 或 Remove 方法添加或移走地圖圖層,如: 中國3S吧 3s8.cn
Map.layers.Add(FileName); // 添加圖層,FileName為文件全路徑名
Map.Layers.Remove(3); // 移走地圖第三層
Layers對象由一組Layer對象組成,通過Layer對象的Features和Selection對象集合你可以操縱和選擇圖層上的圖形目標,如:
Map.Layers.Item(1).AddFeature(Newobj); //將新建對象Newobj添加到圖層一
4. 地圖數據捆綁
數據捆綁是將不同來源的數據對應到地圖層的過程,捆綁結果會產生一個Dataset對象,Dataset對象的集合組成Datasets Collection,它定義了Map對象的數據集屬性。 你可以通過Datasets將不同來源的數據捆綁到地圖上實現圖文互動,或創建專題圖,如下例ODBC Access數據的捆綁及專題分析:
procere TMapForm.ODBC1Click(Sender: TObject);
var
param: ODBCQueryInfo ;
ds: Dataset; //定義數據集
Datafields: Fields; //定義數據域
begin
param.SqlQuery := 'select * from China'; //選擇Access資料庫中的China表
param.DataSource := 'MapChina'; //ODBC 數據源名
param.ConnectString := 'ODBC;'; //或是user = ... Pwd = ... , 定義ODBC連接
Datafields.Add('GEONAME','GEONAME', miAggregationAuto,miTypeString); //添加數據域GEONAME
中國3S吧 3s8.cn
Datafields.Add('POPU','POPU', miAggregationAuto,miTypeNumeric); //添加數據域POPU
//將Access數據捆綁到Mapinfo China表
ds := Map.Datasets.Add(miDataSetODBC, param, unassigned, unassigned, unassigned, 'CHINA', Datafields, unassigned);
ds.Themes.Add(miThemeRanged, 'POPU', 'MyTheme'); //添加一個范圍專題圖
end;
5. 建立客戶定製工具
你還可以定製自己的地圖操作工具,下面通過定製一個名為Info的信息按鈕工具簡述方法步驟:
(1)定義客戶工具常量
Const CUSTOM_INFO_TOOL = 1
(2)利用Map對象的CreateCustomTool方法定義客戶工具,方法為:
CreateCustomTool (ToolNumber, Type, Cursor, [ShiftCursor] , [CtrlCursor], [InfoTips])
其中ToolNumber為工具號,即上面定義的常量;Type為工具類型;Cursor為游標形狀,其他參數可選。
//定義Info工具為十字游標點觸發工具
Map.CreateCustomTool(CUSTOM_INFO_TOOL, miToolTypePoint, miCrossCursor, miArrowCursor, miArrowCursor, unassigned)
(3)在Map對象事件ToolUsed中編寫工具的Handler(操作內容)
procere TMain.MapToolUsed(Sender: TObject; ToolNum: Smallint; X1, Y1, X2, Y2, Distance: Double;
Shift, Ctrl: WordBool; var EnableDefault: WordBool);
begin
Case ToolNumber of
CUSTOM_INFO_TOOL : //信息工具Info
try
……
end;
(4)定義信息按鈕的Click事件
procere TMain.InfoClick(Sender: TObject);
begin
Map.CurrentTool:=CUSTOM_INFO_TOOL;
end
2. openfire怎樣進行二次開發
您好,很高興為你解答,如下:
1、下載源代碼
2、把源代碼解壓出的openfire_src文件夾放至eclipse workplace(注意:若是變更了解壓出來的文件名,則接下來所有用到文件名的地方都要作出相應更改,否則會報錯!)
3、把openfire_src文件夾里的三個無用的html文件刪除
4、打開eclipse,新建一個名為openfire_src的java Project,然後finish
註:此處的默認路徑為openfire_src文件夾的絕對路徑
5、項目建好後如圖所示,其中有幾個目錄報錯,是由於缺少3個jar包:coherence.jar、coherence-work.jar、tangosol.jar
6、下載這幾個jar包,然後復制到/openfire_src/build/lib目錄下
7、選中3個新添加的jar包,點擊右鍵,選擇Build Path -> Add to Build Path
8、把jar包編譯後還是會有報錯,如圖,解決辦法是直接找到java源文件SipCommRouter.java和SipManager.java ,使用eclipse的自動修復,把錯誤修復,一般是沒有實現抽象方法和沒有處理異常。
9、點擊Window -> Show View -> Ant,在Ant中選擇Add Buildfiles,將build目錄下的build.xml選中,然後ok
10、把Java JDK的lib目錄下的tools.jar包拷貝到 Java JRE的lib目錄下
11、運行選中的文件
12、運行成功後,刷新工程,目錄多出兩個文件夾
13、將target/lib目錄下的所有jar包選中,單擊右鍵,選擇Build Path –> Add to Build Path(和步驟7相似)
14、選中項目,點擊run -> run configurations
15、選擇run configurations左邊的Java Application,單擊右鍵,選擇New
16、選中Main選項卡,點擊Browse選擇openfire_src項目;單擊Search選擇ServerStarter - org.jivesoftware.openfire.starter,結果如下
17、選中Arguments選項卡,在VM arguments中填入-DopenfireHome="${workspace_loc:openfire_src}/target/openfire"
18、選中Classpath選項卡,選中User Entries,點擊右邊的Advanced按鈕
19、在彈出的框中選中Add Folders,選中src/i18n文件夾,點擊ok
20、重復上一步驟把src/resources選中添加,結果如下:User Entries下多了兩個文件夾
21、選中Common選項卡,將Debug和Run打鉤,然後點擊apply,再點擊run
22、成功運行結果
23、在瀏覽器中輸入地址
24、選擇中文,然後繼續。伺服器設置可直接跳過。資料庫設置選擇標准資料庫連接,點擊繼續
25、在資料庫設置-標准連接設置界面,選擇資料庫驅動mysql,更改資料庫url,其中需要更改的有伺服器ip地址,還有資料庫名,建議單獨建立一個名為openfire的資料庫。輸入資料庫管理員的賬號和密碼,下一步。
26、資料庫連接成功後界面,直接點擊繼續。
27、管理員賬戶設置界面,輸入管理員的郵箱地址,還有管理員的賬號的密碼,初始賬號為admin。
28、完成設置,登錄到管理控制台,初始賬戶名admin密碼為上一步設置的密碼。
29、登陸成功後顯示
30、檢測伺服器是否配置成功
31、安裝Spark,一路next,然後finish。運行Spark,創建Spark賬號
32、使用創建的賬號登陸Spark,登陸成功可在Openfire管理控制台的用戶組看到新注冊的用戶和在線狀態
轉載,僅供參考。
3. 通達oa二次開發需掌握什麼
1、Html (Css、JavaScript,能會JQuery之類的js框架就更好了,初學者不要求)
2、php語言, 通達都是用PHP寫的,這個是必須的
3、資料庫知識,有資料庫基礎就行,通達用的是MySQL
4、伺服器配置、主要是能把通達OA裝好,弄清楚目錄,靈活使用
5、通達OA管理,這個就很簡單了很容易上手
基本上掌握這些,做通達的二次開發就沒有問題了,再有就是了解資料庫中的表結構,這個需要慢慢積累。說起來不是很多,但也需要積累練習才能達到自由開發的程度,僅作參考吧。
工作流那部分算不上真正的開發,剛接觸的理解起來也需要些時間,算作一項吧。
4. github 上的開源程序我要二次開發,我能把github上的程序下載下來放在自己伺服器上二次開發
這個要看你的伺服器配置了,如果有任何問題,都是無法進行的,很可能無法保留數據的風險,自行配置吧!
5. 如何基於報表工具finereport進行二次開發
不懂具體指的是哪方面,如果是指將FineReport應用集成到已有的Web工程上的話,由於FineReport提供的報表伺服器其實就是一個Servlet,所以在配置FineReport伺服器之前,首先確保機器上已經安裝了用來解析Servlet的web伺服器如resin。resin相關知...
6. 怎麼才能快速了解一個系統的sql資料庫架構從而進行二次開發
首先在SQL中利用企業管理器或向導建立一個資料庫,命名為學生管理系統, 啟動SQL Sever服務,運行企業管理器,單擊要創建資料庫的伺服器左邊的加號圖標,樹形目錄,在「資料庫」節點上右擊滑鼠,在彈出的快捷菜單中選則「新建資料庫」命令,然後按照提示一步步建立資料庫,不再詳細敘述。 假設學生管理系統下有三個表,分別為學生表、課程表、修課表,表的結構分別如下: 學生表(student) ( 學號(sno) 普通編碼定長字元類型,長度7,主碼, 姓名(sname) 普通編碼定長字元類型,長度8,非空, 性別(ssex) 統一編碼定長字元類型,長度1, 年齡(sage) 微整型, 所在系(sdept) 統一編碼可變長字元類型,長度20 ) 課程表(course) ( 課程號(cno) 普通編碼定長字元類型,長度6,主碼, 課程名(cname) 統一編碼定長字元類型,長度10,非空, 學分(credit) 小整型, 學期(semester) 小整型 ) 修課表(sc)( 學號(sno) 普通編碼定長字元類型,長度7,主碼,外碼 課程號(cno) 普通編碼定長字元類型,長度6,主碼,外碼 成績(grade) 小整型, 修課類別(type)普通編碼定長字元類型,長度4 ) 則創建表的語句分別為: create table Student( Sno char(7) primary key, Sname char(8) not null, Ssex nchar(1), Sage tinyint, Sdept nvarchar(20) ) create table Course( Cno char(6) primary key, Cname nchar(10) not null, Credit smallint, Semester smallint ) create table SC( Sno char(7), Cno char(6), Grade smallint, Type char(4), primary key(Sno,Cno), Foreign key(Sno) References Student (Sno), Foreign key(Cno) References Course (Cno) ) 各表的結構大體如此,如有變化可自行修改。 以上資料庫和表就基本建立好了,然後就可以通過數據導入或SQL語句等向資料庫中添加學生的各項具體數據了。
7. 開源oa辦公系統怎麼進行二次開發
要在開源OA辦公系統上進行二次開發並不是一件簡單的事情。
首先需要研究開源OA系統的業務邏輯、設計思路及底層資料庫表結構,然後再研究OA代碼的實現思路(含流程處理、代碼邏輯、功能關聯等),第三是根據研究得到的業務邏輯及系統功能,結合目標系統的要求,做出有針對性的修改要求,最後才是根據設計思路對OA系統進行改造或二次開發。
從時間上要完成前兩步的工作花費的時間比較多,因為其中需要思考與理解的東西非常多,只有理解了這些東西後才能進行後兩步工作;後兩步的花費的時間和精力相反較少,畢竟開源OA本身已具備相當的功能,只要將原有功能與目標功能要求進行比較、分析後得到具體要做的工作,然後根據這些工作制定相應的工作計劃,再執行便可以了。
8. 帝國CMS怎麼做二次開發
《帝國網站管理系統》英文譯為"Empire CMS",簡稱"Ecms",它是基於B/S結構,且功能強大而帝國CMS-logo易用的網站管理系統。本系統由帝國開發工作組獨立開發,是一個經過完善設計的適用於Linux/windows引/Unix等環境下高效的網站解決方案。從帝國新聞系統1.0版至今天的帝國網站管理系統,它的功能進行了數次飛躍性的革新,使得網站的架設與管理變得極其輕松!
一、超強系統模型擴展功能
帝國CMS是不同於以往的CMS系統,他可以直接在後台通過新建表、自定義欄位,然後組成新的系統模型。從而實現各種適合用戶自己的系統。如下載系統、音樂系統、商城系統、產品庫等等。。。並且此功能為數據量較大的網站進行數據部署(將信息量分配於不同的信息表)。並且無論是系統內置還是用戶自定義的模型,每個模型都有自己的採集。如果會點程序,將能擴展更多更復雜的系統。此功能詳細使用可參考使用文檔。
二、強大的信息採集功能
本系統無論是內置的系統模型還是用戶自定義的模型都有自己相應的採集。方便用戶收集信息。 ·使用簡單:無需會任何程序,只需在相應的內容加上相應的標簽即可。 ·多重過濾:同一鏈接可設置不重復採集;設置採集關鍵字(不包含不採集);內容字元替換;廣告過濾;過濾相似信息;過濾標題相同信息;可設置採集前幾條記錄。 ·採集區域更准確:整體頁面區域正則+信息鏈接區域正則 ·支持頁面編碼轉換:目前支持gb2312、big5、utf-8編碼轉換 ·效率更高:採用分組採集與入庫;支持多線程(節點)採集 ·方便性:採集可選是否馬上入庫(特別對於掛機采,非常方便);填寫採集正則後可預覽採集結果;復制、清空節點;入庫可選擇「選擇式入庫」與「全部入庫式」;對採集的臨時數據進行管理; ·其他特性:支持多列表採集;支持內容分頁採集;支持遠程保存圖片/FLASH/附件,圖片水印,只要定義的欄位為img/flash/file均支持遠程保存
三、完善的會員系統
系統可按會員的「會員組」、「有效期(包年/季/月)」、「點數」對會員進行分類。用戶可後台增加/修改/刪除會員組,會員組可設置會員級別、收藏夾數、每天最大下載數。這些分類均對系統的所有系統模型有效,如查看信息的許可權控制、扣除點數;下載/在線觀看信息的許可權控制、扣除點數、每天下載數限制,可設置重復扣除點數間隔時間;用點數/預付款購買商城模型的商品等等。 會員系統其他功能:用戶注冊、修改資料、購物車、收藏夾、查看狀態、在線沖值、查詢購買記錄、查詢下載記錄、信息投稿、投稿增加積分 後台點卡功能:支持批量添加點卡、可按有效期/點數沖值、批量贈送點數
四、萬能會員整合介面
通過此介面可整合任何mysql的系統,無論他是用什麼語言開發的。配置非常容易,只需配置幾個參數即可,並且支持會員組與點數的整合
五、模板全標簽化
·只要會網頁編輯軟體(如Dreamweaver、Frontpage)即可製作各種出色的模板,只需在顯示信息的地方加上相應的標簽即可,無需任何程序代碼。 ·內置非常靈活的萬能調用標簽:能實現各式各樣的效果,滿足各種網站的需要,適應於所有模型。 ·用戶可後台直接自定義標簽:擁有此功能,用戶可以自己寫函數,然後後台定義一個標簽,模板就能解析他了。一般用於顯示系統以外的數據,如:論壇數據、環保監測站中的實時顯示數據等等。。。 ·所有欄目都可以有自己的頁面模板/列表模板、內容模板、JS模板與搜索模板 ·公共模板變數:可將一些共用的模塊放到公共變數,調用時只需加上變數標簽即可,以後修改變數的值即可修改所有顯示這個變數標簽的內容。 ·可對模板內容進行批量替換、批量導入欄目模板、批量更換列表模板與批量更換內容模板
六、模板標簽支持多種操作類型
·支持調用的操作類型:可按「所有/欄目/專題/數據表」調用「最新/熱門/推薦/評論排行/頭條信息/下載排行」的信息,並且支持按SQL語句調用信息 ·支持多欄目調用:多個調用欄目的ID用","格開即可 ·用戶可自定義標簽
七、信息內容支持存放文本
對於數據量非常大的信息內容,如小說、論文或其他大型的內容數據存放資料庫是非常不適合的。如果存放資料庫,單表容量很容易爆增,從而影響資料庫效率。因而帝國引入了此功能,可以將這些大型數據存儲到文本文件里,並且系統對文件加密,安全性得到保障。信息內容越大,此方案效果越佳。
八、多級用戶許可權與內容管理支持
可以通過用戶組,把不同的管理許可權分配給不同許可權的用戶,不同用戶可設置自己相應的管理欄目。管理員可直接後台增加/修改/刪除用戶組。
九、操作日誌記錄
系統會記錄用戶的登陸日誌與操作日誌,並且可設置是否開啟記錄日誌。
十、專題及專題組合
·對於新聞類網站,當一些突發事件發生時,來不及專門新開欄目,這時可以將有關該事件的內容整理成一個專題。帝國CMS允許編輯自行根據情況隨時增加新的專題,在第一時間給網站的訪問者提供豐富的相關信息。專題中的內容即可以是從其他頻道里挑選出來的,也可以直接讓編輯往該專題里錄入內容 ·專題組合:可對已錄入的信息依不同條件組合到相應的專題。專題組合支持按關鍵字查詢、SQL條件、相應欄目、發布時間范圍、信息ID范圍、是否頭條/推薦/標題圖片等條件進行組合。
十一、內置強健、穩定的備份恢復系統
·採用分組備份,系統自動將資料庫分成多部分進入導出.理論上不限資料庫大小,均可備份與恢復. ·安全性:備份文件均生成*.php文件,並且採用登陸驗證,只有登陸的管理員才能進行數據恢復. ·穩定性:系統採集分組備份,每組備份數據大小後台直接設置. ·使用方便:備份文件在線打包、下載與刪除. ·靈活性:備份目錄、壓縮目錄在線自定義. ·在線建立、刪除資料庫,優化、修復、清空、刪除數據表功能. ·在線直接恢復數據 ·備份帝國CMS整站非常簡單:只需備份資料庫+d附件目錄即可完全備份,其他信息均可後台直接恢復與全站更新。
十二、強大的廣告管理插件
·支持廣告類型:圖片廣告、FLASH廣告、文字廣告、HTML代碼廣告、彈出廣告 ·支持廣告效果:普通顯示、滿屏浮動顯示、上下浮動顯示(左/右)、全屏幕漸隱消失、可移動對話框、對聯式廣告 ·支持標簽與JS調用,可設置廣告過期時間,廣告管理員更換廣告。
十三、內置一些實用的插件
·投票插件:無限投票項目個數、支持單選/多選、可限制IP投票、可設置投票期限;支持標簽與JS調用 ·友情鏈接插件:支持多分類 ·多分類留言板:可在不同的欄目設置不同的留言板(增加留言分類即可),留言可設置是否需審核,回復留言 ·多分類信息反饋:可在不同的欄目設置不同的信息反饋 ·防採集插件:原理是給頁面加上各種規則的採集正則,防採集字元越多,採集的難度越大。
十四、內置部分完善的模型
除了用戶可自定義系統模型外,系統內置了部分模型,以後會陸續增加,用戶可選裝: ·新聞系統模型:系統默認的模型。附帶信息來源管理、作者管理、內容關鍵字管理、過濾字元管理 ·下載系統模型:附帶下載伺服器管理、刪除下載記錄管理、錯誤報告管理、批量替換地址許可權等功能;防盜鏈方面:採用定時更新下載驗證碼+定時更換下載伺服器+定時更換下載地址相結合。 ·影視系統模型:同下載系統模型,不過他同時支持在線觀看多媒體的信息;防盜鏈方面:採用定時更新下載驗證碼+定時更換下載伺服器+定時更換下載地址相結合、並且在線觀看採用更嚴密的加密方式,保護多媒體地址 ·圖庫系統模型 ·FLASH系統模型 ·商城系統模型:附帶支付方式管理、配送方式管理、訂單管理;支持各種支付方式。 ·新聞系統模型(存放文本):此模型與資料庫式的新聞模型不同的是,他將信息內容存放文本文件,用戶可依不同情況選用。
十五、無限級分類
系統支持無限級分類;各分類可綁定相應的二級域名
十六、支持遠程發布
遠程發布即用戶可以將機器裝於127.0.0.1下,然後將信息發布到遠程的伺服器的功能。目前是採集WEB方式發布,以後版本會考慮採用.exe的形式發布,效率更高。
十七、信息簽發功能
此功能一般用於政府或事業單位。也就是信息需要通過多個管理人員簽名才能發布的信息,對於重要信息是很有必要的,減少出錯率。
十八、文件管理模塊
文件管理支持資料庫式與目錄式管理;附件可按欄目進行管理;用戶可在信息增加時選擇已上傳的圖片/FLASH/多媒體/附件等;刪除相應的信息,系統會刪除隸屬於此信息的附件
十九、前台全生成靜態頁面
帝國CMS將網站內容全部生成靜態HTML文件,這樣可以極大地節約主機資源,提高系統性能,全靜態處理技術是做為構建大型站點的必要條件。無論是再強大的CPU,再高明的資料庫,在大量用戶訪問的情況下也會當機的,而使用我們的程序會避免此類問題發生。這也就是為什麼「新浪」「網易」甚至包括SOHU的網站搜索界面都是靜態發布的原因了。
二十、計劃任務
可設置定時更新首頁/欄目頁面;只要後台開著,系統自己會執行相應的任務
二十一、後台多界面樣式
不同用戶可選擇不同的後台操作界面,並且用戶可以自己製作後台界面,然後添加到後台界面管理里。
二十二、動態發布
列表頁支持動態顯示 內容頁支持觸發刷新 通過動態發布與系統模型相結合,可實現各種交互性更強的系統,如:供求系統,分類信息,人才招聘等系統。
二十三、更多特性
·用戶自定義JS功能 ·自定義信息列表功能:通過SQL語句,自己組合各種列表,如報刊中按日期分類等。 ·用戶自定義頁面功能:像公司介紹、聯系方式等頁面是不需要新建欄目的,定義一個頁面即可,並且自定義頁面支持所有標簽。 ·所見即所得的編輯功能 ·語言包:通過修改語言包就可以更換成其它語言 ·支持右鍵菜單:更方便的管理 ·發布信息分卷保存目錄可定製性:可按/2008/10/01/*.html、/2008-10-01/*.html或直接*.html等形式的目錄結構,文件擴展名可後台直接設置 ·圖片支持加水印(支持文字/圖片水印)、生成縮略圖;圖片/flash/多媒體/附件均支持遠程保存 ·批量替換欄位值功能:可替換任何數據表的欄位值 ·可按不同條件刷新信息(按數據表/欄目/時間范圍/信息ID范圍等條件進行刷新),而不是全部信息一起刷新,一般增加信息後,只需刷新單天的信息即可;可設置是否重復刷新信息,如果生成過一次後,信息是不重復刷新,大大提高效率;欄目/專題刷新支持選擇式多頁面刷新或全部刷新 ·搜索關鍵字排行後台直接管理 ·對所有信息進行統計 ·安裝非常容易:只需運行e/install文件,然後下一步、下一步即可完成系統安裝 ·安裝帝國CMS的運行環境全是免費程序,如:apache、PHP、mysql、zend均為免費軟體,降低成本 ---還有更多特性,不方便列出。如欄目批量轉移、圖片新聞管理、評論管理/審核/過濾等等,太多了。。。等著您下載程序體驗呢
9. TC系統二次開發需要學習哪些基礎知識
重點學習Java,因為二次開發主要是針對客戶端的。對伺服器端進行二次開發沒必要,TC伺服器端功能很強大,而且伺服器端一旦更新,所有二次開發程序需要重新編譯。
10. 如何二次開發phpcmsv9
首先,去官網下載一個phpcmsv9的源文件
在伺服器或者本地安裝一下,具體安裝詳情不再多說,二次開發的phpcms的肯定都會配置環境和安裝源碼。
phpcmsv9是一個典型的mvc結構,並且耦合度不高,不管是修改還是添加模塊都很方便。
先說一下系統是怎麼運行的吧
具體的核心文件是怎麼放置的呢,打開根目錄的phpcms看一下先。
好了 基本就這些 說一些重要的函數及標簽
好了 寫到這,差不多了,這個只是入門教程,如果你還不明白的話,可以試著把程序從入口問價你看一遍。國人寫的程序不難。簡單易懂。
如果還不懂,那奉勸一句,你嘗試一下其他工作吧,可能會比程序簡單。