From e25cc1b51e50695c169945acf7d99ed4d11af69d Mon Sep 17 00:00:00 2001 From: wule Date: Fri, 3 Oct 2025 17:50:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=93=E5=8F=96=E6=8B=BC=E5=A4=9A=E5=A4=9A?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=8F=B0=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AllBase/BaseClass.cs | 2 +- AllBase/Model/Result/ShopLoginInfo.cs | 1 + DllReference/FiddlerCore4.dll | Bin 0 -> 434504 bytes .../KJD_WebService/BLL/BXX/BXXShopManage.cs | 13 +- .../Model/ShopModel/ShopParam.cs | 1 + TEMUKJD/BLL/HttpResponseBLL.cs | 21 ++ TEMUKJD/BLL/MemoryReader.cs | 78 +++++ TEMUKJD/BLL/ShopBLL.cs | 1 + .../CustomResourceRequestHandlerLocal.cs | 4 +- TEMUKJD/Helper/FddlHelper.cs | 90 +++++ TEMUKJD/KJD.csproj | 16 + TEMUKJD/KJDForms/ShopForms/ShopListForm.cs | 1 + .../AdminForms/PDDAdminShopLoginForm.cs | 42 ++- .../ShopForms/PDDShopListForm.Designer.cs | 2 +- TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs | 56 ++- .../ShopForms/PDDShopLoginForm.Designer.cs | 2 +- .../PDDForms/ShopForms/PDDShopLoginForm.cs | 37 +- .../ShopForms/PDDShopUpdateCookieForm.cs | 75 ++-- .../PDDShopUpdateFddlCookieForm.Designer.cs | 110 ++++++ .../ShopForms/PDDShopUpdateFddlCookieForm.cs | 331 ++++++++++++++++++ .../PDDShopUpdateFddlCookieForm.resx | 298 ++++++++++++++++ Work/Initialization.cs | 6 + 22 files changed, 1130 insertions(+), 57 deletions(-) create mode 100644 DllReference/FiddlerCore4.dll create mode 100644 TEMUKJD/BLL/MemoryReader.cs create mode 100644 TEMUKJD/Helper/FddlHelper.cs create mode 100644 TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.Designer.cs create mode 100644 TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs create mode 100644 TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.resx diff --git a/AllBase/BaseClass.cs b/AllBase/BaseClass.cs index 7cfc74c..fd3b73e 100644 --- a/AllBase/BaseClass.cs +++ b/AllBase/BaseClass.cs @@ -27,7 +27,7 @@ namespace AllBase /// /// 版本ID /// - public static int VersionCount = 613; + public static int VersionCount = 615; //public static int VersionCount = 613; /// diff --git a/AllBase/Model/Result/ShopLoginInfo.cs b/AllBase/Model/Result/ShopLoginInfo.cs index ae8fd91..5b8f151 100644 --- a/AllBase/Model/Result/ShopLoginInfo.cs +++ b/AllBase/Model/Result/ShopLoginInfo.cs @@ -31,6 +31,7 @@ namespace AllBase.Model.Result public string TouTiaoId { get; set; } public string Cookies { get; set; } = ""; public string Cookies2 { get; set; } = ""; + public string pddid { get; set; } public ConcurrentList AntiContents { get; set; } = new ConcurrentList(); public Dictionary DictMultiCookies { get; set; } = new Dictionary(); public string LoginStatus { get; set; } diff --git a/DllReference/FiddlerCore4.dll b/DllReference/FiddlerCore4.dll new file mode 100644 index 0000000000000000000000000000000000000000..bf22ee57f51e9fb10ce3bf2db00d010247e2f4f3 GIT binary patch literal 434504 zcmd4437i~NwLe}{)m_!=%+&OxyJyLCCnQ7B%S@7C$pU171ca~$NCFZFASNso?*Jm5 z9tPRBU_@Nl9g&BkC@6}E3huioKA#F1P+Xqt^SSHO@cW)~ZdG^BOai|D=l}cs<}+P& zmvhfO_uO;Oz4zRuj@kGY!!isbg5S$88^+^!)87hy?)@>2==Q=B?Z!vr-ue*L2fS^=A2|((lEwt!@xiN4c!Yz5sv#fpp)IE&`t3~KmWamc!c|p+bGwH zYYd~4{~K@Z4Z!cQjibp8yuTwx1b^4t#*sbnJY^fHAnadx7Y!rU1RsO{$R_{L#phmj zG5q^qq02QcbT@%e5zib_qv~t~GHsxd3;JffoBmdyx`x!b7x(~VT0t}Mz_@lA+^VKz z?Cd1I;*V%Eji~Yb-KG&~ix_bZ1p)6cjmrUYd=b^5!}j*N@!q5Nzh~RY&;9h?$%h_% z_aT=pu{$20_2fOroc7z@-~GT*2mfm4w|@U$-qI7kf97$2x~==?xBcj=TW)))cjZHW zI;DQfL&v}QhC|k=L!CP>`o$rKuKL-&xBcV49=`LlKYi-HwfDUE+Iw#QliAPub?uj`+KWD$rxhJ;GH7#$JVI)d(&721w*rknQ zS@_Lb4o|NQAzq&1QHZ_;F{6eM{JW$52uzs%Y`hc#w)q2aE!hC))Ih(0n55I=74c4W zr?Z(zu?c$E8e zqFNg8UWFi%wwvTg*KzIj83z=)_SUXw%>l?o8eUeuKFDXWIe0@rq93^s-rZZ=`&dp*bp zc${6}jGcqvYQ#=WE;I`{iAYV(PYQb;1bcGKo^(9x_y>ZRi8ym)(#V!#R7Y))H>%lr zgT_9Pq_(~VmI0j5GLl!1&MP;ZKn4w8Z0sOlOHCePdyC=lm(XJ=9;h|QNTOn^;WlGi z(oxIt>N3285$GL)M`|)Ys1qBpQjq_t8;m&RpF#ewNB&S}uGfM0*gTZ*5@>m|(#h_N z$?ac>s1p1ALxI#^PLCCMB-CNZ&|8Q2r0w`C5mZUTv5Ei=V}PRpz)5ZIa0HZ&ZORCG z$L!v1l`;!V1KNe^pqUPePS{m5Te406a^#T%6Z-&*d`M_r##?DCWfNo24w3mu6n!-^ zk#KXe;DO=x{Hi@TdIcQgRJzH8U9lZ+4Zxlc>clh>M&&>}@JIE32jl^@?s~hBN}Y=m zG|H*&q!J&2_7KdrvI676Ea8Ezv#}_aX6#%B9bsiHo+4`^QqqIdSheyf3D3l;A3)$wbt> zprEgz2;%0gIK7kbR`Vh#e-`Ru(r^=KrwJG8b;p+F z>!BH?oJ#?r83N5s8WtGn$)au4J@Xnec$u_jqV zpJ!G?VlE-K>A#UcM5-?#=c)#@uP6Yz)-=#hkYKnT9H{N8*#6YC-g-Q9smVF&1%#;sq5%`yArdE$ua{ZUqAv_% z`EsM3%GE+o*j`N^>KCLDy_NyJLt`G-@;4x_YNxseXw@(97~P0~%NvEfBnLJG?aT5n z<05mJ(dToSt;pzUa3xIJ1FT(5sy`8)(+Ll%fZHM>jC9DKZhLoIc6VEHGCG(|P8v>0 z>pYAxJB_H6!7{)qqn*-(W#}@x+Wbq20xARQXHW5iPD?$FQj+G1yI63T29*KmoATgl z*X7Mh?E{AL+aGUe3f9KpZI=2Yr8pA>sd(xia0`%sH*k0#h2pBXR@P!o-?PC# z3viunO?g@V8v&?nCrDVUwqbO{2~z@R`4dFXQlYz06v7`CuU|$fato6x3k)K00h|Q^ z^BpSWQsFc>KqV*nj~cH-dC>SVHlj+tx7IAKS>#w z>fexk?iQ#6)O=Qb3cd+@6kUMeDt*%u^`Dny>SX{}(mPxZ1lf{=Ti)3~?)OreAO=L| zUqB~Rimo3ttvN9i^c;X)p52PkIoI0x2vfJ>;g2KBCHHV$QCW*cqiFbX;Hy9oNIGg5 zK}P&@sm$UZhJWh@5J0g>r^bG#0k$Zq?hUgPG9^}nVvufnr%?};R4<2sF&#UcR42s) zf`dTHjp_a|qFCByd#H~Dy5;lmszmMV)?q6P85Z4&4xYxffqa|Yb)uD9*dZk2eG41| zoh-Ej4O6wp-jDg1E>)v2xvj$~(?b#W5Z}U+1P`}q#IlTfdfPelVGv?F8@|i40Nu|* z0|vug>dIp~w&-E5ofB^P=!xwhjJu}hn!vcKxh9+~>tlq&+rr_b3u1l;bj;*XTBAD> z=%nj=8d=A^+rfJlr7ZWgoC8#9V)0LB5QC-9Gy;ur!^q{-AxUGKbMu=ax;8&~{N?pS zkR-z*z(j_Y-UgQpcK(h;IZ=MA%;G!2959Kpb?aUYy@nZIZ7m1a2}8jaiV#J z0-~-#xPJ}k8EguLtZW5~Sbf-1A(_Zt80$u|Zbb8SvXY6qQS}(`a!2Z&4@~MM%H{&N z2oE(LpEx~Y?4*W8VKejCzG%Mu3NN9uL9Rw6wz%5aw*Xp>W za@&KpAVF4y3xI02(AHOgz4WKEe=o8ZXKglwS-lpCbrfm6n^AsK=9d>DOVf%(yJ-eQ zePhJ95Y%BfhW5aEfQZepHnfUwfqPMZly!2EI-TK;D8HdwF9N1cOA>iLJW*yzy#N9< zEq!o~p>L0j?nIsVKZI~L#rQvfAH}*Ql%EQY}@w+Jg4||S(nd198_L%-SM0wEIiDXxsI-5LGi7BM~3K-oUsifNjnZQT_ z?UhLN+QTAd{l@?|h-!q+jvMcZ7&JD~x`?$8b?B^qNxk+CW3FNf5AOmJ?wF^_E~eoo zbZZ+-AkPCPmRl5w=Y|iLym_{s%c?q&O-)r4!l&TXW8rqUJ!=;_i(K*EanKPHZaeD+ zOl>1P9jvZyL59!hS-L@tL<3t`kjTPBL~~DJ~)O)M(kKWJ9HD(czc<4{~qFWKa32q+3QpB z*&EV}ZzMzm3s*_{r6Ws%^a}`vFzzem)rk6<5X~k;13)yeAzeN^-oJ2#9qVCo4idVC zM}`8r=C@$!X~NP+So(pbe?!`}s|U%*uu{+?#Qy=wl`cuGOc&x#g(!FGkoF)1ebb?T zrNUH4nph7R$^$~zp~Km7XTq$<{33^pa~oi)SlG^-9dhWkeB@`Yjp>*ZbDa$tnqMAz z7jTOVvtZjWX~h^_y^87+YIszr-bWd3CLuUq3q3)oM~G6)E)tb>(}LfGV6xH(nx<%2 z-FQ&x--kj=cvCDQ$-2N4#Km-%uw!l_8`u3SNfwNB_j6+M`0s{Oj3v7J=B5S-eT=B4 z1|r3CbT-tUohDh#B)bzZ>a8Mz7j1Hr>Y^^Fp^Nb#(?lY73r+Phoo;8gkht6J^lJ#r zq`1?_poeFIQrWJw_X4u2V$de)dmQRJt1bf?H{GZoUB^6(ssp|M%w zG+Y!6GBX%EeZvBF)>oAMQV-sMm6W@GFgg|P`*oSaA>RRN+bAjr-reL3Bq&ioJkc>zObOqIOp_t_nLfOn|F@(bm4xn8pq0waQTw)AH zrAXx%wJB$8>k&I5%=B5wvI1pEICubDj;eP9Xac5u7*b)wP3ZYnJP-eY@FU6_KzZSX z$Rvtu_ce?a?*xyeXfnWl8aUKX@tDeKnHOD&ggy_oWx{iI9^lvE(ZrYhL1LF3w^(*3n6L8@W^)S-tWfd4f_sWGt4n|=qb%IO1 zi_|MdkEi9(xJc$=SsTQ&%?L31!}!q5!PF#Iw2j)5PQ)kbzuT3@9< zU41lag)ww$4om*f3ep@;-I=Dd06MF)w5Ld(Na6T$yfCXAEq)RidE3$LE`5M;QBnN_ zU@Dkwu;@_UQxP|kRh8hCI=B?foC+&?tf>ay&Ojk4MY7o z%%?_kF)`xyPNjs0x;pzkBRivL6b)mXdXQP;(A9W)c$SXU_S)R&KIl5?)M<*1km?nS zkQil97}>zde#re~5*;^p#0wLFYeNZ34s2gVog2MjI)*QFZsiGjqlKaQ5>}rElEAio zAv~C#d%IAb>3C(WY1Swxx4usK#4>2CxecpfSt08RFH@8UtzaS%8-Q%nM55dkh7}4r zjE1x@B~flPspDL)A^p)UW$hiqa5qxw9mANMmJr7I-8+Ugn@H($GrK5a_AIpWorXD1 zK_*55_#ej_4<&-N1MK2*Bc0Jl<({=Lhh_Gc4P!xvId%~Mh8%O80YxP&Ee19PShn>N zzARP(AsC|hkG5v?6F#tBY+wmneFka0k3f#AJ+}If(34WXfm=qy345H8++oVB%jq7+ zls-}#-2@J?bBz3^zZw2PD)D6$-8;68Uhwj}cWkxx^1F9znfCI#m&;Z9G1xO=7O9aB zm(6i1>)31XC@l3Vpph5Fub|Mzy7)N7vpo&EgVu^%bADop5BKiO*p(LA|K)}F==G?e z`O2At^&syCc9-GKY4=LF^V+=u?jG$Pg}Ya~uYkKxyLZCfuiYPnd$x9e4(j0)`|ub$7Ufef0W%Mm zOUj*VY%59VhvAe^@qZ`utN$b@(GK~20EI@B@NcHaEqL_pHrX7q|!#U9UeuT^G+b;E_(&Y-uVlZCa9n1 z;0ANvO!aeezpkDekus>Bx4|7$&jWA=)$=j9gX(z_?x1?U4!2YfSWjp*_JH-33!K$9 zGNslY!>=8`0sMyWI~2e2+OgwFkeZ(A`@pH$L2>GrQ~bZ5;*ZR4fhT=Odl0^ie32F8 zGQH#pxIx)fAaLoakkLY~E<5eM2+H0CJVDtHhC3+xnQ#YXe;eFE*&l#A5Y11+9f;=d z;0{Eyb1)Fi`KkzaA+BZiK=LHC=M?fJwP!ndQrhz%dD7bR1bN!E=gZ{j(4J?=)2Tf_ zCXcH@&tUjo;<=BR6g-mvp5dR zEVsME(A?a}YV;!9@MtA>Gk)9gLz^%j!|#*${Sd!j;uk^99D(0i_>JRtFMjAqi~&f` z>+pLLzb=?y^7vhd-zV_HyvUdzF^o6j_XK{6zlDdl1C7bM6_3Uy0`D!)tQX47aRB*XvYmm+1*q7OaUTtc*aju27VE!48a7U>_DHZo`Y|8FK9gUEEj_ld~}u0X4EYibYY~TtN-V zwj(Sr3lnKp+^A04$JD??8=5p{XuzF2uJ;95t3xKof8Lk!B^#ejdQO(rEVF zoL{OXzf@j%RYII<$uHH!62Z6@P#Pmmc$+b%TQH{cinJhRz%3ZlO&B#Eni@9aX>Y;P zo>${cS$hkf_GShUz*GjX*q7RPZg#Sj*koDz@qFxJD=`+hziqX@V3j326N@$>Ah$b#ZX zqOzo@k81=}dKv*uux|(KB<&yT9s=|%jHV}z5}1cUJN;dIt?V5$jJFxby(Dhp%{S2- z6~UYC@dLm)xQyaBY!s2=mtKDPit&TsQbz&dIL7}Gp4yEsfh#w@l%LD+%<>$idmLLe z;KpzW&*l7F!OxX==El)b5q=my59cS1z_=#a7U{KtMI)`$54Y}S-uA|7cVHmEX z$+dU^Tx-d-m0Xy;N7N6=bu7917sAD(%p=J~<1P{DR4l7#+`(L&h&9V|EU&Hy@IFQ{N;Aus|j%40@4!)fTk~t#}{d5H&bX{a|kVBs`1%=)fRg9l3r7){dXdG0+SV z?;WTw|DE)B7ars2F2D^MIOljam*@FicKkGg^$Fti(Dhn|I)k5^_<1It+3~aZxtX75 z<2ilYK7I~@)u)L$=fag6e;os#$LQ@HH-y3*8o=2Y|bpE33RNz3>zRL2~W`%#R^Y!-fLii;OP zb&(YF9EasuA}*o`;)XO47plxjL9!x`%4)z_hNC@EZ zBU1s30+@=;Xot)2uBPqfEbc6Na~>YE4~JCNu(ok~D1!D#MpY@5Y_klJCJTXH(i zZCPw7`=IRLw97MZ+E=Zo;Mn18C&n%VBHE(08(ZC=Nozadr#Jdoeq+SKHUZ0cJMaLP zYtrgbKWvy}wxhQ{4+K_V{2~vVg)1?Ww|=laEewS%f$VGK@2;cLVDh5PBsJK^u~m)Z z$lqP30Mm9xA+&bNjMdu_8ry9{Ztc-~!Q9dN@JPpV{=4yx`xAJUzGLRac5Oddv z8L4A38!@AG4Be3(g%xSjr)-`f{zQ$DHri2)a@8=}jtrXF(f0shojelc-w*$wcE1;H zm~S{XD><6o^Aq)30dChZK8zriGwqg45u2>vfN-aNBcmiDxZvJ{5ReKiw_%9vt67U0 znq@CEdJSVf$rt35EvVk>QBjkF==nZC8FTS?+Z?v$h%tuj24UlsJ+Lt& z)@cmxhc2vdfo;4iViY!;{<0AV7W<%$lNXM1m@*359Z5zDEFGe44W zDvpL0)J3C6Hf2hVMx~e4h%Od9iO``0Q^6|1`Jimq`z+WNu}QX3&_zTZ6?7>bRT(>+ zpwDOqSQpSwCQ8`^bf~MV(?5u~a4Aw#b8SW1><@8hBW^3Ce>G))J8HN&&9wnxl`*r{ zXjuZn88<^e8c>M^2*yr=w*59d{N+$(*l79_K#cwya=JVR1`tC30L0L?J}Fg8{S#ZT z#CRd#o3mkV5xMiLE*dN4Bs>^F#nHJ8FAFxOaZWi*8X)b_f=GqC11Fo4hQaEuxE9`uzDT0!!=n`s%1mph$O62AYTA6G$ya_@g z_<7W!h8dD;U@?%%O#T8eRc{$&boVbMbPTivKz;*>`g$X3#++C&a?;UjkTo6Dl2wgA zb3!gCm%n?NZkoEDDYwd5I@gy`h{`$_`-hka@^W$Nb4f*Mj6=WxHw7_{AbbVFb;8|9 zm`QdeSt)6tZhr>|n;d`$F~gE5p#~=>+YWfBZLD02W`Vz>OrCETTkt*~e$rtSUV{$H z<9!?6Xxm{p#a)gt`VHuCvU$R)Z|n=5hx2Egb>)~sC$G0-m6u6LAb%(CKZxo`#d;PF zIoX|s?8v^cLSmt7I)(U7r;yl58XkLJU;f>-Dn12QsYvAGnZh$mX9yevy&(UYY}Q~ZrSEIU`kZ=Z>^mNZ9YUFw#XfnXaren$g`>%BkY7$Y={*}SfjpIhk1}hT7HlRcJ+|}=vsP3kq<;IJS((vWh0NV)e0KMdrzk}q_Zz76>h*=N_(Kist zJGyv4hP9xlP{rl7>Qe^?BRtXL_Z*_fEC6{N?(#gf|DiL0Tn&b+8xbS>|E`2LrQQO6 zOr(>Sg0Lxw2xOUxH}71hP&KlgMDWWXthooG&dKq=6ogKeX#anRMV*C2`mEv<*(cGI zdeH@kXkOG1O^WhA)GC?`s98BpG{b!fM}w));MXU0)gqfWAdG&2Y%Vfum_kSVN03n| z@I2b=`ADmwY0x!CA45?6?Z9F7@d2i!lT~-3&=XEhy_es4^&x)us88^_ zSACA(byy}MW^VLjgn_7#sZ=&01DbCDNDpXcdE;PAr9GE0O%JkV*D*o_o9RirUSQ{F z3F@$`sTm;qWx$nLfeAGmWo1hVn~ks&l&8IaN2KIh2UeX2pGSVCA0jSS2Yeh9V-%ic z5T3MG77OmhD}%utY(hey9A-wNNx(8>)(Gp(C~ez>9HTA$w#n=Oxk>ad*mr8kNTw-- zOcUANCVEEfzqQc69)-H5zozV->1(CcR^J9;7?%^rW-N`Z{zMRJ)+#*7t{LH_-wM^S zHTpR6OxV5tC-AoYC-BTivi>LWPC6-^diS4%^Ld;;C%t515wmx$9CdHOlbZoguk|YN zSjKly#wzH66wp3EjFL#~{7)fk%n#oIw;BQUV{73WI|dJK(@CpxK!47m%~*CS=6@Q{ z*@gS`3oYq*AD1Z}^FMtQ4DxVTMl z^z&a7e$w?CP-Q&EpmEVjRPp$;vi-T4O3%gSLhp{87|HhMUlGV!Q?(*%NVaHw_-x=F zA{pR{f)*`afQQDYqVh6!KgNK=kBYw+&};F9{h!-Jwg z-+B}?NeGIU5F*@ws<8PSo>mDM?g#z*>8CgD zaCj4FTfk){9a33{b5^85y^oVsXCEtH81m-BnO&Gu53IofQS|{ly`cIZRqP_r4 z%~%M!BH0ry;kjKg?NTInqG@Hhz92VMDfEXyl1z5NHw%4)_eEmZm++81p~5wmZ(2Wq z{n=Oq+`3s|_{u`YQfxLga#2eDmw_h}DbqawUx72_#Qd+~Eqlo#vGim&V!nou>aI|0 zb(cu?wBA~~PRf-;-ZWRDzh-TNqiJ79^04{RIa^7~V{%7Qko_}Fa>;E7o3)G)l)>t~ z1w3w>|IF3c1>k)HX#8*DF>45i{Ug;wq=~^4B+88&98Pd}*Mt349C11V)BdmE!3&Gs zsa@ci5z^7!q7zYxT)9<8Dg;L1#nKLRHT(v6q#9tuwI<@zszI(4fo?xX`V5pC^8}KL zo=7FGn@kzwB~rnb-O3cZT8UKmlM287$Uw?TYa%b*=B2dUB1yDp9m&LObV$pUX`EqP z{o_E!aHkXo&-=6NbDwW3<2C4~M!yCAVfGsKYBJH7hd7q|q^)oh28L(P0B+Dx8!2Kl z+)I7{=HW~!`MKMlfJ^-Z54Ncbysds8#&;hzQ~ZetmGon9@re*NjI$^QNWK^X{dUhl zi;fO3odZ|#B8bd%Om~GqUnHP8khZBni~oZQ_Nve|O23;B-vqui?ZR5%sHJOp`_*39 zayTIVg@oG)ocaBJxOj=Dh2OspQ;Zy_$UdBZy#j6hK-A;t zK~b^TS#?V9#v^q~3^QDvP)C=b_cNsbcovMxEyLK%7+s7+xH>CdCmKZQEfiI>6-Cg) z58jNyJrAY487vX|BsN;`h{Wz@;xHNgE>!`MXz#X{0QKm`(c!hh5gnJ)taL;vJ;+~sx zqu|Ry>zFSq@j@6^s2j!YU8PJ+QXY*MEeTz2R~EaL=oW+tw~JvXjc&TWi~Du#scZZ7 ziKe$7B!t$9iZO%inXc8{9^2hE)TzDzRO*70VHw{DhFosesKxVjMu~8o6U8_uE5jR! zS8qdtB8~F9VeI-o2~bnQlvPbQ*>)MaOiW7wg9WGPPU9XGv-S}3OUIY)CS_G4?ZTO- zrFb+rW%UF!6sIOQ;}ys_uF*Kzd_WpQJUI;_L}gX2T)C|k{Cm^Dt!gz)QT#B-YC-?A zY49j&qy^-!(?B%w_9+3^;@!dnt2$)H>%@Zce36X-so`#b>Ke|uxh&2N<+yG&WoC`k zE^{h_gL>*xfP+O8sO|`JaU)^nkWv=#s6)ru%^HQM&o*GAAuK6ufwch}1uTWAuQp&C zl}^fAU>!L)gBr^TH=JC2!pU$zyp|rXM}NDV2+;-W7h5qOA~XlEp<;Z%^V1XSW~r`v2`-dQni`5E}2y=fQv*w zb!^QXZ%8oK%=R2@Erpd@-#dbRFxtAa&c%=MgY+SxdR5mqiV%H?~F8Ts+wt8jv+Z(f&0`%o+_2q!0}a zprxmsGz)92t&Kc8r{&ohBLXz5r)tmOHEDX7!xn6VBY{9NuqAwk6n=cz!a9ack4`S*8x`_&2?01BjzU`MAgVJeClj$VbWClhaifMO7Jel`UfaUjh=G1 z*fJ^gD!@vq>AV)lPsn*K_1}n+5S2MitB%nZQE1%Km%-SG)}t4LrfzM(zXL$(MLc+J zgu~ltC$^e0FwI0|5E<`^yHOcLX6#7i4H$9Rj|bR$EW9w0+((S~gcV~1pr zVNz#E^WK&WlhZOx>I_?Fy0nw~BoLHt8Lb?Adcbs^2gETCU?CH3$6=DY9$iyP(yWt; zdK_t_!DMJ-Hporq98pScI`34{e04~SO@EjqkS&n*W>2-ZxpFeuscz`cXlqfTu&5vR zvTXET0-=)UkX~eN-!6h)Q{0^q+ zL7tP6Wy*lnllDrCQHsVLu;lZ93QVmxzKTuIGDVDwDr0piuoj{=+6>TsjDW_lEdv!*cJUW|^z=(2_H zYaezgWh>2*b~{c5E5_3$jjF zscgF38;jq8dk@W;iIx7*zarfK8y>hRI~~XEgo|D@ZU65GsQ(iiZ$kqTwUKWF-yy(v z#WN(({{xso%l`*nmt25KhWXjU`o-H|{@@!ww$yhbgDbuR*rrhLpPbCwjTf%2#+VY@ z3wCVD;WEj76jpZNWknLP&lCr-!>YzMWWxP2QdYAp3lic`B5WLKLpx8#8nOw~GvFQX zKEzITz#LBAc)d;UJb62Omfwa{EVKP2r)L{W?&3{PC~4Ao|6@jn*cL3~dyvyZQTEZL zWcPx#+^iEiHxj86A~(X=v3+qnmBIwp%MnIV2)nvDjFQ!`*^DCYqlnW{AOLF=995^1 z;<72ZQ>9KkMKlHSJP1n$3v#y<(Kav+a3-uu#zOQI&TD)&m!B?%(-`>HaLyo9W6@?c zrop;Q-$E%WL$Rs)>%e%dMhz)Z?&4Yq@Uq$v?GOlXWx=bU?F!h_A|8%TCI*R2E~fe= zIO9DIomtHUL4OT`Dzl|GF*gUB@4?Dr;Tgq7mc->Eo{aAbh-`$mOkpA>h~3C;dl{Ju zG3QBGo*fZ!$uicX&X=RkF=nchxSGs-?9HDYGCwwf3j|?_7(=`WJZ_9- z4tE+><qedhzMZjcevg8!$y1YsFw|#jq605$5j(lhUSowd^rH+;@+2 zhnc~tr0?#vxj`muX^@{gJ7|yy$SyoIn~7=_?4Z+Xv`cA{(si14Q)^7QQ8Y(Kh@P68 zU7~e$6B^~nYl6>-eA9^k2d)=~V4Fs=ZFs5ZHPU6rqQEPt{l$s+Y_fciZ8~@O3HYj> z+{&M%fag&W`H?I~CJ{OIVMu`O#D18(fVDp+w50xWWJb0a6W#LY) z{saknM>-1~X#z{| ze4%wDmz>0HinYni-fki*E z)w4~>P#IYLpcc`?Eg~feW72wB8p8{ExCOQmfyB0ua@pP$?7zW4&D9rxN3yBOlgGeF zEW%s-k%vS%sr~>8WK@GI^gmDBAh_z}epW)k#QpLiTzYik457IE=61$>zJ&Yigri~`&fT9d}gpNr#&+VlavDU>= zT$l9u8ucb5mCBs#C(WsDM?e6Dsz`W1g+0k8hVWF^gIF_MPi6x*i4R+BrV)Q3roInlMa3d`UeG*vYQ-ci zwS=VS^O(bjbvq&+LPqowsAg_$wkypnYM`e;REg=6!`4!LV2?@>>Gwr_X<6 zWBNNHiCjQVg6pH~<#4oWA4&5qq|twei;c< zzU70vA(&n!s#aZqu9^h_TOqN`pWp$C3RwZMn8fZe?1~J|ySxLOI1j(w_??6w=?=WG zGArTODsG(G6rO>59t7(k{4o4u_@M6~SwD*Ona6z)^OruhBAlj8af7I7{`?BhZ>PeO zcnLhYTH)!NK_>%0L^QxJeH`N_cps*Sgpb?J5~=bm%scmkD`8u-``X4vyyRpb0!u`| zk1=gGcV~M-lL%XaMTeTk9AoZbGB>9&%_iiD#)39!Ju@eeBCiZI7xyAPW^$`A{mm{s z7y{0HT7~*F(t@GF#GM*CvcC`PlkUqxVZKlcqVkn%bRc^yOLlTHg~S4cwrA%N@d zA3&-${p%~mH=>Xz&jApLymd^G3b(?!fPU)S6?K+gAg?l@9`Gn?JvQj zNFUkRdYZ^ZyjLQYPK)SMf28Eg5W)AjOvL-WJJ5Aa#AnOEY$84ovR}rX`=aiT2Y<(2 z07nvZWW_re$u9=C`%+g>V9Y_=Hp&Ux8F`V~i^X>1DQOOUHEB+ud|qtL$Kre_5cwd} zsrgJv!}+|bG(Vat9}3({K8-X@`RqB(iBz5+x8_rZu1Z}&fyf7hPA$)rG@Q??O7qf8 z`B30q@@b@L%I6i*{A8wlC~zsyfvQ)%QXceA9$w9!IU(dν2*})3Q^zu;PUdq!*(^Q^4r&&kk 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≥=GuCc$A2Ip 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%0AHST`DfoV%vsIyuaeWWQ^B>X&HOSJ>wnBY0XF+ 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∾0e4y8RGNzHusQX$%vGAG2CS#%4 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

