Author Topic: Convert Keil uVision Workspace  (Read 22375 times)

roguebear

  • Community Member
  • Posts: 17
  • Hero Points: 0
Re: Convert Keil uVision Workspace
« Reply #15 on: November 09, 2011, 02:21:40 am »
     Most people use keil and IAR. can you write a program which can convert keil and IAR project to slickedit. 
    I think it's maybe a big project. the newest version of keil arm is 4.22a, keil c51 is 9.05 , IAR arm is 6.20.
    Need get *.c *.h *.a *.asm or *.cpp file, and include path, even the parameter which can use it debug project directly in slickedit. so I think it takes a long time to make this software perfect.
    So i think use slickeedit's macro to write this function maybe the best choice. if i can get the value between <node> </node>, I'll maintain it, upgrade it continuously.

Graeme

  • Senior Community Member
  • Posts: 2359
  • Hero Points: 310
Re: Convert Keil uVision Workspace
« Reply #16 on: November 09, 2011, 05:40:38 am »
     Most people use keil and IAR. can you write a program which can convert keil and IAR project to slickedit. 
    I think it's maybe a big project. the newest version of keil arm is 4.22a, keil c51 is 9.05 , IAR arm is 6.20.
    Need get *.c *.h *.a *.asm or *.cpp file, and include path, even the parameter which can use it debug project directly in slickedit. so I think it takes a long time to make this software perfect.
    So i think use slickeedit's macro to write this function maybe the best choice. if i can get the value between <node> </node>, I'll maintain it, upgrade it continuously.

How do you know _xmlcfg_get_value doesn't do what you want?

Slickedit's hotfix mechanism uses _xmlcfg_get_value to get the value of the Defect nodes in the function hotfixGetFixDescriptions below.  _xmlcfg_get_attribute gets the value of the attribute.


Code: [Select]
<Defect Ids="12138" Modules="window.e">
List untitled windows in Windows list.
</Defect>

Code: [Select]
static _str hotfixGetFixDescriptions(int handle)
{
   // the text is PCDATA
   description := "";

   // now get the individual defect descriptions
   typeless defects[];
   status := _xmlcfg_find_simple_array(handle, "/HotFix/Defect", defects);
   if (defects._length() > 0) {
      description :+= "<ul>";
      foreach (auto node in defects) {
         modules := _xmlcfg_get_attribute(handle, node, "Modules");
         ids     := _xmlcfg_get_attribute(handle, node, "Ids");
         if (modules=='') modules="general fix";
         description :+= "<li><font color=\"darkred\">":+modules:+"</font> -- ";
         text_node := _xmlcfg_get_first_child(handle, node, VSXMLCFG_NODE_PCDATA);
         if (text_node > 0) {
            _str defect_info = _xmlcfg_get_value(handle, text_node);
            description :+= stranslate(defect_info, " ", "[\t\n\r]",'r');
         }
         description :+= "</li>";
      }
      description :+= "</ul>";
   }

   // that's all folks
   return description;
}


roguebear

  • Community Member
  • Posts: 17
  • Hero Points: 0
Re: Convert Keil uVision Workspace
« Reply #17 on: November 10, 2011, 01:46:01 am »
great! It works . thank you very much.
  to get the text value, must use.

foreach(auto node ....)
 
then use _...get_firstchild_...

then....

    now, I can go on my works.

koji

  • Community Member
  • Posts: 21
  • Hero Points: 0
Re: Convert Keil uVision Workspace
« Reply #18 on: December 10, 2013, 08:44:29 am »
has uvprojconv.e for uv4 come out? can sb share it?  :) :) :)