導航:首頁 > 源碼編譯 > msi能反編譯嗎

msi能反編譯嗎

發布時間:2022-01-30 11:36:06

『壹』 怎樣才能把exe文件變成msi文件

....改後綴並沒什麼用啊= =用軟體重新封裝吧。。

『貳』 我想問一下就是電腦上又很多MSI文件,這些文件能不能刪掉

一、初識Windows功能增強「插件」MSI

我們經常可以看到許多軟體只有一個擴展名為MSI的文件,雙擊這個文件運行,就會出現和Windows
安裝非常相似的安裝過程,
到底是什麼?為什麼許多軟體開始用MSI格式來發行呢?請聽我慢慢說來。

1.
的由來
說到
,不得不先說說Windows Installer,它不只是安裝程序,而是可擴展的
系統。Windows Installer的用途包括:管理軟體的安裝、管理
的添加和刪除、監視文件的復原以及使用
技術維護基本的
。另外,Windows Installer還支持從多個源位置安裝和運行軟體,而且可以由想要安裝自定義程序的開發人員自定義。要想使用這些功能,就必須通過MSI文件。MSI文件是Windows Installer的數據包,它實際上是一個資料庫,包含安裝一種產品所需要的信息和在很多安裝情形下安裝(和卸載)程序所需的指令和數據。MSI文件將程序的組成文件與功能關聯起來。此外,它還包含有關安裝過程本身的信息:如安裝序列、目標文件夾路徑、系統依賴項、安裝選項和控制安裝過程的屬性。

2.MSI的優勢
Windows Installer技術就是合並在一起發揮作用的兩個部分:客戶端安裝程序服務(Msiexec.exe) 和Microsoft軟體安裝(MSI)
文件。

Msiexec.exe 程序是 Windows Installer 的一個組件。 當 Msiexec.exe 被安裝程序調用時,它將用 Msi.dll 讀取
文件 (.msi)、應用轉換文件 (.mst) 並合並由安裝程序提供的命令行選項。 Windows Installer 執行所有與安裝有關的任務:包括將文件復制到硬碟、修改注冊表、創建桌面快捷方式、必要時顯示提示對話框以便用戶輸入安裝首選項。

當雙擊MSI文件的時候,與之關聯的Windows Installer 的一個文件Msiexec.exe 被調用,它將用Msi.dll讀取
文件(.msi)、應用轉換文件(.mst)進行進一步處理,然後 Windows Installer 執行所有與安裝有關的任務:包括將文件復制到硬碟、修改注冊表、創建桌面快捷方式,必要時顯示提示對話框以便用戶輸入安裝需要的信息,就這樣,一個程序安裝到了你的電腦上。
採用MSI安裝的優勢在於你可以隨時徹底刪除它們,更改安裝選項,即使安裝中途出現意想不到的錯誤,一樣可以安全地恢復到以前的狀態,正是憑著此強大功能,越來越多的軟體開始使用MSI作為發行的方式了。 如果你對MSI文件感興趣,可以用WinRAR等
打開,看一下裡面的內容,滿足一下好奇心。

3、MSI格式文件安裝支持程序:WinMe和WinXP對MSI支持得很好,但其他版本的Windows就需要安裝一個插件才能使用MSI格式的文件。

點這里下載InstMsiW插件

二、定製自己的MSI文件

前面我們介紹了很多MSI文件的內容,其實MSI並不神秘、復雜,我們自己都能製作,並且製作MSI文件的工具已經在Windows的安裝盤上了。

首先,找到Windows2000的安裝光碟,雙擊下邊的這個位置的文件:valueadd\3rdparty\Mgmt\Winstleadmle.msi,

很快軟體就自動安裝到了電腦中。在開始菜單的所有程序里邊就多了「VERITAS software」組,點擊運行里邊的「VERITAS
」就可以開始製作MSI文件了。

製作MSI文件的基本原理就是,在我們安裝一個軟體以前,先給電腦的磁碟拍個「
」。然後將要安裝的軟體安裝到電腦中,並對注冊表等內容做修改,等到確認這個軟體能正確運行後,再給電腦的磁碟拍個「
」。Discover軟體會自動找出兩次「
」的不同,並且生成一個MSI文件。最後,如果你願意,可以使用VERITAS software組中的另一個工具:Veritas Software Console對這個MSI文件進行進一步的包裝、調整,這樣一個MSI文件包就生成了。

