![開(kāi)源代碼系列之Office文檔讀寫(xiě)(ExcelWord_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-4/26/f873e9ed-50cf-4685-9667-f645be90531a/f873e9ed-50cf-4685-9667-f645be90531a1.gif)
![開(kāi)源代碼系列之Office文檔讀寫(xiě)(ExcelWord_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-4/26/f873e9ed-50cf-4685-9667-f645be90531a/f873e9ed-50cf-4685-9667-f645be90531a2.gif)
![開(kāi)源代碼系列之Office文檔讀寫(xiě)(ExcelWord_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-4/26/f873e9ed-50cf-4685-9667-f645be90531a/f873e9ed-50cf-4685-9667-f645be90531a3.gif)
![開(kāi)源代碼系列之Office文檔讀寫(xiě)(ExcelWord_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-4/26/f873e9ed-50cf-4685-9667-f645be90531a/f873e9ed-50cf-4685-9667-f645be90531a4.gif)
![開(kāi)源代碼系列之Office文檔讀寫(xiě)(ExcelWord_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-4/26/f873e9ed-50cf-4685-9667-f645be90531a/f873e9ed-50cf-4685-9667-f645be90531a5.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word) Office系列文檔使用的是所謂的Compound File,也就是Structured Storage,簡(jiǎn)單地說(shuō),也就是在一個(gè)文件中有一個(gè)文件系統(tǒng),結(jié)構(gòu)化保存復(fù)合內(nèi)容(流)。微軟為了壟斷,這些文件結(jié)構(gòu)是不公開(kāi)的,但有牛人研究出來(lái),一個(gè)很不錯(cuò)的例子就是Open Office代碼,里面就有大部分Office系列文檔格式的java代碼,包括Word、Excel、PowerPoint、Outlook等,現(xiàn)在市面上的商業(yè)化軟件很多都在使用別人的勞動(dòng)成功,明的暗的。 今天介紹的是3個(gè)開(kāi)源代碼,都是關(guān)于Excel的,應(yīng)用.NET編寫(xiě),2個(gè)是讀,一
2、個(gè)是寫(xiě)。 koogra:超一流的Excel文件解析類(lèi)庫(kù),支持最新版本的Excel文件,包括2003版本的,在我向作者指出的錯(cuò)誤之后,作者特別添加了對(duì)中文的支持,C#編寫(xiě),(這是我介紹的所有的開(kāi)源代碼中第二個(gè)獲得我給予的6星評(píng)價(jià)的,大家可以體驗(yàn)一下),用了這個(gè)類(lèi)庫(kù),大家就不需要打開(kāi)Excel實(shí)例來(lái)解析Excel文件了! Smart Excel Library:這個(gè)東西是我寫(xiě)的,用以寫(xiě)B(tài)IFF2.1格式的文件,VB.NET,不支持最新版本的Excel格式,但任何版本的Excel都可以直接打開(kāi),我記得有個(gè)博客園的朋友移植到C#,大家可以搜索一下。用了這個(gè)類(lèi)庫(kù),大家就可以不用Excel而直接生成標(biāo)準(zhǔn)的
3、Excel文件,而不是那種CSV,又或者通過(guò)HTTP Header來(lái)讓Excel認(rèn)為是Excel的做法,因?yàn)樗恢С指袷健?OLE Structured Storage Classes,VB大牛Edanmo用VB.NET寫(xiě)的結(jié)構(gòu)化文檔格式讀取類(lèi)庫(kù),不喜歡VB.NET而喜歡C#的朋友將就一下,反正是類(lèi)庫(kù),編譯一下便可通用:) 事實(shí)上肯定不只這些,如果大家知道,可以和別人分享一下:) posted on 2005-02-28 00:03 奮斗中的靈感之源 閱讀(4141) 評(píng)論(14) 編輯收藏 收藏至365Key 所屬分類(lèi): 3.開(kāi)源項(xiàng)目 FeedBack: #re: 開(kāi)源代碼系列之Office
4、文檔讀寫(xiě)(Excel/Word)2005-02-28 09:18 | 強(qiáng)把憂郁再掩蓋我用不開(kāi)源得Aspose回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-02-28 09:22 | 靈感之源:PSP團(tuán)隊(duì)GuruAspose 不是開(kāi)源的?。』貜?fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-02-28 09:45 | HelloSnoopy開(kāi)發(fā)田地有沒(méi)有word讀寫(xiě)的?回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-02-28 10:08 | daniel非常usefull. thanks a l
5、ot. 真的希望您能夠再寫(xiě)一篇關(guān)于Word控件的文章?;貜?fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-03-01 14:54 | cqhydz我想問(wèn)一下,有關(guān)OpenPOP.NET除了以下地址中提到的好久沒(méi)更新了/unruledboy/archive/2004/06/16/16143.html 我希望老大能對(duì)OpenPOP.NET開(kāi)幾篇幅專(zhuān)門(mén)講一下?;貜?fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-03-01 18:11 | myrat也想要word讀寫(xiě)的:)回復(fù)#re: 開(kāi)源代碼系列之
6、Office文檔讀寫(xiě)(Excel/Word)2005-03-02 16:48 | 靈感之源:奮斗中to:cqhydz 沒(méi)有精力寫(xiě)?;貜?fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-04-02 16:27 | 雨田smart Excel 怎么增加一張表頁(yè)回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-05-12 09:51 | 登峰在線編輯word文檔目前有更好的解決辦法嗎回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-05-24 22:57 | 藍(lán)風(fēng)紅月亮工作室的 Word Excel 在線編輯
7、控件,對(duì)個(gè)人用戶(hù)免費(fèi),使用簡(jiǎn)單,功能強(qiáng)大,支持痕跡保留,輕松連同表單數(shù)據(jù)一起發(fā)送至服務(wù)器。 回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-05-28 09:40 | 無(wú)我境地請(qǐng)問(wèn)哪有,PowerPoint 的讀寫(xiě)的代碼,相關(guān)的資料也行。 回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-09-09 12:24 | zzb從6.0版本開(kāi)始進(jìn)行word操作就不是很難阿,我還是覺(jué)得不用類(lèi)寫(xiě)出來(lái)的更靈活回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-11
8、-06 23:07 | zhebeiSmart Excel Librar做的文件koogra等其他非程式開(kāi)不了有沒(méi)有辦法回復(fù)#re: 開(kāi)源代碼系列之Office文檔讀寫(xiě)(Excel/Word)2005-12-01 10:32 | huangzp之能寫(xiě)入文本模式的數(shù)據(jù).:( 有沒(méi)有什么好的framework 支持向excel 中寫(xiě)入jpeg格式的圖像?回復(fù)將Exce嵌入你的.Net程序這是一篇技術(shù)總結(jié),主要說(shuō)明在.Net情況下,將Excel嵌入我們自己的程序,并進(jìn)行控制。 由于微軟再一次推遲了.Net版的OLE Container Control的發(fā)布(2005版本叫ActiveDocument
9、Control),使我們幾乎沒(méi)有太多的辦法來(lái)完成這個(gè)任務(wù)(你可以利用Visual C來(lái)完成你的工作,不過(guò)該實(shí)現(xiàn)對(duì)技術(shù)的要求太高,大部分人不具備這個(gè)能力,因此只好作罷,最好在Visual C基礎(chǔ)上開(kāi)發(fā)一個(gè)控件,在別的環(huán)境下調(diào)用,如果你能做這個(gè)工作,請(qǐng)幫幫我),只能夠使用重量級(jí)的解決方案,就是利用WebBrowser控件和dsoframer.OCX來(lái)完成這個(gè)工作。在最新的Visual Studio 2005中,為我們提供了一個(gè)WebBrowser的封裝控件,這個(gè)控件隱藏了底層的axWebBrowser控件,我們就利用WebBrowser控件來(lái)完成我們的Excel等ActiveDocument的嵌入
10、和操作。在此之前,你需要將Office的.Net庫(kù)安裝到你的機(jī)器上。1在你的工具欄上選擇WebBrowser控件,將其放到你的Form上2在Form上增加一個(gè)控件來(lái)使其加載一個(gè)Excel文件,如下:Button的事件處理程序: private void button1_Click_1(object sender, EventArgs e) string strFileName = d:a.xls; Object refmissing = System.Reflection.Missing.Value; this.webBrowser1 .Navigate(strFileName); objec
11、t axWebBrowser = this.webBrowser1.ActiveXInstance; 3.增加WebBrowser的DocumentComplete事件處理程序private void webBrowser1_DocumentCompleted_1(object sender, WebBrowserDocumentCompletedEventArgs e) Object refmissing = System.Reflection.Missing.Value; object args = new object4; args0 = SHDocVw.OLECMDID.OLECMDI
12、D_HIDETOOLBARS; args1 = SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER; args2 = refmissing; args3 = refmissing; object axWebBrowser = this.webBrowser1.ActiveXInstance; axWebBrowser.GetType().InvokeMember(ExecWB, BindingFlags.InvokeMethod, null, axWebBrowser, args); object oApplication = axWebBro
13、wser.GetType().InvokeMember(Document, BindingFlags.GetProperty, null, axWebBrowser, null); Excel.Workbook wbb = (Excel.Workbook)oApplication; Excel.ApplicationClass excel = wbb.Application as Excel.ApplicationClass ; Excel.Workbook wb = excel.Workbooks1 ; Excel.Worksheet ws = wb.Worksheets1 as Excel
14、.Worksheet; ws.Cells.Font.Name = Verdana; ws.Cells.Font.Size = 14; ws.Cells.Font.Bold = true; Excel.Range range = ws.Cells; Excel.Range oCell = range10, 10 as Excel.Range ; oCell.Value2 = 你好; 這里要注意,WebBrowser加載Excel文檔后,并不顯示工具欄,為此我們需要使用高級(jí)一點(diǎn)的技術(shù),通過(guò)反射調(diào)用底層的方法來(lái)實(shí)現(xiàn),首先我們需要找到WebBrowser封裝的AxWebBrowser控件。 objec
15、t axWebBrowser = this.webBrowser1.ActiveXInstance;然后,我們調(diào)用反射來(lái)顯示工具欄 Object refmissing = System.Reflection.Missing.Value; object args = new object4; args0 = SHDocVw.OLECMDID.OLECMDID_HIDETOOLBARS; args1 = SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER; args2 = refmissing; args3 = refmissing; axWebB
16、rowser.GetType().InvokeMember(ExecWB, BindingFlags.InvokeMethod, null, axWebBrowser, args);注:如果你直接使用AxWebBrowser控件,那你就可以直接調(diào)用ExecWB方法來(lái)顯示工具欄。如下:axWebBrowser1.ExecWB(SHDocVw.OLECMDID.OLECMDID_HIDETOOLBARS, SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER, refmissing, refmissing)好了,現(xiàn)在你需要獲得你的Excel對(duì)象來(lái)操作
17、Excel,此時(shí)需要使用Office的.Net庫(kù)來(lái)完成。代碼如下: object oApplication = axWebBrowser.GetType().InvokeMember(Document, BindingFlags.GetProperty, null, axWebBrowser, null); Excel.ApplicationClass excel = wbb.Application as Excel.ApplicationClass ; Excel.Workbook wb = excel.Workbooks1 ; Excel.Worksheet ws = wb.Workshe
18、ets1 as Excel.Worksheet; ws.Cells.Font.Name = Verdana; ws.Cells.Font.Size = 14; ws.Cells.Font.Bold = true; Excel.Range range = ws.Cells; Excel.Range oCell = range10, 10 as Excel.Range ; oCell.Value2 = 你好;現(xiàn)在你可以隨心所欲來(lái)控制Excel了,效果如下說(shuō)明:通過(guò)使用WebBrowser控件,是不能顯示菜單欄的。3.如果使用AxWebBrowser控件,那就需要處理NavigateComplete
19、2事件,事件處理程序如下 private void axWebBrowser_NavigateComplete2(object sender, AxSHDocVw.DWebBrowserEvents2_NavigateComplete2Event e) Object refmissing = System.Reflection.Missing.Value; this.webBrowser1.ExecWB(SHDocVw.OLECMDID.OLECMDID_HIDETOOLBARS, SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER, ref
20、refmissing, ref refmissing); Object o = e.pDisp; Object oDocument = o.GetType().InvokeMember(Document,BindingFlags.GetProperty, null, o, null); Object oApplication = o.GetType().InvokeMember(Application, BindingFlags.GetProperty, null, oDocument, null); /由于打開(kāi)的是excel文件,所以這里的oApplication 其實(shí)就是Excel.App
21、lication Excel.Application excel = (Excel.Application)oApplication;/這樣就可以象上文中所述來(lái)操作Excel了。 Excel.Workbook wb = excel.Workbooks1; Excel.Worksheet ws = wb.Worksheets1 as Excel.Worksheet; ws.Cells.Font.Name = Verdana; ws.Cells.Font.Size = 14; ws.Cells.Font.Bold = true; Excel.Range range = ws.Cells; Exce
22、l.Range oCell = range10, 10 as Excel.Range; oCell.Value2 = 你好; 這里操作更簡(jiǎn)單一點(diǎn),缺點(diǎn)就是你必須直接使用AxWebBrowser控件,該控件比起已經(jīng)封裝好的WebBrowser可能有些我們所不知道的問(wèn)題。微軟推薦大家通過(guò)WebBrowser來(lái)訪問(wèn)。使用AxWebBrowser,有一個(gè)意外的收獲,如下: Object o = e.pDisp; IOleCommandTarget cmdTarget = o as IOleCommandTarget; Guid guidCMDGroup = new Guid(-0000-0000-C0
23、00-6); cmdTarget.Exec(ref guidCMDGroup , 1, 0, null, null);通過(guò)IoleCommandTarget可以模擬如菜單命令,這樣你可以自己定制菜單,然后將菜單命令發(fā)送到Excel來(lái)處理。呵呵,模擬菜單。 public interface IOleCommandTarget PreserveSig() int QueryStatus(In, MarshalAs(UnmanagedType.Struct) ref Guid pguidCmdGroup, MarshalAs(UnmanagedType.U4) int cCmds, In, Out
24、IntPtr prgCmds, In, Out IntPtr pCmdText); PreserveSig() int Exec(ref Guid pguidCmdGroup, uint nCmdID, uint nCmdExecOpt, object pvaIn, In, Out, MarshalAs(UnmanagedType.LPArray) object pvaOut); 4如果我們使用Visual C我們可以獲得一個(gè)完全的,嵌入式Excel,包括菜單,看起來(lái)就像我們自己的一樣:可惜我們對(duì)Visual C+都不太知道如何控制。使用AxWebBrowser或者WebBrowser的方法將
25、Office嵌入我們的.Net系統(tǒng)問(wèn)題有幾個(gè),1是WebBrowser控件是一個(gè)比較重的控件,2是通過(guò)WebBrowser去控制Office如果出現(xiàn)問(wèn)題沒(méi)有辦法進(jìn)行調(diào)試與判斷,也無(wú)法修改,3是Office對(duì)應(yīng)的菜單沒(méi)有辦法控制。為此我們決定需求新的解決方案,使用微軟提供的dsoFramer控件例子,這個(gè)例子使用VC編寫(xiě),本身是可以使用的,可以參見(jiàn): /default.aspx?scid=kb;en-us;在這里下載dsoFramer的源碼/downloads/details.aspx?famil
26、yid=CE2CA4FD-2169-4FAC-82AF-770AA9B60D77&displaylang=en下面進(jìn)行我們的改造過(guò)程1.使用VisualStudio2005打開(kāi)該VC工程,按系統(tǒng)提示進(jìn)行轉(zhuǎn)換2.轉(zhuǎn)換完成后,發(fā)現(xiàn)該控件缺少OLB文件,這個(gè)文件是控件的對(duì)象庫(kù),在引用該控件的時(shí)候要用到,編譯該對(duì)象庫(kù)需要mktyplib.exe但該工具在VS2005中已經(jīng)不再提供,使用MIDL代替,但MIDL又不支持這種轉(zhuǎn)換過(guò)來(lái)的工程,沒(méi)想到第一步就遇到了挫折,為此想了很多辦法,后來(lái)從VS2003中找到舊的mktyplib.exe,拷入VS2005commontoolsbin下面,呵呵可以了,(這個(gè)應(yīng)
27、該算VS2005的一個(gè)Bug吧)3.編譯好ocx,通過(guò)Regsvr32 注冊(cè)到系統(tǒng)中4.創(chuàng)建一個(gè)C#工程,引入剛才的ocx5.發(fā)現(xiàn)該控件,自帶了菜單,工具欄,并且我們基本不能控制該控件,暈倒6.決定自己將它的菜單欄放到我們的.Net Form上,發(fā)現(xiàn)不能將C+的菜單直接放過(guò)來(lái),C+的有太多的控制了,如果要重寫(xiě)這些控制,就要吐血了,并且發(fā)現(xiàn)新的MenuStrip控件根本就不是一個(gè)菜單,傳入C+后,不認(rèn)識(shí)。費(fèi)了好大的勁,將Form的MainMenu給傳了進(jìn)去,呵呵,這下行了,看看運(yùn)行的效果:怎么樣,感覺(jué)還不錯(cuò)吧,現(xiàn)在這個(gè)Excel就可以好好的控制了,最主要的是, 如果你想增加什么新的東西,出現(xiàn)什么
28、問(wèn)題就可以自己調(diào)試解決了。如果你要在OCX中增加接口,你必須同時(shí)修改三個(gè)地方,一個(gè)是ODL,OCX的接口定義文件,并且按照規(guī)范,一個(gè)是你的控件實(shí)現(xiàn)的對(duì)應(yīng)的.H文件,一個(gè)實(shí)現(xiàn)的.CPP文件,這些都簡(jiǎn)單了。6.菜單出來(lái)了,發(fā)現(xiàn)不能控制,又再次暈倒,不知所措了解決辦法,是通過(guò)OVerride窗體的WndProc方法,將菜單的事件,除了你自己的菜單以外的,都給傳到OCX中。在OCX中增加一個(gè)接口方法:ExecuteMenuMessage,它直接調(diào)用OnMenuMessage,呵呵,這樣就行了,代碼如下: protected override void WndProc(ref Message m) In
29、tPtr lWParam=IntPtr.Zero ; switch (m.Msg) case WindowsMessages.WM_INITMENU : case WindowsMessages.WM_ENTERIDLE: case WindowsMessages.WM_MENUSELECT: case WindowsMessages.WM_INITMENUPOPUP: case WindowsMessages.WM_COMMAND : ExecuteMenuMessage(m.Msg, m.WParam, m.LParam); /Console.Write(m.Msg.ToString(X)
30、; /Console.Write( ); /Console.Write(lWParam.ToString(X); /Console.Write( ); /Console.WriteLine(m.LParam.ToString(X); break; base.WndProc(ref m); 現(xiàn)在菜單信息也傳入了,哦,創(chuàng)建菜單的程序如下,酷吧:private void Form1_Load(object sender, EventArgs e) /if (this.Menu = null) this.Menu = new MainMenu(); CreateFileMenu(); IntPtr h
31、MainMenu = this.Menu.Handle; this.axFramerControl1.MainFormMenu = hMainMenu; this.axFramerControl1.MainForm = this.Handle; private void CreateFileMenu() IntPtr pFileMenu = MenuHelper.CreatePopupMenu(); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_NEW, 新建(&N).tCtrl+N); M
32、enuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_OPEN, 打開(kāi)(&O).tCtrl+O); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_CLOSE, 關(guān)閉(&C); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_SEPARATOR, 0, string.Empty); MenuHelper.AppendMenu(pFileMenu, MenuF
33、lags.MF_STRING, FrameMenuMessage.MNU_SAVE, 保存(&S)tCtrl+S); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_SAVEAS, 另存為(&A).); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_SEPARATOR, 0, string.Empty); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_PGSETUP, 頁(yè)面設(shè)置(&U).); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_PRINTPV, 打印預(yù)覽(&V); MenuHelper.AppendMenu(pFileMenu, MenuFlags.MF_STRING, FrameMenuMessage.MNU_PRINT, 打
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 知識(shí)產(chǎn)權(quán)和保密合同協(xié)議書(shū)
- 多維遙感技術(shù)應(yīng)用合作協(xié)議
- 企業(yè)文化與品牌形象塑造合同
- 物流公司聘用駕駛員勞動(dòng)合同
- 雙方協(xié)商培育樹(shù)苗合同書(shū)
- 挖機(jī)買(mǎi)賣(mài)合同書(shū)樣本
- 場(chǎng)食品安全協(xié)議書(shū)
- 招投標(biāo)合作代理協(xié)議
- 資源租賃合同
- 汽車(chē)租賃行業(yè)車(chē)輛使用期間損失免責(zé)協(xié)議
- 2025年度劇本殺劇本版權(quán)授權(quán)與收益分成合同
- 2025年春季學(xué)期學(xué)校工作計(jì)劃及安排表
- 2025年一種板式過(guò)濾膜裝置項(xiàng)目投資可行性研究分析報(bào)告
- BMS基礎(chǔ)知識(shí)培訓(xùn)
- 水刀除銹施工方案
- 質(zhì)保管理制度
- 2024新版《藥品管理法》培訓(xùn)課件
- 浙江省杭州市2024年中考英語(yǔ)真題(含答案)
- 《陸上風(fēng)電場(chǎng)工程設(shè)計(jì)概算編制規(guī)定及費(fèi)用標(biāo)準(zhǔn)》(NB-T 31011-2019)
- 2024初中數(shù)學(xué)課程標(biāo)準(zhǔn)測(cè)試題(含答案)精華版
- 2024年陜西延長(zhǎng)石油集團(tuán)礦業(yè)公司招聘筆試參考題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論