<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      分發VFP應用時自動創建快捷方式

      [摘要]■ 安徽財貿學院計算機系(233041) 車光宏 使用VFP開發一個應用軟件,最后一步是制作發布磁盤。使用VFP安裝向導制作的發布磁盤在安裝時一般只在“開始\程序\Visual FoxPro 應用程序”組中建立快捷方式。如果希望在安裝時把快捷方式建在桌面上、開始菜單中或啟動組中,該怎么辦呢? 解決...
      ■ 安徽財貿學院計算機系(233041) 車光宏

      使用VFP開發一個應用軟件,最后一步是制作發布磁盤。使用VFP安裝向導制作的發布磁盤在安裝時一般只在“開始\程序\Visual FoxPro 應用程序”組中建立快捷方式。如果希望在安裝時把快捷方式建在桌面上、開始菜單中或啟動組中,該怎么辦呢?

      解決思路

      下面是筆者的解決辦法。大體可分兩步進行:

      1.使用VFP編制一個用來建立快捷方式的程序(設程序名為CreateShortCut.exe);

      2.在安裝向導“步驟4-安裝選項”的“執行程序”標簽下的文本框中填入前面建立的程序文件名及其路徑(通過瀏覽“…”按鈕查找)。

      這里的關鍵是第一步,如果有了第一步建立的程序CreateShortCut.exe,后一步是十分簡單的。接下來具體說明用VFP編制建立快捷方式程序的方法。

      具體實現

      建立快捷方式的程序中需要使用DLL函數fCreateShellLink,該函數在STKIT432.DLL中(STKIT432.DLL可在Visual Basic 4.0 for Windows的Setup Kit中找到)。在VFP中聲明fCreateShellLink函數的命令是:

      declare long fCreateShellLink in “STKIT432.DLL” String p1, String p2, String p3, String p4

      其中:

      ● p1: 用來指出快捷方式要加入的文件夾及其相對于Windows\Programs文件夾的路徑;

      ● p2: 用來指出快捷方式的名稱;

      ● p3: 用來指出程序文件名(含擴展名)及其路徑;

      ● p4: 用來指出執行程序的命令行參數,一般為空串。

      例如,要想把程序“C:\Windows\command

      .com”的快捷方式以“DOS窗口”為名建立在附件中,可用命令:

      fCreateShellLink(“.\附件”,“DOS窗口”, “C:\Windows\command.com”, “”)

      下面創建前面所述的CreateShortCut.exe程序,先檢查Windows\System文件夾中是否存在STKIT432.DLL文件,如果存在(否則,找到該文件將其復制到Windows\System文件夾),執行如下操作:

      1.打開VFP,新建一個名為CreateShortCut的項目。

      2. 在CreateShortCut項目中新建一個名為prgCreateShortCut的程序,程序清單如下:

      ● 程序prgCreateShortCut.PRG

      LPARAMETERS sPn,sPd

      application.visible=.f.

      if type(‘sPn’)=‘L’

      sPn=“CreateShortCut.exe”

      sPd=“建立快捷方式”

      endif

      if upper(sPn)= “CREATESHORTCUT.EXE”

      cl=chr(13)+chr(10)+chr(13)+chr(10)

      sTs=“本程序使用方法:”+cl;

      +“先把本程序復制到要建立快捷方式的程序所在的文件夾,然后,”+cl ;

      +“從“開始”菜單中單擊“運行”,在“運行”對話框中,通過”+cl ;

      +““瀏覽”按鈕找到本程序,再在“打開”組合框中本程序名之后”+cl ;

      +“輸入命令行參數: <程序文件名(含擴展名)> <快捷方式標題>,”+cl ;

      +“最后,按“確定”按鈕執行!

      messagebox(sTs,64, “提示”)

      Cancel

      endif

      sPn=fullpath(sPn)

      do form frmCreateShortCut with sPn,sPd

      read events

      3. 在CreateShortCut項目中新建一個文件名為frmCreateShortCut的表單(如下圖)。各復選框的名稱自上而下依次為: chkProgram、chkDeskTop、chkStartMenu、chkStartUp、chkQuickLaunch。

      用戶操作界面

      表單中有關對象事件的代碼如下:

      (1)表單frmCreateShortCut的Init事件代碼:

      LPARAMETERS sPn,sPd

      this.AddProperty(“Pn”)

      this.AddProperty(“Pd”)

      this.Pn=sPn

      this.Pd=sPd

      this.Caption=“建立”+sPd+“快捷方式”

      this.chkDeskTop.value=1

      (2)表單frmCreateShortCut的Unload事件代碼:

      clear events

      (3)“確定”按鈕的Click事件代碼:

      declare long fCreateShellLink in “STKIT432

      .DLL” String sFolderName;

      String sLinkName, String sLinkPath, String sLinkArgs

      ● 注意: 函數名fCreateShellLink中字母的大小寫。

      sLinkName=Thisform.pd

      sLinkPath=thisform.pn

      (4) 將快捷方式加到程序組中

      if thisform.chkProgram.value=1

      sFolderName=“.”

      sLinkArgs=“”

      rs=fCreateShellLink(sFolderName, sLinkName, sLinkPath, sLinkArgs)

      if rs=0

      messagebox(“將快捷方式加到程序組中時出錯!”,48,“提示”)

      endif

      endif

      (5) 將快捷方式加到桌面上

      if thisform.chkDeskTop.value=1

      sFolderName=“..\..\desktop”

      sLinkArgs=“”

      rs=fCreateShellLink(sFolderName,sLinkName, sLinkPath, sLinkArgs)

      if rs=0

      messagebox(“將快捷方式加到桌面上時出錯!”,48,“提示”)

      endif

      endif

      (6)將快捷方式加到啟動組中

      if thisform.chkStartUp.value=1

      sFolderName=“.\啟動”

      rs=fCreateShellLink(sFolderName, sLinkName, sLinkPath, sLinkArgs)

      if rs=0

      messagebox(“將快捷方式加到啟動組時出錯!”,48,“提示”)

      endif

      endif

      (7)將快捷方式加到開始菜單中

      if thisform.chkStartMenu.value=1

      sFolderName=“..\”

      rs=fCreateShellLink(sFolderName, sLinkName, sLinkPath, sLinkArgs)

      if rs=0

      messagebox(“將快捷方式加到開始菜單中時出錯!”,48,“提示”)

      endif

      endif

      (8)將快捷方式加到快速啟動區中

      if thisform.chkQuickLaunch.value=1

      sFolderName=“..\..\Application Data\Microsoft\Internet Explorer\Quick Launch”

      rs=fCreateShellLink(sFolderName, sLinkName, sLinkPath, sLinkArgs)

      if rs=0

      messagebox(“將快捷方式加到快速啟動區中時出錯!”,48,“提示”)

      endif

      endif

      clear dlls

      thisform.release

      (9)“關閉”按鈕的Click事件代碼:

      thisform.release

      4. 將程序prgCreateShortCut 設置為主文件。

      5.“連編”該項目,生成CreateShortCut.exe文件。

      至此,建立快捷方式的程序CreateShortCut.exe 已經完成。通過它,就可以把VFP應用程序的快捷方式自動建立在用戶所指定的位置。 


      日韩精品一区二区三区高清