下面,我們具體通過一個例子來介紹一下如何使用Discover生成一個MSI文件,假定我們的軟體my的安裝過程是:將
文件安裝到C:\programmeme files\myprog下,將run.dll放到windows\system里,在注冊表的HKEY_LOCAL_MACHINE的software項中建立一個myprom項,並且在其中添加一個值為OK的value項目。

第一步:運行Discover,彈出程序界面,可以直接點「Next」按鈕繼續。

第二步:在圖3的對話框中,首先在第一文本框為你的程序起個名字,比如這里用的「My programmeme」;第二個對話框是輸出MSI文件的存放位置和文件名,這里選擇保存為E:\my_setup.msi;第三個框為壓縮包的語言,可以使用其默認值。填好後點「Next」按鈕。

第三步:為Discover存放快照文件選擇一個臨時的空間,可以選一個磁碟空間比較大的磁碟。

第四步:在接下來如圖4的對話框中要選擇Discover需要掃描並拍「快照」的磁碟,你的程序要裝到哪個盤就選擇哪個盤,並且點一下「Add」按鈕加到要掃描文件的列表中,你可以選擇幾個或者所有的磁碟,不過這樣會在掃描的過程中浪費更多的時間,所以應該盡量少選擇磁碟。這里只選擇C盤,因為我們的軟體是裝到C盤的。然後點「Next」。

第五步:在如圖5所示的對話框中為上一步選擇的每個磁碟選擇需要掃描的文件夾或文件,因為我們上一步只選擇了C盤,所以為C盤選擇就可以了。另外,Discover自動加入了一些特殊的文件和目錄,我們可以根據需要決定是否將它們移出要掃描的文件列表,不過最好保留它們。這里我們把「C:\programmeme files」和Windows文件夾添進去,先在左邊的文件框中點中文件或文件夾,然後點Add按鈕就可以了。對於注冊表的掃描,Discover為了加快
,只掃描部分注冊表,可
描到大部分程序對注冊表的修改,如果不放心的話,也可以將下邊的「Enhanced Registry Scan」點中,這樣速度可能會慢很多,臨時文件也大大增加,不過能對注冊表所有的改動加以記錄。由於我們的軟體對注冊表只是小改動,所以沒必要選擇掃描所有注冊表。然後點「Next」繼續。

第六步:接下來Discover將對系統進行掃描生成「快照」,要耐心的等待,可能要幾分鍾的時間才行。

第七步:在掃描完成後,會彈出一個對話框,大概意思就是告訴你掃描已經完成,問你是否要選擇一個程序來運行,從而自動安裝你的軟體,我們正要製作安裝程序,沒有程序可運行,所以要點「取消」按鈕。

第八步:接下來,我們就要手動安裝自己的軟體了,先將
文件拷貝到C:\programmeme files\myprog下,再把run.dll拷貝到windows\system里,然後用
在注冊表的HKEY_LOCAL_MACHINE的software項中建立一個myprom項,並在其中添加一個值為OK的value鍵。注意,除了這些改動,應盡量避免其他無關的改動。然後我們試著運行一下剛剛安裝的
文件,測試一下是否正確安裝。

第九步:確認安裝沒有問題了,要再次運行Discover程序,這次運行Discover時,出現的是如圖6所示的一個界面,有兩個選項,第一項是生成安裝後的快照,用於與前一次的快照比較生成MSI文件,第二個選項是放棄上一次的掃描,當然要選第一項了,然後點「Next」。這時Discover又開始重新對電腦進行掃描,生成「快照」,並自動生成了安裝文件。

第十步:如果你願意,可以啟動與Discover程序在一起的VERITAS Software
對MSI文件的信息進一步更改,過程比較簡單,只要先打開一個MSI文件,然後就可以進行改動了,這里就不介紹了。
就這樣,我們就生成了一個自己的MSI文件了。

『叄』 求助:msi的文件能不能裁剪啊

當然可以裁剪啦,用「圖像處理」中的「圖像分析」工具打開MSI文件,然後用「輔肋工具」中的「AOI 區編輯」添加一個裁剪框(可以是任意多邊形),AOI屬性一定要選「裁剪區域AOI」,添加完後不用存檔退出,再次打開就可見MSI已被裁剪。但這還不是真正裁剪,還可恢復的,只要刪除AOI裁剪區域就可恢復了

『肆』 為什麼以msi為後綴的文件不能打開了

可能是你的系統程序關聯出了題,msi文件是一種windows安裝文件,可以用windows installer打開,
安裝一下就恢復了關聯
Microsoft Windows Installer V3.1
天空軟體有下
http://www.skycn.com/soft/11601.html

