導航:首頁 > 源碼編譯 > aspnet源碼編譯

aspnet源碼編譯

發布時間:2022-05-10 00:21:01

Ⅰ 如何反編譯C#等net軟體類庫源代碼

這個需要看對方有沒有混淆,如果混淆了基本上反編譯出來都不便於閱讀。
1)如果沒有混淆且沒有加殼用Reflector.exe來反編譯;
2)如果沒有混淆但加了殼則用de4dot.exe來脫殼,脫殼後再用ILPsy.exe或Reflector.exe反編譯;
3)如果對方使用付費版且是最新版的Dotfuscator 來混淆,就算你反編譯後基本上閱讀不了。

Ⅱ 如何安裝C#在asp.net語言支持

這句話本身是有毛病的,其實.net是哪門語言都不支持,支持的是中間語言IL,也就是說不管你使用的那種語言編寫的程序,最終都是會編譯成IL的。所以沒有任何語言會被.net支持。

而你所謂的C#支持指的是其編譯環境。也就是說如何將C#編譯成IL,那麼你可以直接使用.net framework的編譯環境,注意的是編譯環境,而不是,net的運行環境,其運行環境指的是將IL進行執行,而編譯環境指的是將上層不同的語言(VB,C#,CPP)等編譯成為IL.而當前使用不錯的就是VS軟體。安裝這個軟體後可以將不同的語言編成為IL。界面處理就是選擇C#開發環境,點擊編譯就可以了,否則可以使用CS編指令直接對其進行編譯的,該指令在VS目錄下,也可以直接找到CSC.exe文件,運行它可以將C#源碼進行編譯,如果不想安裝VS,那麼安裝CSC.EXE也是一個不錯的選擇——用記事本寫完程序,然後用CSC進行編譯,然後就可以進行執行了!

Ⅲ aspnet和javaweb的代碼一樣嘛

代碼不一樣。
1、Java有源代碼的參考,asp沒有參考。
2、Java的語言沒有封裝,asp的代碼有封裝協議,用著更方便。ASP是.NET的一部分,作為戰略產品,為ASP設計了這樣一些策略:易於寫出結構清晰的代碼,代碼易於重用和共享,可用編譯類語言編寫_鵲齲康氖僑迷備菀椎目⒊_EB_τ茫慵撲閬_EB_頻惱鉸苑較虻男枰JAVA這種語言,偶然成為了當前Web計算的主要語言,獲得了廣泛的業界支持,它portable,良好的oo屬性,是互連網計算的強大的粘合劑。

