我把原来引用的PAS里的function放到主PAS里 然后把那个引用的PAS删掉编译为什么出现
[错误] Main.pas(118): Unsatisfied forward or external declaration: 'TKon.IsNT'

解决方案 »

  1.   

    IsNT
    函数实现和声明对不上
      

  2.   

    public下:
    function IsNT: Boolean;function IsNT: Boolean;
    var
      OSVersionInfo: TOSVersionInfo;
    begin
      OSVersionInfo.dwOSVersionInfoSize := SizeOf(OSVersionInfo);
      GetVersionEx(OSVersionInfo);
      if OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then
        Result := True
      else
        Result := False;
    end;
      

  3.   

    search -> find in files.. -> 查找 TKon.IsNT可能你其它地方引用了这个变量,如找到就清除就行了.
      

  4.   

    如果声明放在了类中,实现要加上类名比如如果你声明成了
    type
      TForm1 = class(TForm)   
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
        function IsNT: Boolean;
      end;
    那么实现要写成
    function TForm1.IsNT: Boolean;
    var
      OSVersionInfo: TOSVersionInfo;
    begin
      OSVersionInfo.dwOSVersionInfoSize := SizeOf(OSVersionInfo);
      GetVersionEx(OSVersionInfo);
      if OSVersionInfo.dwPlatformId = VER_PLATFORM_WIN32_NT then
        Result := True
      else
        Result := False;
    end;