『伍』 怎樣才能運行MSI文件

雙擊打開即可。
說到MSI文件,不得不先說說Windows Installer,它不只是安裝程序,而是可擴展的軟體管理系統。Windows Installer的用途包括:管理軟體的安裝、管理軟體組件的添加和刪除、監視文件的復原以及使用回滾技術維護基本的災難恢復。另外,Windows Installer還支持從多個源位置安裝和運行軟體,而且可以由想要安裝自定義程序的開發人員自定義。要想使用這些功能,就必須通過MSI文件。MSI文件是Windows Installer的數據包,它實際上是一個資料庫,包含安裝一種產品所需要的信息和在很多安裝情形下安裝(和卸載)程序所需的指令和數據。MSI文件將程序的組成文件與功能關聯起來。此外,它還包含有關安裝過程本身的信息:如安裝序列、目標文件夾路徑、系統依賴項、安裝選項和控制安裝過程的屬性。
MSI的優勢
Windows Installer技術就是合並在一起發揮作用的兩個部分:客戶端安裝程序服務(Msiexec.exe) 和Microsoft軟體安裝(MSI)軟體包文件。
Msiexec.exe 程序是 Windows Installer 的一個組件。 當 Msiexec.exe 被安裝程序調用時,它將用 Msi.dll 讀取軟體包文件 (.msi)、應用轉換文件 (.mst) 並合並由安裝程序提供的命令行選項。 Windows Installer 執行所有與安裝有關的任務:包括將文件復制到硬碟、修改注冊表、創建桌面快捷方式、必要時顯示提示對話框以便用戶輸入安裝首選項。

『陸』 不能運行*.msi文件

1、兼容性問題,這個*.msi文件不支持vista
2、Windows
Installer有問題,重新下載最新版本Windows
Installer安裝。

『柒』 如何反編譯msi文件

wix 開源項目下載一個
安裝後將bin路徑加入環境變數

wixedit 開源項目下載一個,用於編輯wix反編譯的msi項目,反編譯後項目文件為wxs文件

使用wix反編譯
dark -x C:\SdkLog C:\SdkLog\2009.msi C:\SdkLog\a.wxs
就會將2009msi反編譯

使用wixedit打開a.wxs就可以看到相關內容。
其他功能未研究

『捌』 msi格式和msp格式的文件能刪除嗎

msp文件是windows installer patch文件 在安裝msi文件的時候產生的,一般可以刪除的

『玖』 關於WebMatrix.msi的反編譯 誰知道謝謝了,大神幫忙啊

不知道你要什麼,.msi是什麼文件,你知道嗎?只是安裝文件罷了。 VS2005裡面的框架和組件,都是C#開發的,但是表示層,是C++開發的。。。 要是打算看看C#的源代碼還有點可能, C++開發的DLL,你是無法破解出源代碼的。。。 不然WINDOWS源代碼早就被破解了。。。

希望採納

『拾』 你好,你的那個"如何反編譯用InstallShield製作成的EXE安裝文件"的問題,搞定了沒

InstallShield安裝包看什麼工程類型製作的,如果是Basic MSI,那直接讀取MSI相關數據就行;而其他工程類型,恐怕只能通過結果反推安裝原理,如果安裝包中有腳本代碼邏輯,那什麼方法也解決不了。

閱讀全文

與msi能反編譯嗎相關的資料

熱點內容
工作三年的大專程序員 瀏覽:726
java畢業設計文獻 瀏覽:140
籌碼集中度指標源碼 瀏覽:478
listsortjava 瀏覽:183
plc閃光電路編程實例 瀏覽:299
socket編程試題 瀏覽:203
華為的伺服器怎麼設置從光碟機啟動 瀏覽:868
程序員真的累嗎 瀏覽:325
學信網app為什麼刷臉不了 瀏覽:873
天蠍vs程序員 瀏覽:992
單片機下載口叫什麼 瀏覽:188
程序員的道 瀏覽:926
雲伺服器不實名違法嗎 瀏覽:558
怎樣查看文件夾圖片是否重復 瀏覽:995
文件怎麼導成pdf文件 瀏覽:808
打開sql表的命令 瀏覽:103
安卓手機如何面部支付 瀏覽:38
天元數學app為什麼登錄不上去 瀏覽:824
明日之後為什麼有些伺服器是四個字 瀏覽:104
安卓系統l1是什麼意思 瀏覽:26