I may be the only one who writes his own, supplementary, U2 frames. If so, then no one needs the program I wrote to preserve those when updating U2. But here it is, if anyone out there in Xy-land wants it. It’s written as a U2 frame itself, and it does a ton of error-checking, so, with a goodly amount of commenting. It presumes that: 1. you have downloaded the new U2 and have unzipped its files into a subdirectory of the directory that the current U2 is in. The subdirectory must be named “newu2dir”. 2. you have placed all your personal frames in one section of the U2, delimited by MyFramesStart and MyFramesEnd—each must be on a line by themselves, like this: MyFramesStart ……… …….. …….. MyFramesEnd ……. It places your frames at the top of the new U2, which is a bit risky, since placing them there means they take precedence over any other frames with the identical name. You can always move them manually to the bottom of the U2 file after the program has run. Carl, maybe you want to include this in the “stock” U2. The below is encoded with frame XyEnc and should be decoded by using XyDec. '%--_XYENCode_start-- {{5updateU2}}_HB--December_30,_2016._For_updating_XyWWWeb.u2_w hen_user-written_frames_are_to_be_transferred_from_the_existin g_U2_to_to_the_new_one._Assumes_that_the_zip_file_has_been_ext racted_to_a_directory_off_the_current_U2'`s_directory,_and_ass umes_that_all_the_user-written_frames_are_in_one_section_of_th e_old_U2,_delimited_by_MyFramesStart_(case-insenstive)_and_MyF ramesEnd--where_each_is_on_a_line_by_itself--i.e._each_must_be _surrounded_by_[CrLf]s.'^~B~ ',*',_I_don'`t_know_why_01_has_to_be_re-stored'^~ 01,02,03,04,05~>',*','^~ his_updates_XYWWWEB.U2,_but_~ ,_e[x]it',*','^~ ~>'BC~<PRAborting~>~ IS02~>~>',*',_03_now_has,_e.g.,_c'.\Xy4\'^~ u2dir\"~>',*',_05_is,_e.g.,_c'.\Xy4\newu2dir\'^'BXexist_~ ~>XYWWWEB.U2'Q2',*','^~ U2_in_@03~>~ 03~>new.u2'Q2~ _open'^'BXgofile_~ ~ 3~>old.u2'Q2',*',_will_get_"myframes"_from_old.u2'^~ 'BCCan'`t_copy_~ ~>',*',_'^'BXexist_~ ~ y/nv_~ Can'`t_copy_~ *','^',*',_double_check_follows'^'BXexist_~ ','^~ EW.U2~ ~ 'BXse/f_/;~[MyFramesStart;~[/'Q2',*','^~ ind_'`;~[MyFramesStart;~[~ e_/;~[MyFramesEnd;~[/'Q2',*','^~ yFramesEnd;~[~ yframes.u2'Q2',*','^~ MES.U2~ /100_~ 2~ IF@NOT(~ PV03~>NEW.U2~>~ 'BCcan'`t_find_{~ me_~ ~>MYFRAMES.U2~ ~ '^'JM2.lh_'Q2'TF'BCNew_xywwweb.u2_should_be_loaded_(old_one_is _~ '%--_XYENCode___end-- |