2010-05-05 38 views
1

我們的商業應用程序在這裏有一個擴展名爲「.ppx」的數據文件。用戶通常會安裝多個版本的應用程序(並排安裝),例如版本1和版本2.如何爲一個給定的文件擴展名打開不同的應用程序版本

ppx文件是xml文件,它們包含從(v1或v2)創建的應用程序的版本, 。假設我們有AFileCreatedWithAppv1.ppx和AFileCreatedWithAppv2.ppx,當它們都具有相同的文件擴展名時,分別以我們的應用程序的版本1或版本2打開?

它必須是可行的,因爲這是Visual Studio所做的。事實上,他們甚至爲相同的.sln擴展提供了不同的圖標,以指明它將打開的Visual Studio版本。我瞭解到Visual Studio在兩者之間使用了選擇器或啓動器,但是他們又如何在Windows中更改圖標?

乾杯:)

回答

0

您需要檢查版本,然後繼續其餘的使用。我們有一種將數據存儲在二進制序列化文件中的產品。標題包含版本信息。在繼續進行之前,產品在反序列化的過程中感知版本。

3

Visual Studio將其文件擴展名與名爲「Visual Studio Version Selector」的應用程序關聯。當雙擊文件時,此應用程序將打開該文件(例如項目文件,解決方案文件),並在該文件的xml結構中包含的版本信息中查找該文件。然後啓動正確版本的Visual Studio並將其傳遞給被點擊的文件的名稱。我認爲圖標會根據覆蓋圖標上的版本號的瀏覽器擴展名進行更改(儘管我對此不太確定) - 我相信Office可能會做類似的操作。

你可以用你的應用程序來鏡像這個行爲,將你的ppx文件擴展名與你自己的版本選擇器應用程序相關聯。

您的版本選擇器應用程序需要了解安裝在計算機上的應用程序的所有版本,以便它能夠將打開文件的責任委託給正確的版本。