iq>cT_9o&8z=?+Pp1f!f)#bPi*S1vn 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 Ww7R6>hL>jSd#2}sKHS172>%Ba5j)uc literal 0 HcmV?d00001 diff --git a/KJDService/KJD_WebService/BLL/BXX/BXXShopManage.cs b/KJDService/KJD_WebService/BLL/BXX/BXXShopManage.cs index e334b8e..ea78e5a 100644 --- a/KJDService/KJD_WebService/BLL/BXX/BXXShopManage.cs +++ b/KJDService/KJD_WebService/BLL/BXX/BXXShopManage.cs @@ -94,9 +94,9 @@ namespace KJD_Web.BLL.BXX } else { - sql = "SELECT s.id,s.login_name,s.login_pass,s.cookie,s.cookie2,s.anti_contents,s.shop_id,s.shop_account,s.sub_user_name,s.user_name," + - "s.company_name,s.notes,s.login_status,s.login_status2,c.add_product_remaining,c.add_product_month,s.add_time,s.mdy_time," + - "s.add_sub_sa_time,s.operate_sub_sa_name"; + sql = "SELECT s.id,s.login_name,s.login_pass,s.cookie,s.cookie2,s.anti_contents,s.pddid,s.shop_id,s.shop_account,s.sub_user_name," + + "s.user_name,s.company_name,s.notes,s.login_status,s.login_status2,c.add_product_remaining,c.add_product_month," + + "s.add_time,s.mdy_time,s.add_sub_sa_time,s.operate_sub_sa_name"; //sql += " FROM bxx.shop s WHERE 1=1"; sql += " FROM bxx.shop s LEFT JOIN bxx.shop_add_prod_count c ON s.shop_id=c.shop_id WHERE 1=1"; @@ -131,8 +131,8 @@ namespace KJD_Web.BLL.BXX login_status2 = row["login_status2"].ToString(), add_product_remaining = row["add_product_remaining"].ParseToInt(), add_product_month = row["add_product_month"].ParseToInt(), - operate_sub_sa_name = row["operate_sub_sa_name"] as string, - + operate_sub_sa_name = row["operate_sub_sa_name"].ParseToString(), + pddid = row["pddid"].ParseToString(), }; shopList.Add(shop); } @@ -683,6 +683,7 @@ namespace KJD_Web.BLL.BXX string cookie2 = RegexUtils.GetStringQuery(ref inputData, "cookie2"); string login_status = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "login_status")); string login_status2 = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "login_status2")); + string pddid = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "pddid")); int r2 = 0; int.TryParse(RegexUtils.GetStringQuery(ref inputData, "r2"), out r2); @@ -703,6 +704,8 @@ namespace KJD_Web.BLL.BXX sql += " login_status='" + login_status + "',"; if (login_status2 != null) sql += " login_status2='" + login_status2 + "',"; + if (pddid != null) + sql += " pddid='" + pddid + "',"; sql = sql.TrimEnd(','); sql += " where login_name='" + login_name + "'"; diff --git a/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs b/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs index 3a5b888..a1bbc62 100644 --- a/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs +++ b/KJDService/KJD_WebService/Model/ShopModel/ShopParam.cs @@ -13,6 +13,7 @@ namespace KJD_Web.Model.ShopModel public string cookie { get; set; } public string cookie2 { get; set; } public string anti_contents { get; set; } + public string pddid { get; set; } public string shop_id { get; set; } public string shop_account { get; set; } public string sub_user_name { get; set; } diff --git a/TEMUKJD/BLL/HttpResponseBLL.cs b/TEMUKJD/BLL/HttpResponseBLL.cs index 6620a0d..efd299a 100644 --- a/TEMUKJD/BLL/HttpResponseBLL.cs +++ b/TEMUKJD/BLL/HttpResponseBLL.cs @@ -331,6 +331,13 @@ namespace TemuKJD.BLL request.Headers.Add("Anti-Content", AntiContent); request.Headers.Add("sec-ch-ua-platform", @"""Windows"""); request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36"; + if (cookies.Contains("PASS_ID=windows") && !string.IsNullOrEmpty(shop.pddid)) + { + request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + //request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + //request.Headers.Add("pddid", @"zULm8bXS"); + request.Headers.Add("pddid", shop.pddid); + } request.Headers.Add("ETag", rckk); request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139"""); request.ContentType = "application/json"; @@ -409,6 +416,13 @@ namespace TemuKJD.BLL request.Headers.Add("Anti-Content", AntiContent); request.Headers.Add("sec-ch-ua-platform", @"""Windows"""); request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36"; + if (cookies.Contains("PASS_ID=windows") && !string.IsNullOrEmpty(shop.pddid)) + { + request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + //request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + //request.Headers.Add("pddid", @"zULm8bXS"); + request.Headers.Add("pddid", shop.pddid); + } request.Headers.Add("ETag", rckk); request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139"""); request.Headers.Add("sec-ch-ua-mobile", @"?0"); @@ -473,6 +487,13 @@ namespace TemuKJD.BLL request.Headers.Set(HttpRequestHeader.CacheControl, "max-age=0"); request.Headers.Add("sec-ch-ua-platform", @"""Windows"""); request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36"; + if (cookies.Contains("PASS_ID=windows") && !string.IsNullOrEmpty(shop.pddid)) + { + request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + //request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + //request.Headers.Add("pddid", @"zULm8bXS"); + request.Headers.Add("pddid", shop.pddid); + } request.Headers.Add("ETag", rckk); request.Headers.Add("sec-ch-ua", @"""Not;A=Brand"";v=""99"", ""Google Chrome"";v=""139"", ""Chromium"";v=""139"""); request.ContentType = "multipart/form-data; boundary=" + boundary; diff --git a/TEMUKJD/BLL/MemoryReader.cs b/TEMUKJD/BLL/MemoryReader.cs new file mode 100644 index 0000000..4297c1c --- /dev/null +++ b/TEMUKJD/BLL/MemoryReader.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading.Tasks; + +namespace TemuKJD.BLL +{ + public class MemoryReader + { + [DllImport("kernel32.dll")] + public static extern IntPtr OpenProcess(int dwDesiredAccess, bool bInheritHandle, int dwProcessId); + + [DllImport("kernel32.dll", SetLastError = true)] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool ReadProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, uint nSize, out uint lpNumberOfBytesRead); + + [DllImport("kernel32.dll", SetLastError = true)] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, byte[] lpBuffer, uint nSize, out uint lpNumberOfBytesWritten); + + [DllImport("kernel32.dll")] + public static extern bool CloseHandle(IntPtr hObject); + + // 声明GetLastError函数 + [DllImport("kernel32.dll")] + private static extern int GetLastError(); + + const int PROCESS_WM_READ = 0x0010; + const int PROCESS_WM_WRITE = 0x0020; + const int PROCESS_WM_ALL = 0x003F; + const int PROCESS_ALL_ACCESS = 0x1F0FFF; + + public static void ReadMemory(int nProcess, int nAddress, int nReadSize) + { + int processId = nProcess; // 目标进程ID + //IntPtr hProcess = OpenProcess(PROCESS_WM_READ | PROCESS_WM_WRITE, false, processId); + IntPtr hProcess = OpenProcess(PROCESS_ALL_ACCESS, false, processId); + if (hProcess == IntPtr.Zero) + { + int errorCode = GetLastError(); + //Console.WriteLine("Process access failed."); + BaseForms.BaseMsgForm.ShowError("Process access failed."); + return; + } + + int endAddress = nAddress + nReadSize; + while (nAddress < endAddress) + { + IntPtr address = new IntPtr(nAddress); // 目标内存地址 + byte[] buffer = new byte[1024]; // 读取数据的缓冲区 + uint bytesRead; + if (ReadProcessMemory(hProcess, address, buffer, (uint)buffer.Length, out bytesRead)) + { + //Console.WriteLine("Read successful."); + string s = System.Text.Encoding.Default.GetString(buffer); + if (s.Contains("pddidResult")) + { + + } + } + else + { + //Console.WriteLine("Read failed."); + // 获取最后一个错误代码 + int errorCode = GetLastError(); + //Console.WriteLine("Error code: " + errorCode); + // 将错误代码转换为异常(可选) + Exception ex = Marshal.GetExceptionForHR(errorCode); + //BaseForms.BaseMsgForm.ShowError(ex.Message); + } + nAddress += 1000; + } + //CloseHandle(hProcess); + } + } +} diff --git a/TEMUKJD/BLL/ShopBLL.cs b/TEMUKJD/BLL/ShopBLL.cs index 6fc9b2b..bd508f1 100644 --- a/TEMUKJD/BLL/ShopBLL.cs +++ b/TEMUKJD/BLL/ShopBLL.cs @@ -242,6 +242,7 @@ namespace TemuKJD.BLL shop.LoginStatus2 = BaseRegex.GetStringJson(ref shopStr, "login_status2"); shop.OperateSubSaName = BaseRegex.GetStringJson(ref shopStr, "operate_sub_sa_name"); shop.AddProductRemaining = BaseRegex.GetIntJson(ref shopStr, "add_product_remaining"); + shop.pddid = BaseRegex.GetStringJson(ref shopStr, "pddid"); if (BaseClass.MainPath == "binxixi") { diff --git a/TEMUKJD/Helper/CustomResourceRequestHandlerLocal.cs b/TEMUKJD/Helper/CustomResourceRequestHandlerLocal.cs index 8cc0163..6987584 100644 --- a/TEMUKJD/Helper/CustomResourceRequestHandlerLocal.cs +++ b/TEMUKJD/Helper/CustomResourceRequestHandlerLocal.cs @@ -23,7 +23,7 @@ namespace TemuKJD.Helper public class BaseResourceRequestHandler : ResourceRequestHandler { public string UserAgent = string.Empty; - public Func BeforeResourceLoadEvent; // sender, requestUrl, postData, true(表示取消执行) + public Func BeforeResourceLoadEvent; // sender, requestUrl, postData, true(表示取消执行) public Action ResourceLoadCompleteEvent; // sender, requestUrl, postData, responseData public Action ResourceRedirectEvent; // sender, requestUrl, postData, redirectUrl public string[] ResourceContentTypeRegister = new string[] { "application/json", "javascript", "application/x-www-form-urlencoded", "text/html", "text/plain" }; @@ -96,7 +96,7 @@ namespace TemuKJD.Helper try { string postData = GetPostData(request); - bool? result = BeforeResourceLoadEvent?.Invoke(chromiumWebBrowser, request.Url, postData); + bool? result = BeforeResourceLoadEvent?.Invoke(chromiumWebBrowser, request.Url, postData, request); } catch (Exception ex) { diff --git a/TEMUKJD/Helper/FddlHelper.cs b/TEMUKJD/Helper/FddlHelper.cs new file mode 100644 index 0000000..6be4617 --- /dev/null +++ b/TEMUKJD/Helper/FddlHelper.cs @@ -0,0 +1,90 @@ +using AllBase.Model.Result; +using Fiddler; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using TemuKJD.BaseForms; + +namespace TemuKJD.Helper +{ + public class FddlHelper + { + + public bool InstallCertificate() + { + //FiddlerApplication.Log.LogString($"安装证书,为了监听https请求"); + if (!CertMaker.rootCertExists()) + { + if (!CertMaker.createRootCert() || !CertMaker.trustRootCert()) + { + BaseMsgForm.ShowError("证书安装失败,请重试!"); + return false; + } + } + return true; + } + + ///