Ⅳ asp.net(C#) 預編譯文件

如果要改邏輯代碼的話,沒有源碼是不行的,但是如果只需改頁面代碼只需要改aspx的文件,

Ⅳ 關於VS2003編譯出現的幾種常見難點

選擇最佳的VS2003編譯選項要由具體的情況和需要決定,但VS2003編譯模型要有靈活性。即使選擇使用 \app_code 目錄來存儲代碼隱藏文件,您仍可以使用完整的編譯方法來部署應用程序。ASP.NET 1.x中的編譯ASP.NET1.x 中的主要編譯模型會導致一個應用程序程序集(包含所有的已編譯代碼隱藏文件和其他的源代碼)和一個為每個被請求的 ASPX 頁而創建的臨時程序集。在有些情況下,編譯器優化(例如批處理)會引起將臨時 ASPX 頁編譯到同一個程序集中。在任一種情況下,每個 ASPX 頁都編譯到一個臨時程序集中,這樣它可以載入到 ASP.NET 運行庫。雖然這種模型有優點,但它也有兩個主要缺點。首先,ASPX 頁必須要以人們可以閱讀的形式部署到 Web 站點。如果開發人員使用代碼內聯 模型,這意味著,一些(或所有)的業務邏輯也可以部署在生產伺服器上。雖然沒有將 IIS 和 ASP.NET 配置為公開原始的 ASPX 頁,但聰明的攻擊者仍可以通過任何攻擊(該攻擊打開到 Web 伺服器的通道)來訪問這些文件。其次,第一次有人請求某 Web 頁時,響應速度將比正常速度慢一些,原因在於 ASP.NET 運行庫必須編譯 ASPX 頁。這整個過程中,開發人員擁有的唯一控制權是決定是否批編譯 ASPX 頁。在 ASP.NET 1.x 中,可以通過修改 標記在 web.config 文件中配置批編譯。ASP.NET 2.0 中的編譯ASP.NET 2.0 為 Web 應用程序提供三種不同的VS2003編譯模型:普通(ASP.NET 1.x) — 在一個普通的 ASP.NET Web 應用程序中,代碼隱藏文件被編譯到一個程序集並存儲在 /bin 目錄中。根據要求編譯 Web 頁 (ASPX)。該模型對大多數 Web 站點都運行得不錯。但是,編譯過程使得第一次請求 ASP.NET 頁時的速度比隨後的請求速度緩慢。ASP.NET 2.0 繼續支持這種編譯模型。部署預編譯 — ASP.NET 2.0 的一種新功能,允許在部署前對項目進行完整編譯。在完整編譯中,所有的代碼隱藏文件、ASPX 頁面、HTML、圖形資源以及其他的後端代碼都被編譯到一個或多個可執行程序集中,這取決於應用程序的大小和編譯設置。這些程序集包含所有的已編譯 Web 站點代碼,而資源文件和配置文件被復制,沒有做修改。這種編譯方法以犧牲修改部署後 Web 站點的能力為代價,提供了最好的性能和安全性。如果您使用高可見或高安全的 Web 站點,這種選項是最終部署的最好選擇。但是,如果您正在構建一個運行局部 Intranet 的小站點,並且更改站點非常頻繁,那麼完整預編譯可能有點過分。 ASP.NET 2.0 編譯模型也允許預編譯應用程序的所有代碼隱藏文件並且仍可以更新代碼。可以將代碼隱藏文件和原始的 .ASPX 文件(都是局部類)編譯到一個預編譯類中(頁面的基類)。如果選擇在運行時編輯 .ASPX 文件,只需重新編譯頁面即可。完整的運行時編譯 — 在部署預編譯的另一個極端,ASP.NET 2.0 提供一種在運行時編譯整個應用程序的新機制。也就是說,可以將未編譯的代碼隱藏文件和其他相關的代碼放在 \app_code 目錄中,並讓 ASP.NET 2.0 創建並維護對程序集的引用,這些引用將在運行時根據這些文件生成。這種選項以在伺服器上存儲未編譯代碼為代價,在更改 Web 站點內容方面提供了最大的靈活性。 選擇最佳的編譯選項要由具體的情況和需要決定,但編譯模型要有靈活性。即使選擇使用 \app_code 目錄來存儲代碼隱藏文件,您仍可以使用完整的編譯方法來部署應用程序。VS2003編譯批編譯在ASP.NET 2.0 中,可以利用單個 URL 請求來批編譯任何應用程序。如同 ASP.NET 1.x 一樣,批編譯消除了第一次頁面請求的延時,但造成了更長的啟動周期。另外,批編譯還要求在部署前編譯代碼隱藏文件。Web.config 批編譯設置在 ASP.NET 2.0 中仍起作用。批編譯的優點是,第一個用戶可以立即使用頁面,而且在批編譯期間可以檢測到 ASPX 頁中的任何錯誤。但是,批編譯的確增加了應用程序啟動的延時,並且必須要內置在 Web.config 文件中。應當注意,如果某個文件出現了問題,則該批將不會接收它。部署預VS2003編譯部署預編譯允許創建一個或多個程序集,這些程序集是 Web 站點的可執行版本。所獲得的程序集包含 Web 站點的已編譯代碼。HTML 頁面、資源、配置文件和 ASPX 頁面被單獨復制。部署預編譯要求使用一個稱為 ASPnet_compiler.exe 的命令行實用程序。該實用程序創建一個目標部署目錄,該目錄包含一個含有程序集的 /bin 目錄和各種 ASPX 頁的 stub 文件。該實用程序還用來在原地進行預編譯,類似於調用"魔術頁"的行為。stub 文件共享 ASPX 頁的名稱,但是包含調用已編譯程序集的簡單代碼。換句話說,ASPX 頁只是空殼而不是填滿的功能頁。通過為部署預編譯 Web 站點,您可以獲得增強的安全性,因為只有進行反編譯程序集才能訪問您的代碼。為了增強保護,可以弄亂所得到的程序集,使您的 Web 應用程序更加安全。部署預編譯的主要缺點是,在部署前必須執行這些步驟,並且在部署後不能更改 Web 站點。如果想進行更改,就必須重新編譯該 Web 站點並重新部署它。對於大多數主要的 Web 應用程序,部署預編譯選項將是部署的首選機制源碼天空,因為它減少了在 Web 伺服器上部署的原始代碼數量,並提供了最佳的安全性。這個增加的進程可以內置於通常的開發/測試/部署周期中,而工作效率並不會有多大損失。

Ⅵ C#源代碼編譯成為本地代碼的編譯過程

很有興趣的話,可以去閱讀下JeffreyRitchie的《ClrviaC#》,目前出到第三版,英文好的話強烈推薦看英文版的,而且我有該電子書和實體書。

下面講下我的理解:大致上不會出什麼差錯的,細節部分你可以參照上面的書籍!

1.首先,c#源碼經過c#編譯器被編譯成託管模塊(IL中間代碼、元數據(Metadata))

2.然後,使用C#編譯器以及程序集鏈接器(AssemblyLinker----AL.exe)將上述託管模塊以及項目的資源文件Combine(整合)成一個程序集(Assembly)

上述程序集就是你所看到的exe文件或者dll文件等等,程序集中包含了manifest描述文件,是該程序集內容以及關系的一個清單,具體的內容你可以參見JR的書跟Java中的類似!

雙擊該exe運行的時候:

3.最後,運行時,CLR裝載對應的程序集,使用內部的三個即時編譯器(常用的為JIT),再去根據本機的環境去進行相應的優化(針對CPU優化等等),即時的翻譯成本地機器指令去執行。

還有一個本地化代碼生成工具,NGen.exe~~

這個最好能去看看那本JR的神作!細節不是我三言兩語能講清的~~

Ⅶ 請問一些用asp.net c#開發的網站系統,它們通常只有.aspx文件,而沒有.aspx.cs文件。

我來給你詳細解釋一下,記得給分

1 所有.aspx.cs文件,會被編譯到dll里去,實際上你也可以自己寫類和.aspx關聯起來,也就是說不要.aspx.cs文件了,也行。

2 發布的時候,不需要.aspx.cs文件

3 如果別人能得到你c#編譯出來的.dll文件,也能反編譯看到你的c#源碼,這里要說一下,c#編譯出的dll和傳統的比如vc++(非託管c++)編譯的win32 dll不一樣,c#的dll從概念上說更類似java編譯出來的.class文件

4 如果你要讓c#代碼保密,那一般的方式是用混淆加密,類似java的方式,讓對方從你的dll里反編譯時看到的代碼很難讀(比如變數名都被替換成短的甚至無效的),這種方式只能說大大提高對方的解讀時間成本,不能從根本上保密

5 如果要保密,可以用vc++開發那種傳統c++和託管c++混合的代碼,這樣對方除非反匯編後讀了。但這點c#做不到。

其實如果不是很重要的代碼,不會有人反編譯的,或者用4里說的就足夠了

Ⅷ c#動態編譯winform代碼

break;
case "深圳":
this.dropdownlist2.Items.Add("龍崗區");
this.dropdownlist2.Items.Add("羅湖區");
this.dropdownlist2.Items.Add("福田區");
break;
case "佛山":
this.dropdownlist2.Items.Add("禪城區");
this.dropdownlist2.Items.Add("南海區");
this.dropdownlist2.Items.Add("順德區");
break;
case "東莞":
break;
}
}

