Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Переход проекта с Д5 на Д7, ошибка [D7, WinXP]


Dimich1978 ©   (2005-08-08 10:39:00) 

[Fatal Error] Klient.dpr(23): Unit Windows was compiled with a different version of Types.DWORD
Вот такая вот ошибка выскакивает ,
это клиент асечный с http://icq2000cc.hobi.ru/sources/lesson1.zip
скачал, и вот ошибка. Непойму что сделать можно. Сподможите плиз.
Посмотрел http://www.developing.ru/forum/topic2290.htmlрешене по этой ссылке непомогает. ДКУ удаяю, все тоже самое, ошибка сохраняется, может кто еще сталкивался и решил данную проблему. Буду признателен.


Anatoly Podgoretsky   (2005-08-08 14:52:00) [1]

Dimich1978   (08.08.05 14:36) [14]
Ты должен благодарить Борланд, что они наконец сделали "константы" неизменяемыми и вместо того что бы продолжать творить бардак, изменил бы дизайн программы.


ALS   (2005-08-08 14:50:00) [2]

F1:

Syntax {$J+} or {$J-}
{$WRITEABLECONST ON} or {$WRITEABLECONST OFF}
Default {$J-}
{$WRITEABLECONST OFF}
Scope Local
The $J directive controls whether typed constants can be modified or not. In the {$J+} state, typed constants can be modified, and are in essence initialized variables. In the {$J-} state, typed constants are truly constant, and any attempt to modify a typed constant causes the compiler to report an error.


Dimich1978   (2005-08-08 14:36:00) [3]

Спасибо это помогло, ошибка пропала
и в первом случае и во втором.
Директива {$J+}-Что делает?


ALS   (2005-08-08 14:14:00) [4]


{$J+}
const OL : booLean = false;
{$J-}

 либо

var OL : booLean = false;


Amoeba   (2005-08-08 14:10:00) [5]


> конструкция
> const OL : booLean = false;
> потом в функции
> OL := Result <> '127.0.0.1';

Может в D7 что-то изменилось в опциях компиляции, раз компилятор ругается, по сравнению с D5?


Dimich1978   (2005-08-08 14:05:00) [6]

Вот вся функция:
const OL : booLean = false;
function Get_my_IP: string;
var wVersionRequested : WORD;
   wsaData : TWSAData;
   p : PHostEnt;
   s : array[0..128] of char;
   p2 : pchar;
begin
    Result := '127.0.0.1';
    try {Start up WinSock}
     wVersionRequested := MAKEWORD(1, 1);
     WSAStartup(wVersionRequested, wsaData);
     try {Get the computer name}
       GetHostName(@s, 128);
       p := GetHostByName(@s);
       {Get the IpAddress}
       p2 := iNet_ntoa(PInAddr(p^.h_addr_list^)^);
       Result := p2;
     except end;
     try {Shut down WinSock} WSACleanup; except end;
    except end;
    OL := Result <> '127.0.0.1';
end;
Блин и еще в одном месте вылезла такая же фигня:
x:=length(blok)+27+length(sMess)+9;
Что0то после 5-ой версии много чего изменилось, да и я давно не программировал, помогите начинающему..плиз хелп.


Ega23   (2005-08-08 13:45:00) [7]

функция какой тип данных возвращает?


Dimich1978   (2005-08-08 13:43:00) [8]

Тут же появился вопрос еще один
конструкция
const OL : booLean = false;
потом в функции
OL := Result <> '127.0.0.1';
Ошибка
[Error] Packet.pas(449): Left side cannot be assigned to
В чем проблема, обратно говорюю чтов Д5 это все работает.
Сейчас исчу ответ в мануалах. Сподможите


Dimich1978   (2005-08-08 12:53:00) [9]

Я на это тоже внимание обратил, нов Д5 то работало..вот что смутило


Ega23   (2005-08-08 12:12:00) [10]

Ты ещё Classes юнит назови. Или Windows


Anatoly Podgoretsky   (2005-08-08 12:01:00) [11]

Dimich1978   (08.08.05 11:38) [4]
В этом модуле нельзя хранить, требуется другое имя, поскольку это зарезервировано для модуля Борланд.


Dimich1978   (2005-08-08 11:42:00) [12]

Выкинул из проекта Types, ругаться продолжает на Types.DWord
program nICQ;

uses
 Forms,
 main in 'main.pas' {Form1},
 Packet in 'Packet.pas';

{$R *.RES}

begin
 Application.Initialize;
 Application.Title := 'nICQ';
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.


Dimich1978   (2005-08-08 11:38:00) [13]

Но в этом модуле хранятся все описанные типы.


Anatoly Podgoretsky   (2005-08-08 11:24:00) [14]

Удалить Types


Dimich1978   (2005-08-08 11:22:00) [15]

не трогал


Ega23   (2005-08-08 10:41:00) [16]

Генофонд трогал?


Наверх

Титульная страница Поиск, карта сайта Написать письмо