启动fiddlercore本地设置的代理端口监听 + public void StartupFiddlerCore(int port = 9898) + { + //Console.WriteLine("fiddler启动了...listening: port: 127.0.0.1:" + port); + FiddlerApplication.Startup(port, FiddlerCoreStartupFlags.Default | FiddlerCoreStartupFlags.RegisterAsSystemProxy); + //FiddlerApplication.Log.LogString($"Created endpoint listening on port {CONFIG.ListenPort}"); + } + + public void AttachListening() + { + //FiddlerApplication.OnNotification += (o, nea) => Console.WriteLine($"** NotifyUser: {nea.NotifyString}"); + //FiddlerApplication.Log.OnLogString += (o, lea) => Console.WriteLine($"** LogString: {lea.LogString}"); + + FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest; + FiddlerApplication.BeforeResponse += FiddlerApplication_BeforeResponse; + } + + /// 拦截请求返回Request信息 + private void FiddlerApplication_BeforeRequest(Session oSession) + { + //Debug.WriteLine(oSession.fullUrl); + + // In order to enable response tampering, buffering mode MUST + // be enabled; this allows FiddlerCore to permit modification of + // the response in the BeforeResponse handler rather than streaming + // the response to the client as the response comes in. + oSession.bBufferResponse = false; + + // Set this property if you want FiddlerCore to automatically authenticate by + // answering Digest/Negotiate/NTLM/Kerberos challenges itself + //session["X-AutoAuth"] = "(default)"; + + //FiddlerApplication.Log.LogString($" {oSession.fullUrl }"); + } + + /// 拦截请求返回Response信息 + private void FiddlerApplication_BeforeResponse(Session oSession) + { + + } + + /// 关闭fiddlercore设置的代理 + public void UninstallFiddler() + { + if (FiddlerApplication.IsStarted()) + { + FiddlerApplication.Shutdown(); + } + } + + /// 卸载证书 + public bool UninstallCertificate() + { + if (CertMaker.rootCertExists()) + { + if (!CertMaker.removeFiddlerGeneratedCerts(true)) + return false; + } + return true; + } + } +} diff --git a/TEMUKJD/KJD.csproj b/TEMUKJD/KJD.csproj index 5088128..6481174 100644 --- a/TEMUKJD/KJD.csproj +++ b/TEMUKJD/KJD.csproj @@ -54,6 +54,9 @@ False ..\DllReference\DevComponents.DotNetBar2.dll + + ..\DllReference\FiddlerCore4.dll + ..\DllReference\NaiBa.CefHelper.138.dll @@ -72,6 +75,7 @@ ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll + @@ -80,6 +84,7 @@ + @@ -92,6 +97,7 @@ + @@ -103,6 +109,7 @@ + Form @@ -473,6 +480,12 @@ UcAddPrice.cs + + Form + + + PDDShopUpdateFddlCookieForm.cs + Form @@ -917,6 +930,9 @@ UcAddPrice.cs + + PDDShopUpdateFddlCookieForm.cs + CefForm.cs diff --git a/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs b/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs index dbe50bd..1eb2c4b 100644 --- a/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs +++ b/TEMUKJD/KJDForms/ShopForms/ShopListForm.cs @@ -224,6 +224,7 @@ namespace TemuKJD.KJDForms.ShopForms + "&login_status2=" + shop.LoginStatus2 + "&cookie=" + shop.Cookies.Replace("&", "&").Replace("%", "%").Replace("+", "+") + "&cookie2=" + shop.Cookies2.Replace("&", "&").Replace("%", "%").Replace("+", "+") + + "&pddid=" + shop.pddid + fTool; var result = GetHtml.PostUtf8(url, data); if (!result.Contains("\"code\":200")) diff --git a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs index a745cb7..d46b513 100644 --- a/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs +++ b/TEMUKJD/PDDForms/AdminForms/PDDAdminShopLoginForm.cs @@ -193,6 +193,7 @@ namespace TemuKJD.PDDForms.AdminForms } } shop.Cookies = cookies; + shop.pddid = ""; // 网页登录无拼多多id(pddid) if (isSuccess) { shop.LoginStatus = "登录成功"; @@ -302,6 +303,7 @@ namespace TemuKJD.PDDForms.AdminForms cefWebBrowser = CEFBrowser.CreateChromiumWebBrowser(shopMainUrl, true); CustomResourceRequestHandlerLocal resourceRequestHandler = new CustomResourceRequestHandlerLocal(); resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete; + resourceRequestHandler.BeforeResourceLoadEvent += RequestHandler_BeforeResourceLoad; cefWebBrowser.RequestHandler = new CustomRequestHandler(resourceRequestHandler); //var lifeSpanHandler = new LifeSpanHandlerLocal(PopWindowType.SelfWindow); var lifeSpanHandler = new LifeSpanHandlerLocal(PopWindowType.NewTitleWindow); @@ -355,6 +357,9 @@ namespace TemuKJD.PDDForms.AdminForms Thread.Sleep(20); CEFBrowser.DeleteCookie(cefWebBrowser.GetCookieManager(null)); + if (cookieLst.Any(c => c.Name == "PddBrowser") && cookieLst.Any(c => c.Value.StartsWith("windows")) && !string.IsNullOrEmpty(shop.pddid)) + cefWebBrowser.ExecuteScriptAsync("navigator.__defineGetter__('userAgent', function() { return 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12'; });"); + //cef 138 如果没有设置RequestContext 可能为空,直接getCookieManager //if (this.openType != EnumOpenType.login) { @@ -367,13 +372,13 @@ namespace TemuKJD.PDDForms.AdminForms } } - if (this.openType != EnumOpenType.login) - { - var cookie2 = shop.Cookies2; - //var t2 = CEFBrowser.SetCookieAsync(shopCookieHead2, cookie2, cefWebBrowser.RequestContext.GetCookieManager(null)); - var t2 = CEFBrowser.SetCookieAsync(shopCookieHead2, cookie2, cefWebBrowser.GetCookieManager(null)); // cef138 - t2.Wait(5000); - } + //if (this.openType != EnumOpenType.login) + //{ + // var cookie2 = shop.Cookies2; + // //var t2 = CEFBrowser.SetCookieAsync(shopCookieHead2, cookie2, cefWebBrowser.RequestContext.GetCookieManager(null)); + // var t2 = CEFBrowser.SetCookieAsync(shopCookieHead2, cookie2, cefWebBrowser.GetCookieManager(null)); // cef138 + // t2.Wait(5000); + //} //根据登录的具体店铺设置local storage if (!string.IsNullOrEmpty(shop.ShopId)) @@ -492,6 +497,29 @@ namespace TemuKJD.PDDForms.AdminForms cefWebBrowser.GetBrowser().MainFrame.EvaluateScriptAsync(sb.ToString()); } + //public Func BeforeResourceLoadEvent; // sender, requestUrl, postData, request, true(表示取消执行) + private bool RequestHandler_BeforeResourceLoad(object sender, string url, string postData, IRequest request) + { + if (shop.Cookies.Contains("windows") && shop.Cookies.Contains("PddBrowser") && !string.IsNullOrEmpty(shop.pddid)) + { + var ua = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + request.SetHeaderByName("User-Agent", ua, true); + request.SetHeaderByName("pddid", shop.pddid, true); + request.SetHeaderByName("Accept-Encoding", "gzip, deflate, br", true); + var headers = request.Headers; + headers.Remove("sec-ch-ua"); + headers.Remove("sec-ch-ua-mobile"); + headers.Remove("sec-ch-ua-platform"); + headers.Remove("Accept-Language"); + headers.Remove("Origin"); + //headers["User-Agent"] = ua; + //headers["Accept-Encoding"] = "gzip, deflate, br"; + request.Headers = headers; + } + + return false; + } + int GetAntiContentsTimes = 40; private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData, IRequest request) { diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.Designer.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.Designer.cs index c529034..4dbba6f 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.Designer.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.Designer.cs @@ -620,7 +620,7 @@ // colUpdateCookies // this.colUpdateCookies.FillWeight = 67F; - this.colUpdateCookies.HeaderText = "导入Cookie"; + this.colUpdateCookies.HeaderText = "获取Cookie"; this.colUpdateCookies.Name = "colUpdateCookies"; this.colUpdateCookies.ReadOnly = true; this.colUpdateCookies.Resizable = System.Windows.Forms.DataGridViewTriState.True; diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs index 31505e3..cd65f67 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopListForm.cs @@ -21,6 +21,7 @@ using Work; using NaiBa.Util; using System.Globalization; using TemuKJD.BLL; +using System.Diagnostics; //using TemuKJD.PDDForms.AdminForms; namespace TemuKJD.PDDForms.ShopForms @@ -203,6 +204,7 @@ namespace TemuKJD.PDDForms.ShopForms + "&login_status2=" + shop.LoginStatus2 + "&cookie=" + shop.Cookies.Replace("&", "&").Replace("%", "%").Replace("+", "+") + "&cookie2=" + shop.Cookies2.Replace("&", "&").Replace("%", "%").Replace("+", "+") + + "&pddid=" + shop.pddid + fTool; var result = GetHtml.PostUtf8(url, data); if (!result.Contains("\"code\":200")) @@ -488,7 +490,7 @@ namespace TemuKJD.PDDForms.ShopForms "多重登录", param.ApiAuthStatus, param.BuyApiAuth.ApiAuthStatus, - "导入Cookie", + "获取Cookie", "复制Cookie", "编辑", "删除"); @@ -614,7 +616,8 @@ namespace TemuKJD.PDDForms.ShopForms string refere = "https://mms.pinduoduo.com/login/"; refere = "https://mms.pinduoduo.com/home"; string body = @"{}"; - return HttpResponseBLL.PDDPostResponse(shop, url, body, refere); + var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere); + return result; } public static string CheckShopLogin(ShopLoginInfo shop, string refere = "https://mms.pinduoduo.com/home/") @@ -698,6 +701,44 @@ namespace TemuKJD.PDDForms.ShopForms shop.ShopSubAccountList.Add(subAccount); } } + + GetWorkBenchCookie(); + } + + void GetWorkBenchCookie() + { + return; + //FiddlerCore.Utilities.SmartAssembly.Attributes. + + Task.Run(() => + { + while (true) + { + var process = Process.GetProcessesByName("notepad").FirstOrDefault();// 获取Notepad进程的实例 + if (process != null) + { + IntPtr handle = process.Handle; + MemoryReader.ReadMemory(handle.ToInt32(), 0X1474DEC8, 0X50000000); + + break; + + } + //var memory = new Memory(process); // 创建Memory对象来操作进程内存 + //IntPtr address = new IntPtr(0x12345678); // 假设的内存地址(需要根据实际情况调整) + //byte[] buffer = new byte[1024]; // 读取数据的缓冲区大小根据需要调整 + //if (memory.Read(address, buffer)) // 读取内存到buffer中 + //{ + // Console.WriteLine("Read successful."); + // Console.WriteLine(Encoding.ASCII.GetString(buffer)); // 打印读取的数据(这里假设是ASCII文本) + //} + //else + //{ + // Console.WriteLine("Read failed."); + //} + + Thread.Sleep(5000); + } + }); } private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e) @@ -775,10 +816,15 @@ namespace TemuKJD.PDDForms.ShopForms Clipboard.SetDataObject(cookJs); BaseMsgForm.ShowInfo("复制成功"); break; + case "获取Cookie": case "导入Cookie": - PDDShopUpdateCookieForm updateCookieForm = new PDDShopUpdateCookieForm(shop); - updateCookieForm.SaveComplete += UpdateCookieForm_SaveComplete; - updateCookieForm.ShowDialog(); + //PDDShopUpdateCookieForm updateCookieForm = new PDDShopUpdateCookieForm(shop); + //updateCookieForm.SaveComplete += UpdateCookieForm_SaveComplete; + //updateCookieForm.ShowDialog(); + PDDShopUpdateFddlCookieForm updateFddlCookieForm = new PDDShopUpdateFddlCookieForm(shop); + updateFddlCookieForm.SaveComplete += UpdateCookieForm_SaveComplete; + updateFddlCookieForm.ShowDialog(); + updateFddlCookieForm.fddlHelper.UninstallFiddler(); break; case "删除": if (BaseMsgForm.ShowConfirm("确定删除店铺吗?删除后不可恢复!").DialogResult == DialogResult.Cancel) diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.Designer.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.Designer.cs index e1f4578..b26d264 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.Designer.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.Designer.cs @@ -112,7 +112,7 @@ this.splitContainer1.Panel2.Controls.Add(this.btnReload); this.splitContainer1.Panel2.Controls.Add(this.chkCloseAfterLogin); this.splitContainer1.Size = new System.Drawing.Size(1438, 736); - this.splitContainer1.SplitterDistance = 671; + this.splitContainer1.SplitterDistance = 672; this.splitContainer1.SplitterWidth = 3; this.splitContainer1.TabIndex = 4; // diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs index 398d6d6..6dc65bc 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopLoginForm.cs @@ -123,6 +123,7 @@ namespace TemuKJD.PDDForms.ShopForms if (!cefWebBrowser.GetBrowser().MainFrame.IsValid) continue; + // 刷新cookie if (openType == EnumOpenType.refresh_cookie) { string cookies = ""; @@ -144,6 +145,12 @@ namespace TemuKJD.PDDForms.ShopForms cookies += cookie.Name + "=" + cookie.Value + "; "; cookieListNew.Add(cookie); } + + if (cookieListNew.Any(c => c.Name == "PASS_ID" && c.Value.StartsWith("windows")) && + !cookieListNew.Any(c => c.Name == "PddBrowser")) + { + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "PddBrowser", Value = "1", Expires = DateTime.Now.AddYears(1), }); + } cookies = JsonHelper.SerializeObject(cookieListNew); if (!string.IsNullOrEmpty(cookies)) @@ -250,6 +257,7 @@ namespace TemuKJD.PDDForms.ShopForms s.LoginStatus = "登录成功"; s.Cookies = cookies; s.LastRefreshDate = DateTime.Now.ToString("yyyyMMdd"); + s.pddid = ""; // 网页登录无拼多多id(pddid) } StartUp.SaveLocalShopLoginInfo(); // 店铺保存到本地 PDDShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie @@ -348,6 +356,7 @@ namespace TemuKJD.PDDForms.ShopForms cefWebBrowser = CEFBrowser.CreateChromiumWebBrowser(shopMainUrl, true); CustomResourceRequestHandlerLocal resourceRequestHandler = new CustomResourceRequestHandlerLocal(); resourceRequestHandler.ResourceLoadCompleteEvent += RequestHandler_ResourceLoadComplete; + resourceRequestHandler.BeforeResourceLoadEvent += RequestHandler_BeforeResourceLoad; cefWebBrowser.RequestHandler = new CustomRequestHandler(resourceRequestHandler); var lifeSapnHandler = new LifeSpanHandlerLocal(PopWindowType.SelfWindow); cefWebBrowser.LifeSpanHandler = lifeSapnHandler; @@ -399,11 +408,14 @@ namespace TemuKJD.PDDForms.ShopForms Thread.Sleep(20); CEFBrowser.DeleteCookie(cefWebBrowser.GetCookieManager(null)); + if (cookieLst.Any(c=>c.Name == "PddBrowser") && cookieLst.Any(c => c.Value.StartsWith ("windows")) && !string.IsNullOrEmpty(shop.pddid)) + cefWebBrowser.ExecuteScriptAsync("navigator.__defineGetter__('userAgent', function() { return 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12'; });"); + //cef 138 如果没有设置RequestContext 可能为空,直接getCookieManager //if (this.openType != EnumOpenType.login) { //var t = CEFBrowser.SetCookieAsync(JsonHelper.SerializeObject(cookieLst), cefWebBrowser.GetCookieManager(null)); - foreach(var cook in cookieLst) + foreach (var cook in cookieLst) { var t = CEFBrowser.SetCookieAsync(cook.Domain, cook.Name + "=" + cook.Value + ";", cefWebBrowser.GetCookieManager(null)); t.Wait(5000); @@ -537,6 +549,29 @@ namespace TemuKJD.PDDForms.ShopForms } } + //public Func BeforeResourceLoadEvent; // sender, requestUrl, postData, request, true(表示取消执行) + private bool RequestHandler_BeforeResourceLoad(object sender, string url, string postData, IRequest request) + { + if (shop.Cookies.Contains("windows") && shop.Cookies.Contains("PddBrowser") && !string.IsNullOrEmpty(shop.pddid)) + { + var ua = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.5.40.8 Safari/537.36 PddWorkbench-Online PddBrowser pdd_windows_version/3.0.3.12"; + request.SetHeaderByName("User-Agent", ua, true); + request.SetHeaderByName("pddid", shop.pddid, true); + request.SetHeaderByName("Accept-Encoding", "gzip, deflate, br", true); + var headers = request.Headers; + headers.Remove("sec-ch-ua"); + headers.Remove("sec-ch-ua-mobile"); + headers.Remove("sec-ch-ua-platform"); + headers.Remove("Accept-Language"); + headers.Remove("Origin"); + //headers["User-Agent"] = ua; + //headers["Accept-Encoding"] = "gzip, deflate, br"; + request.Headers = headers; + } + + return false; + } + static int GetAntiContentsTimes = 40; private void RequestHandler_ResourceLoadComplete(object sender, string url, string postData, string responseData, IRequest request) { diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs index 3cb390e..1cd0f44 100644 --- a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateCookieForm.cs @@ -26,14 +26,14 @@ namespace TemuKJD.PDDForms.ShopForms } public partial class PDDShopUpdateCookieForm : LRBaseForm { - ShopLoginInfo shopLoginInfo = null; + ShopLoginInfo shop = null; SetCookieFromEnum updateFrom; string cookieVersion = ""; - public PDDShopUpdateCookieForm(ShopLoginInfo shop = null, SetCookieFromEnum from = SetCookieFromEnum.normal_user, string _cookieVersion="国内版") + public PDDShopUpdateCookieForm(ShopLoginInfo _shop = null, SetCookieFromEnum from = SetCookieFromEnum.normal_user, string _cookieVersion="国内版") { InitializeComponent(); - shopLoginInfo = shop; + shop = _shop; updateFrom = from; cookieVersion = _cookieVersion; this.TitleText = "更新Cookie"; @@ -45,8 +45,8 @@ namespace TemuKJD.PDDForms.ShopForms private void ShopUpdateCookieForm_Load(object sender, EventArgs e) { - if (shopLoginInfo != null) - txtLoginName.Text = shopLoginInfo.LoginName + " " + shopLoginInfo.ShopAccount + " " + shopLoginInfo.Notes; + if (shop != null) + txtLoginName.Text = shop.LoginName + " " + shop.ShopAccount + " " + shop.Notes; } /* @@ -78,7 +78,7 @@ namespace TemuKJD.PDDForms.ShopForms private void btnOk_Click(object sender, EventArgs e) { - if (shopLoginInfo == null) + if (shop == null) { BaseMsgForm.ShowError("店铺为空!"); return; @@ -87,7 +87,7 @@ namespace TemuKJD.PDDForms.ShopForms cookieVersion = this.radioButton1.Checked ? "国内版" : "国际版"; bool ok1 = false; bool ok2 = false; - if ((this.txtCookieJs1.Text.Contains("PASS_ID") && this.txtCookieJs1.Text.Contains("api_uid")) || !string.IsNullOrWhiteSpace(txtSubPassId.Text)) + if ((this.txtCookieJs1.Text.Contains("PASS_ID") /*&& this.txtCookieJs1.Text.Contains("api_uid")*/) || !string.IsNullOrWhiteSpace(txtSubPassId.Text)) { ok1 = GetCookie1(); } @@ -98,9 +98,13 @@ namespace TemuKJD.PDDForms.ShopForms if (ok1 || ok2) { - this.OnSaveComplete(shopLoginInfo); + this.OnSaveComplete(shop); this.Close(); } + else + { + BaseMsgForm.ShowError("缺少关键cookie字段,请确认是店铺登录的cookie!"); + } } bool GetCookie1() @@ -147,6 +151,7 @@ namespace TemuKJD.PDDForms.ShopForms "webp=" + webp + ";" + "x-visit-time=" + x_visit_time + ";"; + //PASS_ID=windows_1-txt3KQyFr2JBdl/PeNNwLLsMj2geDn/BnlN1xEg/hdkC8Kx5WrYvqwTCWi9i50ZfXH0jbMX80leYsfebgQ4kLQ_492379693_91339707; PddBrowser=1; api_uid=Ck3IU2jeM5VoLABZFGCTAg==; rckk=F0JWp023Drn2QqjzLaKOJ0omuqKhTPlC; _bee=F0JWp023Drn2QqjzLaKOJ0omuqKhTPlC; ru1k=f3d9839e-c5ed-430f-8a85-41e6827c526e; _f77=f3d9839e-c5ed-430f-8a85-41e6827c526e; ru2k=20807545-2762-4365-8aa8-b8de45bd76f0; _a42=20807545-2762-4365-8aa8-b8de45bd76f0 List cookieList = new List(); if (!string.IsNullOrEmpty(_a42)) cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "_a42", Value = _a42, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); @@ -174,6 +179,8 @@ namespace TemuKJD.PDDForms.ShopForms cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "webp", Value = webp, Expires = DateTime.Now.AddDays(14), Path= "/home" }); if (!string.IsNullOrEmpty(x_visit_time)) cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "x-visit-time", Value = x_visit_time, Expires = DateTime.Now.AddDays(100), }); + if (PASS_ID.StartsWith("windows") && !cookieList.Any(c => c.Name == "PddBrowser")) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "PddBrowser", Value = "1", Expires = DateTime.Now.AddYears(1), }); cookie = JsonHelper.SerializeObject(cookieList); var cookieShop = new ShopLoginInfo(); @@ -197,14 +204,14 @@ namespace TemuKJD.PDDForms.ShopForms return false; } - if (!shopLoginInfo.LoginName.EndsWith(maskMobile) && shopLoginInfo.LoginName != username && shopLoginInfo.LoginName != mallName) + if (!shop.LoginName.EndsWith(maskMobile) && shop.LoginName != username && shop.LoginName != mallName) { BaseMsgForm.ShowError("cookie与店铺不匹配,请核对店铺!"); return false; } List serverShopLst = new List(); - var rst = ShopBLL.AdminGetServerShopLstForSetCookie(shopLoginInfo, serverShopLst); + var rst = ShopBLL.AdminGetServerShopLstForSetCookie(shop, serverShopLst); if (rst != "success") { @@ -217,29 +224,29 @@ namespace TemuKJD.PDDForms.ShopForms if (updateFrom == SetCookieFromEnum.normal_user) // 普通用户更新本地店铺 { - var localShop = GlobalConfig.ShopLoginList.Where(v => v.LoginName == shopLoginInfo.LoginName).ToList(); + var localShop = GlobalConfig.ShopLoginList.Where(v => v.LoginName == shop.LoginName).ToList(); foreach (var sc in localShop) { sc.Cookies = cookie; sc.LoginStatus = "登录成功"; } } - shopLoginInfo.Cookies = cookie; - shopLoginInfo.ShopId = username; - shopLoginInfo.ShopAccount = mallName; - shopLoginInfo.LoginStatus = "登录成功"; + shop.Cookies = cookie; + shop.ShopId = username; + shop.ShopAccount = mallName; + shop.LoginStatus = "登录成功"; // 店铺更新写入到服务端 var url = BaseClass.BuildObjString("shop/mdy_shop"); var data1 = UserLogin.GetSignaturex() - + "&login_name=" + shopLoginInfo.LoginName - + "&new_shop_id=" + shopLoginInfo.ShopId - + "&shop_account=" + shopLoginInfo.ShopAccount; + + "&login_name=" + shop.LoginName + + "&new_shop_id=" + shop.ShopId + + "&shop_account=" + shop.ShopAccount; var result = GetHtml.PostUtf8(url, data1); - PDDShopListForm.UpdateServerShopCookies(shopLoginInfo); // 店铺cookie写入服务端,不同账号下的同名店铺一起更新cookie + PDDShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,不同账号下的同名店铺一起更新cookie - PDDShopLoginForm loginForm = new PDDShopLoginForm(shopLoginInfo); + PDDShopLoginForm loginForm = new PDDShopLoginForm(shop); loginForm.openType = EnumOpenType.refresh_cookie; loginForm.ShowDialog(); @@ -290,14 +297,14 @@ namespace TemuKJD.PDDForms.ShopForms //var maskMobile = BaseRegex.GetStringJson(ref data, "maskOwnerMobile"); //if (!shopLoginInfo.LoginName.EndsWith(maskMobile)) - if (!data.Contains(shopLoginInfo.ShopAccount)) + if (!data.Contains(shop.ShopAccount)) { BaseMsgForm.ShowError("cookie与国际版店铺不匹配,请核对店铺!"); return false; } List serverShopLst = new List(); - var rst = ShopBLL.AdminGetServerShopLstForSetCookie(shopLoginInfo, serverShopLst); + var rst = ShopBLL.AdminGetServerShopLstForSetCookie(shop, serverShopLst); if (rst != "success") { @@ -310,16 +317,16 @@ namespace TemuKJD.PDDForms.ShopForms if (updateFrom == SetCookieFromEnum.normal_user) // 普通用户更新本地店铺 { - var localShop = GlobalConfig.ShopLoginList.Where(v => v.LoginName == shopLoginInfo.LoginName).ToList(); + var localShop = GlobalConfig.ShopLoginList.Where(v => v.LoginName == shop.LoginName).ToList(); foreach (var sc in localShop) { sc.Cookies2 = cookie2; sc.LoginStatus2 = "国际版在线"; } } - shopLoginInfo.Cookies2 = cookie2; - shopLoginInfo.LoginStatus2 = "国际版在线"; - PDDShopListForm.UpdateServerShopCookies(shopLoginInfo); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie + shop.Cookies2 = cookie2; + shop.LoginStatus2 = "国际版在线"; + PDDShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,多店共用一个登录账号一组cookie return true; } @@ -329,7 +336,7 @@ namespace TemuKJD.PDDForms.ShopForms /// void GetShopFirstLogin(string loginData, List lstServerShop) { - if (this.shopLoginInfo == null) + if (this.shop == null) return; if (lstServerShop == null) lstServerShop = new List(); @@ -347,7 +354,7 @@ namespace TemuKJD.PDDForms.ShopForms { AccountId = BaseRegex.GetStringJson(ref prod, "mallId"), AccountName = BaseRegex.GetStringJson(ref prod, "mallName"), - LoginName = shopLoginInfo.LoginName, + LoginName = shop.LoginName, UserName = BaseClass.UserName, LoginStatus = "登录成功", }; @@ -359,14 +366,14 @@ namespace TemuKJD.PDDForms.ShopForms { ShopLoginInfo newShop = new ShopLoginInfo() { - UserName = shopLoginInfo.UserName, - LoginName = shopLoginInfo.LoginName, - Password = shopLoginInfo.Password, - GroupName = shopLoginInfo.GroupName, + UserName = shop.UserName, + LoginName = shop.LoginName, + Password = shop.Password, + GroupName = shop.GroupName, ShopAccount = sc.AccountName, ShopId = sc.AccountId, - SubUserName = shopLoginInfo.SubUserName, - Notes = shopLoginInfo.Notes, + SubUserName = shop.SubUserName, + Notes = shop.Notes, }; var oldServerShop = lstServerShop.FirstOrDefault(s => diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.Designer.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.Designer.cs new file mode 100644 index 0000000..cd5cba4 --- /dev/null +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.Designer.cs @@ -0,0 +1,110 @@ + +namespace TemuKJD.PDDForms.ShopForms +{ + partial class PDDShopUpdateFddlCookieForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PDDShopUpdateFddlCookieForm)); + this.panel2 = new System.Windows.Forms.Panel(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.panel2.SuspendLayout(); + this.SuspendLayout(); + // + // panel2 + // + this.panel2.BackColor = System.Drawing.Color.White; + this.panel2.Controls.Add(this.label3); + this.panel2.Controls.Add(this.label2); + this.panel2.Controls.Add(this.label1); + this.panel2.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel2.Location = new System.Drawing.Point(1, 33); + this.panel2.Name = "panel2"; + this.panel2.Size = new System.Drawing.Size(543, 289); + this.panel2.TabIndex = 1; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("微软雅黑", 12F); + this.label2.Location = new System.Drawing.Point(62, 87); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(202, 21); + this.label2.TabIndex = 1; + this.label2.Text = "请使用小蜜蜂打开店铺后台"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("微软雅黑", 12F); + this.label1.Location = new System.Drawing.Point(62, 133); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(175, 21); + this.label1.TabIndex = 0; + this.label1.Text = "Cookie获取中,请稍候"; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("微软雅黑", 12F); + this.label3.ForeColor = System.Drawing.Color.Red; + this.label3.Location = new System.Drawing.Point(62, 180); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(74, 21); + this.label3.TabIndex = 2; + this.label3.Text = "错误提示"; + // + // PDDShopUpdateFddlCookieForm + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.ClientSize = new System.Drawing.Size(545, 323); + this.Controls.Add(this.panel2); + this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "PDDShopUpdateFddlCookieForm"; + this.Text = "更新Cookie"; + this.TitleText = "更新Cookie"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.PDDShopUpdateFddlCookieForm_FormClosing); + this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.PDDShopUpdateFddlCookieForm_FormClosed); + this.Load += new System.EventHandler(this.PDDShopUpdateFddlCookieForm_Load); + this.Controls.SetChildIndex(this.panel2, 0); + this.panel2.ResumeLayout(false); + this.panel2.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Panel panel2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label3; + } +} \ No newline at end of file diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs new file mode 100644 index 0000000..e94b318 --- /dev/null +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.cs @@ -0,0 +1,331 @@ +using AllBase; +using AllBase.Helper; +using AllBase.Model.Result; +using CefSharp; +using Fiddler; +using NaiBa.Util.Extension; +using Newtonsoft.Json.Linq; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using System.Windows.Forms; +using TemuKJD.BaseForms; +using TemuKJD.BLL; +using TemuKJD.Helper; +using Work; + +namespace TemuKJD.PDDForms.ShopForms +{ + public partial class PDDShopUpdateFddlCookieForm : LRBaseForm + { + ShopLoginInfo shop = null; + SetCookieFromEnum updateFrom; + public FddlHelper fddlHelper = new FddlHelper(); + + public PDDShopUpdateFddlCookieForm(ShopLoginInfo _shop, SetCookieFromEnum from = SetCookieFromEnum.normal_user) + { + InitializeComponent(); + shop = _shop; + updateFrom = from; + } + + private void PDDShopUpdateFddlCookieForm_Load(object sender, EventArgs e) + { + Task.Run(() => + { + int i = 0; + while (true) + { + i++; + string txt = "Cookie获取中,请稍候"; + for (int j = 0; j < i % 3 + 1; j++) + { + txt += "."; + } + + if (!Created || Disposing || IsDisposed) + break; + Invoke(new Action(() => + { + this.label1.Text = txt; + })); + Thread.Sleep(500); + } + }); + + fddlHelper.InstallCertificate(); + // 监听 + FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest; + fddlHelper.StartupFiddlerCore(); // 启动fiddler + + label3.Text = ""; + + } + + private void FiddlerApplication_BeforeRequest(Session oSession) + { + // https://mms.pinduoduo.com/newjersy/api/mms/popup //https://mms.pinduoduo.com/janus/api/heartbeat/v2 + // https://mms.pinduoduo.com/janus/api/subSystem/getAuthToken // https://mms.pinduoduo.com/janus/api/new/userinfo + // https://mms.pinduoduo.com/home/ // https://mms.pinduoduo.com/janus/api/checkLogin + if (oSession.fullUrl.StartsWith("https://mms.pinduoduo.com")) + { + var header = oSession.RequestHeaders; + if (!header.Any(h => h.Name == "Cookie")) + return; + + var headerCookie = header["Cookie"]; + if (headerCookie.Contains("JSESSIONID") && headerCookie.Contains("_nano_fp") && headerCookie.Contains("api_uid") && + headerCookie.Contains("_f77") && headerCookie.Contains("mms_b84d1838") && headerCookie.Contains("_a42") && + headerCookie.Contains("rckk") && headerCookie.Contains("ru1k") && headerCookie.Contains("ru2k") && + headerCookie.Contains("x-visit-time") && headerCookie.Contains("PASS_ID")) + { + } + else + { + return; + } + + shop.pddid = ""; + if (header.Any(h => h.Name == "pddid")) + { + shop.pddid = header["pddid"]; + } + else + { + return; + } + + FiddlerApplication.BeforeRequest -= FiddlerApplication_BeforeRequest; + + string JSESSIONID = BaseRegex.GetStringCookie(ref headerCookie, "JSESSIONID").ParseToString().Trim('\'', '\n', '\r'); + string _nano_fp = BaseRegex.GetStringCookie(ref headerCookie, "_nano_fp").ParseToString().Trim('\'', '\n', '\r'); + string api_uid = BaseRegex.GetStringCookie(ref headerCookie, "api_uid").ParseToString().Trim('\'', '\n', '\r'); + string _bee = BaseRegex.GetStringCookie(ref headerCookie, "_bee").ParseToString().Trim('\'', '\n', '\r'); + string _f77 = BaseRegex.GetStringCookie(ref headerCookie, "_f77").ParseToString().Trim('\'', '\n', '\r'); + string mms_b84d1838 = BaseRegex.GetStringCookie(ref headerCookie, "mms_b84d1838").ParseToString().Trim('\'', '\n', '\r'); + string _a42 = BaseRegex.GetStringCookie(ref headerCookie, "_a42").ParseToString().Trim('\'', '\n', '\r'); + string rckk = BaseRegex.GetStringCookie(ref headerCookie, "rckk").ParseToString().Trim('\'', '\n', '\r'); + string ru1k = BaseRegex.GetStringCookie(ref headerCookie, "ru1k").ParseToString().Trim('\'', '\n', '\r'); + string ru2k = BaseRegex.GetStringCookie(ref headerCookie, "ru2k").ParseToString().Trim('\'', '\n', '\r'); + string webp = BaseRegex.GetStringCookie(ref headerCookie, "webp").ParseToString().Trim('\'', '\n', '\r'); + string x_visit_time = BaseRegex.GetStringCookie(ref headerCookie, "x-visit-time").ParseToString().Trim('\'', '\n', '\r'); + string PASS_ID = BaseRegex.GetStringCookie(ref headerCookie, "PASS_ID").ParseToString().Trim('\'', '\n', '\r'); + + + string cookie = "_a42=" + _a42 + ";" + + "_bee=" + _bee + ";" + + "_f77=" + _f77 + ";" + + "_nano_fp=" + _nano_fp + ";" + + "api_uid=" + api_uid + ";" + + "JSESSIONID=" + JSESSIONID + ";" + + "mms_b84d1838=" + mms_b84d1838 + ";" + + "PASS_ID=" + PASS_ID + ";" + + "rckk=" + rckk + ";" + + "ru1k=" + ru1k + ";" + + "ru2k=" + ru2k + ";" + + "webp=" + webp + ";" + + "x-visit-time=" + x_visit_time + ";"; + + //PASS_ID=windows_1-txt3KQyFr2JBdl/PeNNwLLsMj2geDn/BnlN1xEg/hdkC8Kx5WrYvqwTCWi9i50ZfXH0jbMX80leYsfebgQ4kLQ_492379693_91339707; PddBrowser=1; api_uid=Ck3IU2jeM5VoLABZFGCTAg==; rckk=F0JWp023Drn2QqjzLaKOJ0omuqKhTPlC; _bee=F0JWp023Drn2QqjzLaKOJ0omuqKhTPlC; ru1k=f3d9839e-c5ed-430f-8a85-41e6827c526e; _f77=f3d9839e-c5ed-430f-8a85-41e6827c526e; ru2k=20807545-2762-4365-8aa8-b8de45bd76f0; _a42=20807545-2762-4365-8aa8-b8de45bd76f0 + List cookieList = new List(); + if (!string.IsNullOrEmpty(_a42)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "_a42", Value = _a42, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(_bee)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "_bee", Value = _bee, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(_f77)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "_f77", Value = _f77, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(_nano_fp)) + cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "_nano_fp", Value = _nano_fp, Expires = DateTime.Now.AddDays(400), }); + if (!string.IsNullOrEmpty(api_uid)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "api_uid", Value = api_uid, Expires = DateTime.Now.AddDays(400), }); + if (!string.IsNullOrEmpty(JSESSIONID)) + cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "JSESSIONID", Value = JSESSIONID, HttpOnly = true, }); + if (!string.IsNullOrEmpty(mms_b84d1838)) + cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "mms_b84d1838", Value = mms_b84d1838, Expires = DateTime.Now.AddDays(100), }); + if (!string.IsNullOrEmpty(PASS_ID)) + cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "PASS_ID", Value = PASS_ID, Expires = DateTime.Now.AddDays(30), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(rckk)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "rckk", Value = rckk, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(ru1k)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "ru1k", Value = ru1k, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(ru2k)) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "ru2k", Value = ru2k, Expires = DateTime.Now.AddYears(1), HttpOnly = true, Secure = true, }); + if (!string.IsNullOrEmpty(webp)) + cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "webp", Value = webp, Expires = DateTime.Now.AddDays(14), Path = "/home" }); + if (!string.IsNullOrEmpty(x_visit_time)) + cookieList.Add(new Cookie() { Domain = "mms.pinduoduo.com", Name = "x-visit-time", Value = x_visit_time, Expires = DateTime.Now.AddDays(100), }); + if (PASS_ID.StartsWith("windows") && !cookieList.Any(c => c.Name == "PddBrowser")) + cookieList.Add(new Cookie() { Domain = ".pinduoduo.com", Name = "PddBrowser", Value = "1", Expires = DateTime.Now.AddYears(1), }); + headerCookie = JsonHelper.SerializeObject(cookieList); + + var cookieShop = new ShopLoginInfo(); + cookieShop.pddid = shop.pddid; + cookieShop.Cookies = JsonHelper.SerializeObject(cookieList); + + var data = ""; + data = PDDShopListForm.GetShopStatus(cookieShop); + if (!data.Contains("\"success\":true") || data.Contains("会话已过期")) + { + Invoke(new Action(() => + { + //BaseMsgForm.ShowError("cookie已失效!"); + label3.Text = "cookie已失效!"; + })); + FiddlerApplication.BeforeRequest -= FiddlerApplication_BeforeRequest; + FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest; + return; + } + + var username = BaseRegex.GetStringJson(ref data, "username"); + var maskMobile = BaseRegex.GetStringJson(ref data, "mobile"); + var mallName = BaseRegex.GetStringJson(ref data, "mall_name"); + maskMobile = maskMobile.Split('*').Last(); + if (string.IsNullOrWhiteSpace(maskMobile) || string.IsNullOrWhiteSpace(username) || string.IsNullOrWhiteSpace(mallName)) + { + Invoke(new Action(() => + { + //BaseMsgForm.ShowError("店铺信息获取失败!"); + label3.Text = "店铺信息获取失败!"; + })); + FiddlerApplication.BeforeRequest -= FiddlerApplication_BeforeRequest; + FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest; + return; + } + + if (!shop.LoginName.EndsWith(maskMobile) && shop.LoginName != username && shop.LoginName != mallName) + { + Invoke(new Action(() => + { + //BaseMsgForm.ShowError("cookie与店铺不匹配,请核对店铺!"); + label3.Text = "cookie与店铺不匹配,请核对店铺!"; + })); + FiddlerApplication.BeforeRequest -= FiddlerApplication_BeforeRequest; + FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest; + return; + } + + List serverShopLst = new List(); + var rst = ShopBLL.AdminGetServerShopLstForSetCookie(shop, serverShopLst); + + if (rst != "success") + { + Invoke(new Action(() => + { + //BaseMsgForm.ShowError(rst); + label3.Text = rst; + })); + FiddlerApplication.BeforeRequest -= FiddlerApplication_BeforeRequest; + FiddlerApplication.BeforeRequest += FiddlerApplication_BeforeRequest; + return; + } + + //如果店铺没有cookie登录过,处理店铺第一次登录(分裂cookie下的所有店铺) + GetShopFirstLogin(data, serverShopLst); + + if (updateFrom == SetCookieFromEnum.normal_user) // 普通用户更新本地店铺 + { + var localShop = GlobalConfig.ShopLoginList.Where(v => v.LoginName == shop.LoginName).ToList(); + foreach (var sc in localShop) + { + sc.Cookies = headerCookie; + sc.LoginStatus = "登录成功"; + } + } + shop.Cookies = headerCookie; + shop.ShopId = username; + shop.ShopAccount = mallName; + shop.LoginStatus = "登录成功"; + + // 店铺更新写入到服务端 + var url = BaseClass.BuildObjString("shop/mdy_shop"); + var data1 = UserLogin.GetSignaturex() + + "&login_name=" + shop.LoginName + + "&new_shop_id=" + shop.ShopId + + "&shop_account=" + shop.ShopAccount; + var result = GetHtml.PostUtf8(url, data1); + + PDDShopListForm.UpdateServerShopCookies(shop); // 店铺cookie写入服务端,不同账号下的同名店铺一起更新cookie + + Invoke(new Action(() => + { + this.OnSaveComplete(shop); + this.Close(); + })); + } + } + + private void PDDShopUpdateFddlCookieForm_FormClosed(object sender, FormClosedEventArgs e) + { + } + + private void PDDShopUpdateFddlCookieForm_FormClosing(object sender, FormClosingEventArgs e) + { + //UninstallCertificate(); // 移除 CertMaker.dll, BCMakeCert.dll 文件后,无需每次删除证书 + fddlHelper.UninstallFiddler(); + } + + /// + /// 如果店铺没有cookie登录过,处理店铺第一次登录(分裂cookie下的所有店铺) + /// + /// + void GetShopFirstLogin(string loginData, List lstServerShop) + { + if (this.shop == null) + return; + if (lstServerShop == null) + lstServerShop = new List(); + + List lstShopCompany = new List(); + var jObj = JObject.Parse(loginData); + var jArr = jObj["result"]?["companyList"]?[0]?["malInfoList"] as JArray; + if (jArr == null) + jArr = new JArray(); + + foreach (var productObj in jArr) + { + var prod = JsonHelper.SerializeObject(productObj); + ShopCompany sc = new ShopCompany() + { + AccountId = BaseRegex.GetStringJson(ref prod, "mallId"), + AccountName = BaseRegex.GetStringJson(ref prod, "mallName"), + LoginName = shop.LoginName, + UserName = BaseClass.UserName, + LoginStatus = "登录成功", + }; + lstShopCompany.Add(sc); + } + + var lstShopCompanyCopy = lstShopCompany.ToList(); + foreach (ShopCompany sc in lstShopCompanyCopy) + { + ShopLoginInfo newShop = new ShopLoginInfo() + { + UserName = shop.UserName, + LoginName = shop.LoginName, + Password = shop.Password, + GroupName = shop.GroupName, + ShopAccount = sc.AccountName, + ShopId = sc.AccountId, + SubUserName = shop.SubUserName, + Notes = shop.Notes, + }; + + var oldServerShop = lstServerShop.FirstOrDefault(s => + s.LoginName == newShop.LoginName && s.ShopId == newShop.ShopId); + if (oldServerShop == null) + { + if (updateFrom != SetCookieFromEnum.normal_user) + ShopBLL.AdminAddServerShop(newShop); // 店铺写入到服务端 + else + ShopBLL.AddServerShop(newShop); // 店铺写入到服务端 + } + } + } + } +} diff --git a/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.resx b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.resx new file mode 100644 index 0000000..2bdeb30 --- /dev/null +++ b/TEMUKJD/PDDForms/ShopForms/PDDShopUpdateFddlCookieForm.resx @@ -0,0 +1,298 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAEAgIAQAAAAAABoKAAAFgAAACgAAACAAAAAAAEAAAEABAAAAAAAACgAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAgICAAMDAwAAAAP8AAP8AAAD//wD/AAAA/wD/AP// + AAD///8AAAAAAAAAAAAAAAAzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMQ + AAAAAAAAAAAAAAAAAAAAAAAAABM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZkzEAAAAAAAAAAAAAAAAAAAAAADOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZMwAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZkzAAAAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmTEAAAAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAAAA5mZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAADmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAJmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZAAAAAA + OZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmT + AAAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmRAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZkwAAAZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZkwAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZMAAJmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZEAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwCZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkRmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZOZmZOZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmP+JmZmZmZmZj/////// + ///4OZmZj/eZmZmZmZmZmPg5OZmZmZuI//iIuZmZmZmZmZmZmZM5mZmZmZmZmZmZmb//+JmZmZmZmP// + //////////OZmP//uZmZmZmZmY//+ZmZOZf///////h5k5mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ/////////////4mZ///4mZmZmZmZP///uZmZmP////////+JmZmZmZmZmZkzmZmZmZmZmZmZmZj//4 + mZmZmZmf////////////+Jmf//+JmZmZmZmb///4mZmY//////////+JmZmZmZmZmZM5mZmZmZmZmZmZ + mY//+JmZmZmZn/////////////mZmP//iZmZmZmZk///+5mZj/////iP////+JmZmZmZmZmTOZmZmZmZ + mZmZmZmP//iZmZmZmZ////iIiIiIiIiZOZj//4mZmZmZmZP///uZmf////eZmT////+ZmZmZmZmZkzmZ + mZmZmZmZmZmZj//4mZmZmZmf//+JmZmZmZmZk5mY//+JmZmZmZmT///7mZj///+ZmZmZj///uZmZmZmZ + mZM5mZmZmZmZmZmZmY//+JmZmZmZn///iZmZmZmZmZmZmP//iZmZN5k5k///+5mY///zk5mZOT///4mZ + mZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///4mZmZmZmZmZmZj//4mZmP/5k5P///uZmP//+ZmZmZmY + //+JmZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf///4iIiIiIg5mZmY//+JOb//+JmT///7mZj//4mZ + mZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////85mZmP//iZn///+Jk///+5mf + //+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ////////////+ZmZj//4mY////85v/ + //uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf////////////mZmY//+Jv/// + //+Z///7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn///////////+JmZmP// + if//////if//+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZmZ///////////4mZ + mZj//4j///////j///uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZmZmZj//4mZmZmZmf//+JMzMz + MzOZOZmY//////+D///////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmZmZmY//+JmZmZmZn/// + iZmZmZmZmZmZmP//////mY//////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZmZmZmZmP//iZmZmZ + mZ///4mZmZmZmZmZmZj/////+5mf//////uZmP//iZmZmZmY///5mZmZmZmZkzmZmZmZmZmZMzM5j//4 + kzMzmZmf//+JMzMzMzM5mZmY/////4mTk//////7mZj//4mZmZmZmP//+ZmZmZmZmZM5mZmZmZmZmP// + /////////4mZn////////////4mZmP////+ZmZmP////+5mY//+JmZmZmZj///mZmZmZmZmTOZmZmZmZ + mY/////////////4mZ/////////////7mZj////7mZmZn/////uZmP//iZmZmZmY///5mZmZmZmZkzmZ + mZmZmZn//////////////5mf////////////+Jmf////iZmZk5P////4mZ///4mZmZmZmP//+ZmZmZmZ + mZM5mZmZmZmZj/////////////iZn/////////////iZmP///5mZmZmZj///+5mY//+JmZmZmZj//4mZ + mZmZmZmTOZmZmZmZmZ/////////////zmZP///////////+JmZP///uTmZmZmZj//4mZm///mZmZmZmZ + //85mZmZmZmZkzmZmZmZmZOZiIiIiIiIiIiImTmZOIiIiIiIiIiImTmZOIi5mZmZmZOZiIuZmZk4iZOZ + mZmZOZiDmZmZmZmZmZM5mZmZmZmZOZmZmZmZmZmZmZOZmZmZmZmZmZmZmZOZmZmZmZmZmZmZOZmZmZmZ + mZk5mZmZmZOZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmTuIiIiIs5mZmZmZmZ + mTu4i7mZmZmZmZmZmTMzmZOZmZkzOZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmTmbj///////+HmT + mZmZk4j/////iJmZmZk4iP////iZOZmZj/mZOZOIiIiIiIiIiDmZmZmZmZmZkzmZmZmZmZmZj/////// + ///4mZk5k4///4iI///4OZOY////////iZOZmb/5mZmP///////////4mZmZmZmZmZM5mZmZmZmZn/// + //////////mZmY///5mZmZP///iZmP////////+ZOZk/iZmY/////////////4mZmZmZmZmTOZmZmZmZ + mZ/////////////5mZ////+JmZmY////iZl/////////+ZmZP4mZP//////////////7mZmZmZmZkzmZ + mZmZmZmb////////////uZP/j///+HM3j/////+ZmYj///////iZmT+JmY//////////////+JmZmZmZ + mZM5mZmZmZmZmY//////////+JmT+Jv///////////iPmTmZOI/4mP//uTk/iZmP//////////////iZ + mZmZmZmTOZmZmZmZmZmf//////////mZmZmZ///////////5mZmZmZmTOZk///mZP4mZj/////////// + ///4mZmZmZmZkzmZmZmZmZmTmP////////+JOZmZOY//////////iZmZmZmZmZk5mf/4mT+JmY////// + ////////+JmZmZmZmZM5mZmZmZmZmZn/////////mZmZmZk//////////zmZmZmZmZmZmTmP/zm/iZmP + //////////////iZmZmZmZmTOZmZmZmZmZk5v///////85OZmZkzmP////////iZmZmZmZmZmZmZn//4 + /4mZj/////hzN4/////4mZmZmZmZkzmZmZmZmZmZmZj//////4mZmTmY/4j////////4mZmZmZmZmZmZ + mZj///+JmY////+JmZmY////+JmZmZmZmZM5mZmZmZmZmZmZ//////+ZmZmZj////////////4mZmZmZ + mZmZmZmb////+ZmP///4mZu5mY////iZmZmZmZmTOZmZmZmZmZmZOb/////4k5mZmP/////////////7 + mZmZmZmZmZmZk/////OZv///+ZmP+Jmf///4mZmZmZmZkzmZmZmZmZmZmZmf////+ZmZmZj////////4 + eI//+JmZmZmZmZmZmZP////4mb///4mY//+JmP//+5mZmZmZmZM5mZmZmZmZmZk5v/////uTmZmb//// + ///4mZmX//iZmZmZmZmZmZmZ////+Jmf//95n///+Zj///OZmZmZmZmTOZmZmZmZmZmZmf//////mZmZ + mY//////+ZOZmZiJmZmZmZmZmZmZmY////+ZmP//+I////iP//+JmZmZmZmZkzmZmZmZmZmZmZj///// + /4mZmZmf/////5k5mZOZmTmZmZmZmZmZmZmP///4mZP/////////////OZmZmZmZmZM5mZmZmZmZmZk/ + ///////zmZmZm/////iZmZmZmZmZmZmZmZmZmZmZj///85mZj///////////+JmZmZmZmZmTOZmZmZmZ + mZmZv///////+5mZmZmP///5mZmZmZmZmZmZmZmZmZmZmZ///3mZmZj//////////4mZmZmZmZmZkzmZ + mZmZmZmZmb///4j///uZmZmZmP//mTmZmZmZmZmZmZmZmZmZmZmY/4OZmZmZeP///////4eZmZmZmZmZ + mZM5mZmZmZmZmZmY/4OZOP+JmZmZmZmIiZOZmZmZmZmZmZmZmZmZmZmZmYiZmZmZmZk4iIiIiIOZmZmZ + mZmZmZmTOZmZmZmZmZmZmTOZmZkzmZmZmZmZmZk5mZmZmZmZmZmZmZmZmZmZmZmZk5mZmZmZmZmZmZmZ + mZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZM5mZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTOZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkzmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZM5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZkwmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZkwA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAABmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAAADmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAJmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmRAAAAA5mZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAACZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmQAAAAAAGZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZMAAAAAAAOZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZkwAAAAAA + AAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTAA + AAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZMAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZkwAAAAAAAAAAAAOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmTAAAAAAAAAAAAAAGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZEAAAAAAAAAAAAAAAA5mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZMAAAAAAAAAAAAAAAAAATmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAABOZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZMQAAAAAAAAAAAAAAAAAAAAAAAzmZmZmZmZmZmZmZmZmZmZmZmZmZ + mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmTMAAAAAAAAAAAAAAAAAAAAAAAAAAAEzMzMzMzMzMzMzMzMzMz + MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxAAAAAAAAAAAAAAD////////////////////////4AAAA + AAAAAAAAAB//////wAAAAAAAAAAAAAAD/////wAAAAAAAAAAAAAAAP////wAAAAAAAAAAAAAAAA////w + AAAAAAAAAAAAAAAAD///4AAAAAAAAAAAAAAAAAf//8AAAAAAAAAAAAAAAAAD//+AAAAAAAAAAAAAAAAA + Af//AAAAAAAAAAAAAAAAAAD//gAAAAAAAAAAAAAAAAAAf/wAAAAAAAAAAAAAAAAAAD/4AAAAAAAAAAAA + AAAAAAAf+AAAAAAAAAAAAAAAAAAAH/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAP4AAAAAAA + AAAAAAAAAAAAB+AAAAAAAAAAAAAAAAAAAAfAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AA + AAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAA + AAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAA + AAGAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAA + AAAAAAABgAAAAAAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAABgAAAAAAA + AAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAA+AA + AAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAH8AAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA + AA/4AAAAAAAAAAAAAAAAAAAf/AAAAAAAAAAAAAAAAAAAH/wAAAAAAAAAAAAAAAAAAD/+AAAAAAAAAAAA + AAAAAAB//wAAAAAAAAAAAAAAAAAA//+AAAAAAAAAAAAAAAAAAf//wAAAAAAAAAAAAAAAAAP//+AAAAAA + AAAAAAAAAAAH///4AAAAAAAAAAAAAAAAD////AAAAAAAAAAAAAAAAD////8AAAAAAAAAAAAAAAD///// + wAAAAAAAAAAAAAAD//////wAAAAAAAAAAAAAH////////////////////////w== + + + \ No newline at end of file diff --git a/Work/Initialization.cs b/Work/Initialization.cs index e89c39e..9ba8966 100644 --- a/Work/Initialization.cs +++ b/Work/Initialization.cs @@ -687,6 +687,12 @@ offCountPara,false;offProductPara,100;IrregularitiesPara,true;noNeerPara,true;no //if (!Directory.Exists("temp/image")) // Directory.CreateDirectory("temp/image"); + + + if (!FileBase.Exists("FiddlerCore4.dll")) + if (GetHtml.DownloadFile(BaseClass.ServerUrl + "/Download/" + "FiddlerCore4.dll", "FiddlerCore4.dll" + ".bak")) + FileBase.Move("FiddlerCore4.dll" + ".bak", "FiddlerCore4.dll"); + /* List files = new List(); files.Add(new KeyValueBase("标题包含过滤_new.txt", "config/标题包含过滤x.ini"));