From 3ab356ff2637309dd57bf7b7ff6ff04463e0f4b1 Mon Sep 17 00:00:00 2001 From: callmeyan Date: Fri, 18 Apr 2025 21:26:40 +0800 Subject: [PATCH] =?UTF-8?q?fixed:=20=E4=BF=AE=E6=AD=A3=E6=89=A9=E5=B1=95?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E6=97=B6=E9=9D=A2=E6=9D=BF=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E5=88=9D=E5=A7=8B=E5=8C=96=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/AIProofread/v17/.suo | Bin 2867200 -> 2867200 bytes AIProofread.sln | 8 ++++---- AIProofread/AIProofread.csproj | 4 ++-- AIProofread/Logger.cs | 5 +---- AIProofread/Model/DocumentInfo.cs | 9 +++++++-- AIProofread/Model/DocumentList.cs | 21 ++++++++++++++------- AIProofread/ThisAddIn.cs | 21 +++++++++++++++++++++ 7 files changed, 49 insertions(+), 19 deletions(-) diff --git a/.vs/AIProofread/v17/.suo b/.vs/AIProofread/v17/.suo index 3df37da1d369f3cd559006533ebd233507305cc0..bdf96235583fadf85e88e385e50b23c87dce73b0 100644 GIT binary patch delta 19428 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 delta 17602 zcmdU$4^&ju+W%*tIWr6hIKT)v=P(WkIL;uAgnu&B5lPXIh%C(v5z+h?BBH4oOlIb_ zGUOzW{n3zYC^IjCajcA{uGj2lULq?iGxD0LnIV~(uj%{UXTa>e_rC9X*Spqlt>3sl z?tS*zXP$^@M33m!D+ zbj*kpupp!$5#>oB8T11V&>y(KgFSS*6r=+{D!2}~!9b7((!pRb1l#}~jL_+Z@ibDW zyAkOK5Xy8RI);n^jCu9fMJ(J?s(aVG<4bk~{qsMhEEmQFGj#ikfMa52lYLMKV1u6 z?P9F)1>EQso$@!+Fhw*ZiduP!K@L_>-YwU@m0YI$6qhMa`R`hp^5brqavkvB|0Gjh zr(32x&t=NfYi0T@dVzL&U0I5gCm`%%qL0)k#L_iJ!$z!wz_(9Y$(5c4T^ZGBu*Y`--v@} zz|&oY&m!FfHiPGYvSRXV%Wh=e1pKPEkhXxP3zJQ(F;XxoD>D+Ck~6+w)p3p{hkQt1 z?JPIA(V4-@GUqKKTu@+CE9abEA>E)Xapj9#Jens^&Pi!a$q8QsRa?u29GtXXX5T1_ zrCUt6g*LjiYE9={p=RFh;I4MZ2Qz3-Gu^Is(D+c^_}aQzLY-NlvdT7RDK>&$=a30BOk3BBUFbU68&gWIUJf8`VKPhf)98>XqcT+3_bEvx&_{y z9>dvh0YCl@=?QSM>zH0N^srlg!O=PJGdSOU=CGkhqT(G735`F*{>R&<5AD8Pcls3? zIs(4#YVaGRM*(-0*LI0E8hW_@eHZF-g}Q?RTdllvc_F2~E}N)jvmD;ECV#2khzGhd zB~ocPnV@)BqMEaY$&6+j5@lgFFSRDjfdS72^T2#?FDL<}fL}Z#ieIeyqnRw!O%WSU zKgKGHqjb8NU>3Ls%m#D7TrdyJ2ls*!umF^Tg`f;90_9*aSOV??OTjX*9NZ69fCoSY zs03axN>>7BIUnwOk74wKT3h$HMsh!egTiw8_-`Hc~B7UvA7J1&ciA@*YSiyuFVD`H!jOFOtNtbeQcdodt zyOvV^)?;;#g;XCXH{_z#(xznx9${4XmgJz+HLjYbmW`S5inlkO{^%EsZB|C5k8JYn z@xueP)>N}t%Z<1w0}KZvz(}B6^2qkF$Yg_V^W=TwzX@Gs%Ft2!NEju{O|t)(HUx*^ z%$wQ}JgN=BQ+x~8hvC9DUl+iPsDfcv7V0isAtE7=-4m@TD{ zH&h5AZ6MF@hkVJxmij{55M{#s0#A+2@esE8Vg*Jq4GPhawIZA z>q(==Nl}zuBBijG)KNb>Uh^E)6tuyL^IQcFUG813_~v0%|r}S*{gq( zOh#rho2taKzO>)WERGC32Cvoq8;;|VU1c7mH+AL76u~a|o@9d00&1A%U{>Ex?w6gR z%9U4x%_YIf-NI@~ix@shXZSqSwm z^=G@#gK?GHsP#ifG|lcC6Ru{;tR<*=eqvK%-r??(>t(l^o6H)S(s zU>BH=3x*Ypo za2lKeKZBdWPv9)r0zxs#E2y7He5Bj}-U2$NULM2*Q_XUg zE&6b*xj?miIeU!xJWQw*x_YHYDgpyAf*@c5!5{?m0HGiZgoB>I3?e`zhyoVS3q*q$ z5DR((E0BN;;(!hG0d|Y7QWuX*0_Y18K@vy?{eT1X2TtGuDPRCd1=j&L7zon9^&lM# z0)xR2FcjPXhJhPF1{e-TfRVssxg{_jN8^C&GYjcWUP`#wtuHW9@u!U-^L=u@TD5|e zYU5Ew`F=f}ew|r-E8!U4fMYnPj5;=l%su32)w`N`nQu1}NEncir{=9?4MDyZW>mJ2 zgB~C33a0d@nM1vEBdgad5iJ+g3wxPKk3lY~;(m517(QKfY-5M?&7U$eOTNhr8G^AO z8;k?v!Ob8COaQrN8vGecV3X+1&se`(r=zF{%mBq;CYS~80kgpzFc-`N^TEBK1S|lh zU?C_2i$FP8Odoy5z7)43OAUvZ!>A&+%d8$bgnLq5X_|vb^V>81)Ieh4z3eP5s~-7d&o{q0@SP8y;`KjXb86uOPZa8TeKd{V?X|b} z9Gf}%x*IEX-s5^#BKKLZgncs6lv!8)H!ZoO@#nV%krZqdxD0PWMvq z*6=|47?wt!4@HZ-&pH}+jNK<@P8c(hs%pexbom%tiJgbQ*_(KA;af53ddIlIgkyQe@4~&H`#+v58c2(iusQt1-Rl^OH_1J(!ggPv4(#I@ED{n968it`tY^ zT*MWX=be^b3*h-?%}@LAe8j@nPq)1C@ZpF0k3LW9dk9hF{KXkf-g8a^eHi4L)^`SK zmSCDLLpmQ*$yCe;3vhI=?mkT2McAyEQ*(=SN3dJR|M91pmM6uN_ZG>^Lx#|g;jz0z z2H)S9&>Ss!8Tn(R4E+qfBx%SyvI6T70kK5i`eFR(-svLu;2*-{?mWlL_=D@z_$GhXu6`{N`= zjY07VRClw~hu*PCZ>!!MoTbd@_%v#4vah4E@8nq8m@Cb$_asQHCQtH^r!T6&L#2-- z?`w8{z4sr90^({DH8^mi(m4E=e^_=>st_OTI}D*tnT&IEX#JERu! zCre)POp^TM>4*Osesy|$-#eM_I1?$s7UL%SMWMwbH zKP58C-)kLARc_g)PCUo9Gb(aPlc~MGODHUuG?y7YPOq#l0TlG zg_`qmEniFBi}ass%+OX@^I_rB(b_yjDaE?}uzZXFnzYwCkPdtzg{b~n5V`LX6KZBl z9(2}7%!LrRmDo>-Z>yd;T+`l8r>G~ssFvw5I(XrCuBp)g;s`tGm$ITrQ(rGa6iQ7IQrvnD0VO0h&9vDOvJs? zNFJaznGd%!`esi;lG^7xC(QAM$DMao3cUhjN{>_o24Dn1zyyLp2{Bir552oP`uzta9f>NzfN!|+4c1=B^YafO-vfEx6yGq$LP}=>L4ZfeQAl}Aiq)vL z>1oArGzjC-bYI1LJXY+9L#6b%J%V?Ex5oKBDD>RvFOS1A9^<3|EFbwwru8+wD#kB2RuS} z4QNeYvv)8kuy^n>x?ef8>EiAXCQP(&p*PuE9Bj(%XyXnr2}}lef+^rGFcsVl3cxf_ z2&RJ~Fas2WnP3*U2h0X@z+AurlJT%~pDYM`dxCE$@a>70nVL9}<>`%lV=^aP+qi5t z3*~xk&xUUWe4y>KT=(zyS+@V1eHMXzuCOnzGhUBdF`aU8SgPu93WxY&e;*UCuJa88 zaXwG^b<#alSc^6Bzuy3DGwEw`nTbr;Dv`N{uO$r9hH|xieKn(+?J@Z5LP#KbO%V%M~<6MJkkWiC-a0M7LV?lO!Gx>c%Gb$+x)!0jV2!XKqRTKQGT(V7sOP?7yV1f&Z=8CV3$ z!D6rk+y|C|WnekDAFKcmfC^9vyg=ZiM>U9vLztL{JbAF|7%~~TJ3)~qsOTBU7K52! z7Ptp2;HPXk3z6mGDMPvll!L`!3Ahg|1zb1Fk=_qhfCoSYs03cXqR6Llkgf9;YC(48eQSet-tCX@avsF% zyuSzWI-{aWOXKH~S!5w{kkSCaQzb}L1E%NG0|bE_?P z2`kwjgYKN~*-l@%AT*0YDWlRKnMufEn$PyI;^sm@Fsbg1A+0^g^Mhca@!!W4(B2 zrK+ie^=r?J)hnd>GV~%_8sFwdpbfoIJBjOD6jmKfp zOTF_|@8k$?5c%)c@1piwqAcp>?LyHqpC}5{I3sSA>X;EXrH9tpNY(yCPyYw=ltq_x6uO1zZbvn5($E7O~>#kD@%@L}{Z1OWY`gKUPTKi~Z z31bInl-cx~df8$UaF;N_re4kwkLrC^Q@CQDXHrk(i5G%=ZWCIcEE;`7d8R;&_T`zN zLUR;k_Dje>8!UQqL$;%25+>@pUK zz7j5}-A19_{yfBA6(XvQ`=Uw(wNw_X^icsA+4-FbFd9Nsv)8;0UO~f z*9(&g%Bi4&MKQ8^rrjE@_a%!$edm6o=yQk;pV$M-gI}$UYI{|rJ%~K@;ySf(vRM1_ zHTDzb6GNf%3Dz7nC(p36$yXaX-Y13$w9*rup=RV6_n;^YMX-#Os(uA^j5Au)QiHxK z;i@TlxUyIH#GV2ryey=to|~imPSt-`RDzzW&WfpO-u0G-RjcRr^39F5G~0WJyXxD5 zusEyE=v}8ayc}JiuWx%oNT;G)L!;{dbM#ac6}3w)X{deVZQA$2B-KAlLS#5Q&aKL!Gd_5cOcN{xYlYJRF8f9gs-=4RK?r zZypbqre-eDCko{Kwbw z;#Y0pX7X&1iS|qt;mYo|`vodgL|N^4T0DwVo^Z5(Lyy7rZSkV9KJpB|aX%4q{6sXW zoh?D(QQR?gM%H(3#Tab6Q%tPytQ8@+!KQGgwpWOq;q{#_nozJaJp2~5{jg~7_q)+` zTI<`s(fVSr)VF=h8=q%@roQ843k^7Yqz5{Y5iF{0KZvQ({K_`S?mkrNJb)WE*5h6) zPsdIXs68?wLCp;{tm>h*RT^N*-dpRB>qst%kh^$Xrj0@UE8&dtS@8agU z#g6`t3^9wb_ld%k9E88u1`k2W8Q(ih1lBqwwDb;&0gyP zvNcC1n9iKi>&9o^Hkx;TumPL+x;yE?Au$VR-~1Q{wY+DQ$??9`THm=O7y_6da|gMn z#hIvLxg(j~MQ0zjFC$1KfvO&G$SjW{-iuyH4J#aO+NDN^Quw>Za03EH-5nJFe6I#paq_*Il=C1~k59A;YPBimh*3R~6O*iRVU`JMhf7@g zPjXZnlo(qu7u+QSm)6b@^6jziG;aEFc*xjS)WW}7=Q6tVT6C7)_eqfY<6i5J&ftmo z?js%R?HlQvc`<_&hhV0Rzgd&@c%x0<^q20V!+*1yDEco(Gi@zm(W>zS>oJjpx%x|2 z1Bc6keu8c~E&RJRs<{;b9+fTC&m#L6F8I>@tK0L4<#@exyS7V6g@=irS6y;;I zvY&C7YLAL;pR0C^bwsDJoWKCXIC82lK4ce7|NYo2qSA-Z?EhlKMQ9^VcN;eJ{@1pi zZoX=Yxr1tk#fqwNp;*S$)Mjxlv}KMhCii_YGF3%LrT?v^O);o-IR=c}yd}1E`ufga zpnY?y)WOK}l&zIu4j#3-R74zxV8=@N&Egp{9~PsjsveV?J6&oQsmv!_P#fM6O;L0( zIVPG)=ji9ERX0ebAvF;Zd&qy6B}MJ%kj+6wps!EtD^T_3uvOH48y{G2+uY=T+kkmuxW%))d2X-c zE9;M9R#WR54Qntu_69HQ<8$z-`s+SJF;yE29-tAo+jiq7_8npMM}H8_^(&W!gw_l1 znZoN=K8(PyC_l^{q+%4SCdw~jz3IC2*m>%_$LxK2(pqvX3E}St`Ib|LjzYwwu$0ek{p3tjv;9$+e)m=^azbOE!*hn z64R9CP4-z)_*U&3oAeP4jg$8A7XwtbOpc_-60p~wZkcKAK8@b!KR<8nn=%IWU9T zrT9!LPmwYMZz{U?_PvanQ}FQD?&quLciTgmvTjpC@BgxS54-8wU8h^(qXWf(D3ul9RAudqJcM&OrBqyJ_?^C!JqVSIRw>zFc~Y=l7n`zbe3Z=ZerG3qju9b|o-i_~}#uP~THEjtV3NMg`Qb)U^l{`o6Ly6T%R(krQ zEU{=}8>BaX>pHnhpK}mVp0@{+|N@1_k!p+j6e|w&4zjx%;JRl9D%0+k# zdzthZ&Al^eP0c{phxDvIshGU?Nr^P!C&$O0CYCkKjeqx#8I$Htzv+e>1`JIbGju?@ zd(ce-hNch6958g~n9+l?#<+(J893;H6^qN~%pWj+PSMov3=Mox8WMH2wDg{`>BTdP zr8@M&$kK*V z$1c3Aeqngh=!hXgcjXlSc;pk+k_oOzLA-uY+8{dXN{Wf#->!E5c*`y-7?(6&8}lm0 z{M*dJ>#pdo(v_;Uo21VK>PSsmPq6NGdi|2)H%-&D?TRDRP=tC`+Oi;N8n=sK+-%)f z?S43=u>L;JO<&JB6B_T9skyrk?!~;m^I%HQK_z zC=2{L-o6Eyu|ShS^8->4qa%Zo{OSw6`X>r@yi@A>CHwjF@h>3oocAbpp=k#lGpOn_c<96u zxsc9$idi$O*<~S*TPmW0PbD{HZbnO`d#$njExDD-ytsb0z%G*eC~nqyS}viI5wSKj zx0m88JcCNV#&^8wyW~Q}em(&erxTkX_f-l%C{(=9IZ#kc z@wKiQl(EAVN(INI40>{sTtp4uN|~&T9=yozru1)d?{ab#QOz*~TE~W<7bV{#lsfzm ze0`8u>nfz0qX?TUyPSpCW3r2stGckXIf=5eHFyF(CDP>+lAR_#ifcE1CtaYe^W=h> zebKRG{to5Ec__!%#+T^bM&$B-lsdRnEY$w6YaMNUFBuyjbvS{KMZ?*6>@~>qDDOPF zFd_}_0eNV${tXnNSLdniLDw79c2Zg%P*d(js444$TunzlvxZaquaI0~rR*ioTE-lqC468c?akhgRF6jH}`vYAp1a(X~u70o>{Sty=YZDfAlWn{Iq zWvo00!G@f{xN2Vvv>zTUcaX&mh4>@o$GAAL#jsrV&|@#U#!ymnW7V6#x^pXI5P zw-#gPu+Mb|t@;61plk~5n8EU?FjyW#c|9RVC}0T{PLi!u8jUKjAV<|P;(aVF| zT(z|FPL$Vv>|8;4>sbOF*oG5jFS)jHJrvTB9j-hs%|dRsnQSEuTpYiM_Pv79)40i5 zOyRGfTbB1Af!bFP{g=q{iNJ6>;$>@t$=Gd0%x!Q*nc92c=I+s;0sQmq_Vv z!#KQck`)RaPty!?-@v0L_my)fb0qHGZR6v)An3)s zgGrnq&!t0Zxq019_E(|)wGMn2_3idsMk z3qgsab8tgV zBc(=YWcJPI`|tA%{!k*64vmM>AchsRqQqpQj$Aygc7-JuUFhwJM9(;Gd-7#A&xJ5SN`#e2#v;44Jqf|Vw6jiQJ{3v;PU{bTs z>hew~pUlf+G^h2qiRk)OGYy#tGZpTKztFn+#$-8-Yho*(YpW=4F|*LRNnAVJ2;how zqnT6C;9S~rR#K>Ss+>Yww`0_VOvU)&LQ`H`cODgHQRSWTn}3*yLIcmWL>*Nm&%`$5 zHr&--1lefQ{H{V7?vl^d7>}8B@NG0&HcigpLq~ImnN%2pzn0olfU}yTaLjOJLw%E> zzPW+9r1Y;6-eDe@4bf;*z}*4!pL&lR%T`^Z;WuW<*i__pWGBZga`Qur7>B8m&w4yC zp>;EPm0C>8>)vyOP-HQBqFK|4sV4rHgZZ>&p8OO|TnM>fcB>)JJh@nf`^0|g?uGKj zfPb7_Dxc;L3eV(#pFX$%;(`Y(;D2UfBeBtCXSZ=Rzd&W{yMqy93HD_E;OjP$xEN zz_pCW|HNJa5e|h2_t34kB+R3|6=SS*YP*IfU&BC`1e8;Gl-` ziDMNX4oj%zAvswy^ZFBsCjNIhkJ5ub$oJA=uY8$SMPn2?y>fP7Oly<#WzjU1c02~X zm(Z4zNel2PyDYMrKgsQZ@J0*zPOOn*Rm&rC0n;o_d2!xkd@}DLymp^R;g8@6(9I_i zmuYcH!}~lgnZKUTq66i;fd5^wz!Zt@Wb%0MA;tft4M7dAgIKUX(Ko(YsrY3w&QGIP zACq6xjGxRGo!Ce}8xxK4Hz}glxlEgymDcuTc$K+2s^Xzfi-KEd(OF3~f&nN;ixNX9 z`)Nof5TZ@$JymhP9*cJBv@nwjlTG|DN&gg>#tJrKV655#TdV5O&!$!%2FoeJA&e3Z zGubp>^V3vF=&=@N?%M#znEotm-2E)X2^UpN{(<;nclR^c_tRWy`_t%1>zsu7RJ#=) zXr^vPdyrD0(tewr)@{NOruHTL53IVv%oXp!%9hv4v$&oLDeXCEA8xyp8sbB$*Z_9R8 zOc7i9|3-x^(kx1SJ0Kv;hF1rPHpKmJK}DL~V(cwp!c^77<&E9a!B9-oUR8xh`RETD(Xxd`=p1}I);6B{v*fR-psp38P zRA55cyBAY?_r0AEcErTq3zX955tsiJkEu1P&4DdVnUvFtnTuPW$0sV@5|85Xl~e1-=pqkml)Tjzc$Q*>l-uN` zly?MwPT`$lvfu_2=%cq0@V2&MY~VSydBQ{TAuO4;2i*UX&#;InI>-aNHJFAjeu@}E z3um;&LKXf@5zXWT#Em$6BQ5^~rq(@(GU(ke5DshRr@iYe{efYZ^$Yau_YkSPy+dR$Mb@XMYK2lU0O8x&Ir?Kj>pAxlb_e zR^jux5y1_F(zHGv(oP<3Hd9(9dU8|7s`x3}PDN zel>;`cwtAWpE_%l5u1yl)FLRgH831X_gg)vQ$}w$qRwm!i>3LGCmiDY26O4m515%W zRn{&`p^6{y#G2RZIEhy#1^eYtEO#TeIYyHwGjIHFtouXjYeFP!h5Neu&R`8!8wdKnK)Ug}515Fu#{Pwf<;NL&j>c-)hmZTI|1C KboxZs?*9b&yC`-5 diff --git a/AIProofread.sln b/AIProofread.sln index b9084f0..523a3e3 100644 --- a/AIProofread.sln +++ b/AIProofread.sln @@ -20,12 +20,12 @@ Global Test|Any CPU = Test|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Debug|Any CPU.ActiveCfg = Release_Anno|Any CPU + {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Debug|Any CPU.Build.0 = Release_Anno|Any CPU {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Release|Any CPU.ActiveCfg = Release|Any CPU {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Release|Any CPU.Build.0 = Release|Any CPU - {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Test|Any CPU.ActiveCfg = Test|Any CPU - {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Test|Any CPU.Build.0 = Test|Any CPU + {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Test|Any CPU.ActiveCfg = Release_Anno|Any CPU + {6CE536CB-6154-4FDF-9FFE-23A73B4E84AB}.Test|Any CPU.Build.0 = Release_Anno|Any CPU {455E23BE-F34F-4F6F-A9EA-381D66170B1B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {455E23BE-F34F-4F6F-A9EA-381D66170B1B}.Debug|Any CPU.Build.0 = Debug|Any CPU {455E23BE-F34F-4F6F-A9EA-381D66170B1B}.Release|Any CPU.ActiveCfg = Release|Any CPU diff --git a/AIProofread/AIProofread.csproj b/AIProofread/AIProofread.csproj index d5552f0..f9a22cf 100644 --- a/AIProofread/AIProofread.csproj +++ b/AIProofread/AIProofread.csproj @@ -577,7 +577,7 @@ 62DF6B414BD2608A130540A801F32D12E0199A99 - + bin\Test\ VSTO40;TRACE true @@ -585,7 +585,7 @@ AnyCPU 7.3 - + bin\Win32\Test\ VSTO40 AnyCPU diff --git a/AIProofread/Logger.cs b/AIProofread/Logger.cs index 3ee9048..0cb4d3c 100644 --- a/AIProofread/Logger.cs +++ b/AIProofread/Logger.cs @@ -32,10 +32,7 @@ namespace AIProofread try { StreamWriter streamWriter = File.AppendText(path); - streamWriter.WriteLine("***************************[" + tag + "]***************************"); - streamWriter.WriteLine("消息:" + message); - streamWriter.WriteLine("时间:" + time); - streamWriter.WriteLine(); + streamWriter.WriteLine($"{time} [{tag}]:" + message); streamWriter.Flush(); streamWriter.Close(); streamWriter.Dispose(); diff --git a/AIProofread/Model/DocumentInfo.cs b/AIProofread/Model/DocumentInfo.cs index 882686c..65176a7 100644 --- a/AIProofread/Model/DocumentInfo.cs +++ b/AIProofread/Model/DocumentInfo.cs @@ -102,6 +102,7 @@ namespace AIProofread.Model /// public void ShowPane() { + CheckPanel(); if (null != TaskPane) { TaskPane.Visible = PaneVisible = true; @@ -110,6 +111,7 @@ namespace AIProofread.Model public void RunInMainThread(Action action) { + CheckPanel(); if (null != TaskPane) { TaskPane.Control.BeginInvoke(action); @@ -914,6 +916,7 @@ namespace AIProofread.Model public void ExportResult(string modelType) { + CheckPanel(); TaskPane.Control.BeginInvoke(new Action(() => { DocumentUtil.ExportProofreadResult(modelType); @@ -922,6 +925,7 @@ namespace AIProofread.Model public void ShowUpgrade(string data, bool force) { + CheckPanel(); TaskPane.Control.BeginInvoke(new Action(() => { var upgradeData = JsonConvert.DeserializeObject(data); @@ -974,7 +978,7 @@ namespace AIProofread.Model public void ShowSetting() { - + CheckPanel(); TaskPane.Control.BeginInvoke(new Action(() => { FormSetting frm = new FormSetting(); @@ -983,6 +987,7 @@ namespace AIProofread.Model } public void ShowWebView(string url, int width, int height, bool dialog) { + CheckPanel(); TaskPane.Control.BeginInvoke(new Action(() => { FormWebView view = new FormWebView(url, width, height); @@ -1019,7 +1024,7 @@ namespace AIProofread.Model return dic; } - internal void CheckPanel() + public void CheckPanel() { Logger.Log(CurrentDocument.FullName + $" TaskPane visible {PaneVisible} has " + (TaskPane == null ? "null" : "exists")); if (TaskPane == null) CreateTaskPane(); diff --git a/AIProofread/Model/DocumentList.cs b/AIProofread/Model/DocumentList.cs index 926b27f..4a8354c 100644 --- a/AIProofread/Model/DocumentList.cs +++ b/AIProofread/Model/DocumentList.cs @@ -103,6 +103,19 @@ namespace AIProofread.Model return documentList.IndexOf(item); } + public DocumentInfo InitDocument(Document originDocument) + { + var document = Get(originDocument); + + // 如果不存在,则添加 + if (document == null) + { + document = new DocumentInfo(originDocument); + Add(document); + } + return document; + } + ///

/// 设置当前激活的文档 /// @@ -110,14 +123,8 @@ namespace AIProofread.Model public DocumentInfo SetActiveDocument(Document originDocument) { if (originDocument == null) return null; - var document = Get(originDocument); + var document = InitDocument(originDocument); - // 如果不存在,则添加 - if (document == null) - { - document = new DocumentInfo(originDocument); - Add(document); - } if (ActiveDocument == document) return document; else if (Globals.ThisAddIn.IsWPS) { diff --git a/AIProofread/ThisAddIn.cs b/AIProofread/ThisAddIn.cs index 7495735..378c05f 100644 --- a/AIProofread/ThisAddIn.cs +++ b/AIProofread/ThisAddIn.cs @@ -285,6 +285,7 @@ namespace AIProofread private void AppInitialize() { + Logger.Log("AppInitialize start... "); CurrentWordApplication = Application; // 初始化配置 InitAppByConfig(); @@ -308,6 +309,25 @@ namespace AIProofread Logger.Log("Init WPS Error " + ex.Message); } } + // 如果启用直接有文档打开 + // 初始化面板 + try + { + var docList = CurrentWordApplication.Documents; + if(docList.Count > 0) + { + foreach (Document item in docList) + { + Logger.Log("Init Documentinfo ==> " + item.Name); + var info = documentList.InitDocument(item); + info.CheckPanel(); + } + } + } + catch (Exception ex) + { + Logger.Log("Init Documentinfo Error " + ex.Message); + } string verTextFile = Config.APP_BASE_DIR + Path.GetFileName("app_version.txt"); try { @@ -317,6 +337,7 @@ namespace AIProofread { Logger.Log("Write App Version Error " + ex.Message); } + } private void InitAppByConfig()