@@ -106,8 +106,16 @@ private void UnzipFile()
106106 Directory . CreateDirectory ( directory ) ;
107107 ZipFile . ExtractToDirectory ( file , directory , true ) ;
108108
109- // 这个方法对嵌入excel表格的PPT文件进行处理。
110- UnZipOleObjectFile ( ) ;
109+ // 涉及IO操作,最好捕获一下异常。
110+ try
111+ {
112+ // 这个方法对嵌入excel表格的PPT文件进行处理。
113+ UnZipOleObjectFile ( ) ;
114+ } catch ( Exception exception )
115+ {
116+ Warn ( exception . ToString ( ) ) ;
117+ }
118+
111119
112120 Warn ( "" ) ;
113121 }
@@ -245,18 +253,38 @@ private void Zip_OnClick(object sender, RoutedEventArgs e)
245253
246254 var directory = OfficeFolder . Text ;
247255
248- // 这个步骤是查找问价夹里是否存在oleObj元素映射的xlsx文件,并进行压缩处理。
249- var directoryInfos = ZipOleObjectFile ( ) ;
256+ DirectoryInfo [ ] directoryInfos = null ;
257+
258+ // 涉及IO操作,最好捕获一下异常。
259+ try
260+ {
261+ // 这个步骤是查找问价夹里是否存在oleObj元素映射的xlsx文件,并进行压缩处理。
262+ directoryInfos = ZipOleObjectFile ( ) ;
263+ }
264+ catch ( Exception exception )
265+ {
266+ Warn ( exception . ToString ( ) ) ;
267+ }
268+
250269 ZipFile . CreateFromDirectory ( directory , file , CompressionLevel . NoCompression , false ) ;
251270
252- if ( directoryInfos is not null )
271+ // 涉及IO操作,最好捕获一下异常。
272+ try
253273 {
254- foreach ( var directoryInfo in directoryInfos )
274+ if ( directoryInfos is not null )
255275 {
256- // 进行恢复现场。
257- directoryInfo . Create ( ) ;
276+ foreach ( var directoryInfo in directoryInfos )
277+ {
278+ // 进行恢复现场。
279+ directoryInfo . Create ( ) ;
280+ }
258281 }
259282 }
283+ catch ( Exception exception )
284+ {
285+ Warn ( exception . ToString ( ) ) ;
286+ }
287+
260288
261289 OfficeFile . Text = file ;
262290 OfficeFolder . Text = directory ;
0 commit comments