none
VB中使用XP的視覺樣式 RRS feed

  • 問題

  • 我在網路上找到一個這樣的主題

     http://0rz.net/ac1UU 


    他的作法是要產生一個跟執行檔一樣名稱的.exe.mainfiest檔
    然後把它和執行檔放在同一個資料夾裡面這樣才會有效

    我想請問一下有沒有什麼辦法可以把這個檔案include到執行檔裡面~
    就跟我們要把一些.ocx檔一起加入執行檔一樣~~
    不然如果執行檔要給別人使用~還要連帶COPY這個.mainifest檔過去

    我簡略敘述一下他的作法

    要在程式中加入


    Option Explicit
    Private Declare Sub InitCommonControls Lib "comctl32" ()
    Private Sub Form_Initialize()
        Call InitCommonControls
    End Sub

    然後 .mainifest檔我用記事本打開裡面是

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
      <assemblyIdentity
        version="1.0.0.0"
        processorArchitecture="X86"
        name="E.C.N.N..Honey's.App"
        type="win32"
      />
      <description></description>
      <dependency>
        <dependentAssembly>
         <assemblyIdentity
         type="win32"
         name="Microsoft.Windows.Common-Controls"
         version="6.0.0.0"
         processorArchitecture="X86"
         publicKeyToken="6595b64144ccf1df"
         language="*"
         />
        </dependentAssembly>
      </dependency>
    </assembly>

    另外一個網址也有類似說明  http://0rz.net/5e1Ss

    還是有其他更好的方法可以實現XP Style呢?

    2006年9月20日 上午 09:24

解答

  • VB6 請看公告,加入標題特別說明。

    VB6: http://tlcheng.twbbs.org/TLCheng/Basic/vb/XPTheme/

    另外 OCX 並不是崁入執行檔,而是利用封裝程式將其安裝至 system32 下。

    若是你是指那類崁在資源檔在第一次使用時解出來的,基本上是邪道,且沒有意義,資源檔會共同編譯到執行檔內,把 ocx 崁在執行檔內會造成執行檔過於龐大,造成載入變慢,而事實上只有第一次執行時解出,在效能考量上根本是走倒車的方法。

    2006年9月20日 下午 12:49
    版主

所有回覆

  • VB2005

    選單 專案 屬性 應用程式 啟用 XP 視覺化樣式

    另外也可以用

    Application.VisualStyleState

    這個屬性設定

    VB2003/2005 也可以用

    Application.EnableVisualStyles()

    2006年9月20日 下午 12:43
    版主
  • VB6 請看公告,加入標題特別說明。

    VB6: http://tlcheng.twbbs.org/TLCheng/Basic/vb/XPTheme/

    另外 OCX 並不是崁入執行檔,而是利用封裝程式將其安裝至 system32 下。

    若是你是指那類崁在資源檔在第一次使用時解出來的,基本上是邪道,且沒有意義,資源檔會共同編譯到執行檔內,把 ocx 崁在執行檔內會造成執行檔過於龐大,造成載入變慢,而事實上只有第一次執行時解出,在效能考量上根本是走倒車的方法。

    2006年9月20日 下午 12:49
    版主
  • 謝謝~那可以在請問一下嗎?關於這個網址的內容

    VB6: http://tlcheng.twbbs.org/TLCheng/Basic/vb/XPTheme/

    我在第六個步驟vi按復原並不會像上面所說的變成有兩個資料夾一個是24一個"24"

    而是完全沒有變化~後來我想說跳過這個步驟繼續下去~

    當然~~執行檔沒有變成XP樣式@@"

    2006年9月21日 上午 01:29
  • 這是更新到 SP6 以後,VB 企業版附的資源檔編輯器不能再用復原恢復的問題。

    建議你直接抓資源檔來使用,要瀏覽資源檔內容可改用 Visual Studio 98/2003/2005 ,要編輯資源檔可能要改用 VS98 來處理。

    2006年9月21日 上午 01:43
    版主