判断一个单元是否在interface下的 uses列表中,当不在时就加上,有没有好的方法, 难道需要把文件读进来再判断???

解决方案 »

  1.   

    要想好先后因果关系,
    是你需要时候才把他引入时才uses;
      

  2.   

    分两种情况:
    一是工程中有没有Uses,这时要读dpr文件,其格式为 XXXUnit in 'XXXUnit.pas' {XXXX},
    若找到,则表明已经在工程中,否则要在相应的位置加一行
    一是某个Unit中有没有Uses,这时要读Unit文件,需要注意的是不仅interface部分有Uses,implementation部分也有Uses,在这两部分都必须要搜索目标Unit是否已经包含进来,并进行相应的处理。
    我的回答你满意吗?是必须要读文件(用TStringList.loadfromfile即可)才能解决这个问题,而且要考虑各种不规范的写法和大小写,举例,Uses语句,标准的写法是写一行,但不规范的写法是: uses windows; //uses语句不是单独一行