Ⅸ 編譯器錯誤消息: ASPNET: 請確保此代碼文件中定義的類與「inherits」特性匹配,並且該類擴展的基類

修改對應的aspx文件,找到開頭的地方,修改成:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="shop_proct_type
aspx.cs" Inherits="shop_proct_type" %>
其中CodeFile=後面的是哪個aspx.cs文件就寫哪個,如實寫。

閱讀全文

與aspnet源碼編譯相關的資料

熱點內容
安卓手機怎麼限制應用使用數量 瀏覽:189
司法三大本pdf 瀏覽:179
程序員掉頭發配圖 瀏覽:490
命令與征服本傳哪個好 瀏覽:276
linux系統的基本操作 瀏覽:995
php能實現p2p 瀏覽:640
linux和dos命令 瀏覽:13
javachar初始化 瀏覽:547
編譯原理復習百度 瀏覽:686
程序員記事本推薦 瀏覽:467
python淘寶數據統計 瀏覽:59
當程序員看視頻要vip 瀏覽:291
華為方舟編譯平台 瀏覽:346
java執行cmd命令 瀏覽:730
加密解密的畢設方向 瀏覽:631
c語言如何編譯交通燈 瀏覽:797
360程序員好找嗎 瀏覽:415
linux網卡啟動失敗 瀏覽:391
廣數命令 瀏覽:491
預備程序員的周末演算法 瀏覽:934