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

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

ShellExecute и ошибка на NativeUInt


otan ©   (2014-06-11 09:17:00) 

Люди добрые! Подскажите!
Пишу вот такой вот код.

ShellExecute(0, nil,' http://9kumalak.kz',nil,nil,1);
Так тоже пробовал

ShellExecute((Application.Handle,PChar('open'), PChar('9kumalak.kz'), PChar(0), nil, SW_NORMAL) ;
Почему-то при выполнении обоих случаев выдает следующую ошибку

[dcc32 Error] Unit1.pas(1026): E2014 Statement expected, but expression of type 'NativeUInt' found
Не могу понять на что он ругается? Вроде бы я синтаксис функции правильно написал.


MBo   (2014-06-14 14:33:00) [1]

>brother
директива есть, которая разрешает нестрогий синтаксис - использовать функции, как процедуры. Никто её практически никогда не отключает


Германн   (2014-06-14 12:52:00) [2]


> brother ©   (14.06.14 07:53) [15]
>
> это что задиректива?

Хорошо забытое старое
http://docwiki.embarcadero.com/RADStudio/XE6/en/Extended_syntax_%28Delphi%29


brother   (2014-06-14 07:53:00) [3]

это что задиректива? и разве мы не можем использовать функции как процедуры?


Германн   (2014-06-14 02:50:00) [4]


> MBo ©   (12.06.14 13:44) [12]
>
> Может быть, компилятор ждёт, что ShellExecute вернет значение,
>  если вдруг опция расширенного синтаксиса выключена?
>

Кстати да. В новых версиях Дельфи в данном случае возникает именно такое сообщение об ошибке.


Inovet   (2014-06-13 17:37:00) [5]


> [2] Inovet ©   (11.06.14 09:57)
> Удалено модератором
> Примечание: Забаню за неуважение к правилам

Простите, Уважаемый Модератор, не знаю кто, предполагаю. Почему-то до прочтения этого поста я сегодня об этом подумал.


MBo   (2014-06-12 13:44:00) [6]

Может быть, компилятор ждёт, что ShellExecute вернет значение, если вдруг опция расширенного синтаксиса выключена?


Германн   (2014-06-11 14:46:00) [7]

И не в опциях проекта.
Где-то в коде бредовая строка. Тип и величину бреда сказать не видя кода не возможно. :)


Inovet   (2014-06-11 14:29:00) [8]

В опциях проекта что-нибудь натыкано? Сравни опции в рабочем и в нерабочем.


Германн   (2014-06-11 14:25:00) [9]


> Не могу понять на что он ругается? Вроде бы я синтаксис
> функции правильно написал.

Уж во всяком случае не на синтаксис функции. И не в списке uses проблема.


brother   (2014-06-11 13:58:00) [10]

ну и?


otan   (2014-06-11 13:43:00) [11]

brother ©   (11.06.14 11:17) [6]
в нерабочем варианте какому модулю принадлежит ShellExecute ?

ShellApi конечно...


brother   (2014-06-11 11:17:00) [12]

в нерабочем варианте какому модулю принадлежит ShellExecute ?


brother   (2014-06-11 11:08:00) [13]

> И все нормально стало работать.

ну так сравинте uses секции...


otan   (2014-06-11 10:01:00) [14]

Создал проект по новому и написал тот же код. И все нормально стало работать.
А с существующим проектом выдает все ту же ошибку. Непонятно из за чего.
Как теперь быть?
В существующем проекте используются следующие элементы.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, StdCtrls, Vcl.ExtCtrls, Vcl.MPlayer,  Vcl.Buttons, Vcl.Imaging.jpeg,Math,ShellApi,GIFImg;


otan   (2014-06-11 10:01:00) [15]

brother ©   (11.06.14 09:29) [1]
ShellExecute(Application.Handle, 'open', PChar(Url), nil, nil, SW_NORMAL);

Все равно не идет.


Inovet   (2014-06-11 09:57:00) [16]

Удалено модератором
Примечание: Забаню за неуважение к правилам


brother   (2014-06-11 09:29:00) [17]

ShellExecute(Application.Handle, 'open', PChar(Url), nil, nil, SW_NORMAL);


Наверх

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