Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Delphi. Build warning. Как победить?

Ответить
Настройки темы
Delphi - Delphi. Build warning. Как победить?

Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


По-моему вы понимайте, что здесь происходит.
Объясните, пожалуйста, почему опасный кодекс “@ operator”. *

Цитата:
Uses WinInet;
……………………………..
procedure TForm1.Button6Click(Sender: TObject);
var
* *dwConnectionTypes: DWORD;
begin
*if not InternetGetConnectedState(@dwConnectionTypes,0) then
begin
*if MessageDlg('Internet Connection Not Execute, Please Check Connection!'
* ,Mtinformation,[mbOk],0)=mrOk then
*Exit;
* *end;
*end;
end;



Build
*[Warning] Unit1.pas(273): Unsafe code '@ operator'
Добавлено:

Как можно ето исправить?

-------
Mr. Eko Mazini


Отправлено: 12:46, 10-10-2004

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


А чего в помощь сначала не смотрим? Там ясно сказано, что @ это оператор возвращающий (в вашем случае) адрес переменной указанной после него (см. help Delphi Language Reference). В другом файле справки (Delphi Compiler Messages & Warnings) не менее ясно описано почему так происходит:
Цитата:
You have used a data type or operation for which static code analysis cannot prove that it does not overwrite memory. In a secured execution environment such as .NET, such code is assumed to be unsafe and a potential security risk.
Имхо, ничего страшного тут нет, ворнинги они на то и ворнинги, что не ерроры . Стоит лишь подумать а так ли оно нужно применение этого оператора. Можно посоветовать поглядеть описание функции  InternetGetConnectedState и увидеть, что она принимает два аргумента: LPDWORD и DWORD. Первый это указатель, судя по всему на DWORD (И судя по всему длинный). Так заведите себе этот указатель заставьте его указывать на нужное вам значение и передавайте в функцию... И еще, чеснослово, больше делайте самостоятельных вещей, на форум только в безвыходной ситуации, форум он не учебное заведение, скоро на ваши вопросв перестанут отвечать, как поймут, что это безперспективно.
P.S. Пишу здесь ибо по мылу связаться с вами нельзя, безответное оно...

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 18:52, 10-10-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


Prisoner это что я и хочу сделать, моя первая (если можно называть) программа,
и … Вы понимайте да, что я нуждаюсь помощь. потому и беспокою вас. *Не злитеc пожалуйста.

-------
Mr. Eko Mazini


Отправлено: 19:53, 10-10-2004 | #3


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


В общем читаем ОПК и ПФП , думаем, проникаемся благоговейным ужасом и знаем, что промахи будут фатальны.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 05:07, 11-10-2004 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Delphi. Build warning. Как победить?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Proxy/NAT - Как настроить сеть в VMware 6.5.1 Build Molchun_V Сетевые технологии 1 05-10-2009 19:48
Установка - 7 build 7000 -> 7 build 7057 (rus) benwar Microsoft Windows 7 8 29-03-2009 19:10
HDD - Как победить HDD SATA если есть дрова но не FDD..... Hammer Head Накопители (SSD, HDD, USB Flash) 1 12-12-2008 21:55
Как победить bsr.exe? Shahid Защита компьютерных систем 1 09-11-2007 12:43
PStools и нечитаемые символы - как победить? djoniAg Microsoft Windows 2000/XP 0 26-03-2007 08:06




 
Переход