Foxpro在我國(guó)應(yīng)用廣泛,但大多數(shù)用戶一般只注重其方便的數(shù)據(jù)庫(kù)的管理功能,開發(fā)的應(yīng)用程序也僅局限在Foxpro本身的數(shù)據(jù)庫(kù)管理功能上,其實(shí)Foxpro也可以和其它Windows應(yīng)用程序進(jìn)行有效的配合,共同完成某些特殊的任務(wù)。利用Foxpro提供的十二個(gè)DDE(動(dòng)態(tài)數(shù)據(jù)交換)函數(shù)可以方便地與其它應(yīng)用程度交換數(shù)據(jù),執(zhí)行其它Windows應(yīng)用程序的命令。筆者在編程實(shí)踐過(guò)程中應(yīng)用DDE函數(shù)編程完成了一些特殊的應(yīng)用,取得了滿意的效果。下面列舉幾個(gè)應(yīng)用Foxpro中DDE類的例子,或許對(duì)讀者編程時(shí)有所啟發(fā)。
一、與系統(tǒng)外殼配合完成應(yīng)用程序的安裝
Windows應(yīng)用程序安裝時(shí)除了完成文件的復(fù)制以外,還必須建立應(yīng)用程序組及程序項(xiàng),盡管現(xiàn)在已經(jīng)有一些工具可以幫助程序員來(lái)分發(fā)安裝Windows應(yīng)用程序,但如果你手頭一時(shí)找不到這些工具來(lái)安裝你的Foxpro應(yīng)用程序,或者你的應(yīng)用程序有特殊的要求并且不打算用到像C++之類的語(yǔ)言,則不妨使用Foxpro的DDE命令來(lái)完成安裝工作。
安裝應(yīng)用程序?qū)嶋H上是與系統(tǒng)外殼打交道,以前Windows 3.x使用PROGMAN.EXE作為外殼,Windows95則使用EXPLOLER.EXE,它們都可以作為DDE服務(wù)器并提供相同的主題PROGMAN。用CreateGroup命令可以建立程序組,用ShowGroup命令可以顯示程序組,用AddItem命令可在程序組中增加程序項(xiàng),其格式簡(jiǎn)述如下(其它命令及詳細(xì)格式請(qǐng)參考Windows文檔):
(1)CreateGroup(GroupName[,GroupPath]),兩個(gè)參數(shù)分別用于指定組名和路徑;
(2)ShowGroup(GroupName,ShowCommand),兩個(gè)參數(shù)分別用于指定組名和顯示方式;
(3)AddItem(CmdLine[,Name[,IconPath[,IconIndex]]],四個(gè)參數(shù)分別用于指定命令行、程序項(xiàng)名稱、圖標(biāo)資源路徑及索引。
下面的Foxpro程序建立應(yīng)用程序組MyApplication及其程序項(xiàng)App1。
**安裝應(yīng)用程序的例子
**進(jìn)行文件的解壓、復(fù)制等操作后,執(zhí)行下面的代碼安裝程序組和程序項(xiàng)
iProgman = DDEInitiate(PROGMAN,PROGMAN) &&DDE初始化
IF iProgman != -1 &&初始化成功則建立程序組
iExecute=DDEExecute(iProgman,[CreateGroup("MyApplication")])
IF iExecute = .F.
WAIT WINDOWS 建立程序組失敗
ELSE
= DDEExecute(iProgman,[ShowGroup("MyApplication.GRP",1)])
=DDEExecute(iProgman,[AddItem(c:\MyApp\app1.exe,app1, c:\MyApp\app1.ico)])
ENDIF
= DDETerminate(iProgman)
ELSE
WAIT "DDE初始化失敗" WINDOWS
ENDIF
RETURN
一、與系統(tǒng)外殼配合完成應(yīng)用程序的安裝
Windows應(yīng)用程序安裝時(shí)除了完成文件的復(fù)制以外,還必須建立應(yīng)用程序組及程序項(xiàng),盡管現(xiàn)在已經(jīng)有一些工具可以幫助程序員來(lái)分發(fā)安裝Windows應(yīng)用程序,但如果你手頭一時(shí)找不到這些工具來(lái)安裝你的Foxpro應(yīng)用程序,或者你的應(yīng)用程序有特殊的要求并且不打算用到像C++之類的語(yǔ)言,則不妨使用Foxpro的DDE命令來(lái)完成安裝工作。
安裝應(yīng)用程序?qū)嶋H上是與系統(tǒng)外殼打交道,以前Windows 3.x使用PROGMAN.EXE作為外殼,Windows95則使用EXPLOLER.EXE,它們都可以作為DDE服務(wù)器并提供相同的主題PROGMAN。用CreateGroup命令可以建立程序組,用ShowGroup命令可以顯示程序組,用AddItem命令可在程序組中增加程序項(xiàng),其格式簡(jiǎn)述如下(其它命令及詳細(xì)格式請(qǐng)參考Windows文檔):
(1)CreateGroup(GroupName[,GroupPath]),兩個(gè)參數(shù)分別用于指定組名和路徑;
(2)ShowGroup(GroupName,ShowCommand),兩個(gè)參數(shù)分別用于指定組名和顯示方式;
(3)AddItem(CmdLine[,Name[,IconPath[,IconIndex]]],四個(gè)參數(shù)分別用于指定命令行、程序項(xiàng)名稱、圖標(biāo)資源路徑及索引。
下面的Foxpro程序建立應(yīng)用程序組MyApplication及其程序項(xiàng)App1。
**安裝應(yīng)用程序的例子
**進(jìn)行文件的解壓、復(fù)制等操作后,執(zhí)行下面的代碼安裝程序組和程序項(xiàng)
iProgman = DDEInitiate(PROGMAN,PROGMAN) &&DDE初始化
IF iProgman != -1 &&初始化成功則建立程序組
iExecute=DDEExecute(iProgman,[CreateGroup("MyApplication")])
IF iExecute = .F.
WAIT WINDOWS 建立程序組失敗
ELSE
= DDEExecute(iProgman,[ShowGroup("MyApplication.GRP",1)])
=DDEExecute(iProgman,[AddItem(c:\MyApp\app1.exe,app1, c:\MyApp\app1.ico)])
ENDIF
= DDETerminate(iProgman)
ELSE
WAIT "DDE初始化失敗" WINDOWS
ENDIF
RETURN

