Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ShellExecute в Win7 
:(
    Опции темы
Vetlblya
Дата 9.6.2010, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



Программа работала нормально под 32-разрядные XP и  Vista. Попробовал на 64-разрядной семерке и ShellEcexute отказалась работать. не запускается и не ругается. Может кто сталкивался с такой проблемой, какие методы решения возможны?

Запускаю WebMony:
Код

ShellExecute(0, nil, pchar('wmk:payto?Purse='R123456789123'&Amount='100'&Desc='Perevod sredstv'&BringToFront=Y'), '', '', SW_SHOW);

Delphi7

Это сообщение отредактировал(а) Vetlblya - 9.6.2010, 20:57
PM MAIL   Вверх
RomanEEP
Дата 9.6.2010, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 424
Регистрация: 18.5.2006
Где: Коломна

Репутация: нет
Всего: 8



Какой код ошибки возращает?
PM MAIL   Вверх
dvamaster
Дата 10.6.2010, 08:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 559
Регистрация: 30.6.2004
Где: Россия : Курган

Репутация: 2
Всего: 10



попробуй добавить операцию open

Код

ShellExecute(0, 'open', pchar('wmk:payto?Purse='R123456789123'&Amount='100'&Desc='Perevod sredstv'&BringToFront=Y'), '', '', SW_SHOW);



--------------------
Хорошую информацию трудно добыть. Сделать с ней что-нибудь - еще труднее. /L. Skywalker/

Что же я сделал не так? /Король Лир/

Я делаю это для твоего же блага! /Любой родитель и палач/

PKUNZIP.ZIP /неизвестный/
PM MAIL WWW ICQ   Вверх
Vetlblya
Дата 10.6.2010, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



Цитата(dvamaster @ 10.6.2010,  08:17)
попробуй добавить операцию open

Код

ShellExecute(0, 'open', pchar('wmk:payto?Purse='R123456789123'&Amount='100'&Desc='Perevod sredstv'&BringToFront=Y'), '', '', SW_SHOW);

пробовал с Open. результат тот же.

код на 32-разрядной - 42, на 64-разрядной - 42. 


PM MAIL   Вверх
Vetlblya
Дата 10.6.2010, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



в нескольких источниках встречал подобную ошибку. в некоторых говорили про права доступа, но решения не давали. какие права и как надо назначить программе?


Это сообщение отредактировал(а) Vetlblya - 10.6.2010, 09:01
PM MAIL   Вверх
dvamaster
Дата 10.6.2010, 09:06 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 559
Регистрация: 30.6.2004
Где: Россия : Курган

Репутация: 2
Всего: 10



Цитата(Vetlblya @  10.6.2010,  11:29 Найти цитируемый пост)
код на 32-разрядной - 42, на 64-разрядной - 42. 


в заголовках нет такой ошибки  smile 

в МСДН нашел такое

http://msdn.microsoft.com/en-us/library/bb762153(VS.85).aspx

в ремарках

Цитата
Because ShellExecute can delegate execution to Shell extensions (data sources, context menu handlers, verb implementations) that are activated using Component Object Model (COM), COM should be initialized before ShellExecute is called. Some Shell extensions require the COM single-threaded apartment (STA) type. In that case, COM should be initialized as shown here:


Код

CoInitializeEx(nil, COINIT_APARTMENTTHREADED or COINIT_DISABLE_OLE1DDE);



--------------------
Хорошую информацию трудно добыть. Сделать с ней что-нибудь - еще труднее. /L. Skywalker/

Что же я сделал не так? /Король Лир/

Я делаю это для твоего же блага! /Любой родитель и палач/

PKUNZIP.ZIP /неизвестный/
PM MAIL WWW ICQ   Вверх
Vetlblya
Дата 10.6.2010, 09:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



Цитата(dvamaster @  10.6.2010,  09:06 Найти цитируемый пост)
Цитата(Vetlblya @  10.6.2010,  11:29 Найти цитируемый пост)
код на 32-разрядной - 42, на 64-разрядной - 42. 


в заголовках нет такой ошибки  smile 


может потому что это не ошибка, а ответ на нормальное выполнение ShellExecute.





PM MAIL   Вверх
CodeMonkey
Дата 10.6.2010, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 16
Всего: 89



Цитата(Vetlblya @  10.6.2010,  10:26 Найти цитируемый пост)
может потому что это не ошибка, а ответ на нормальное выполнение ShellExecute.

Вам только что сказали, что вы не вызвали CoInitialize(Ex).


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Vetlblya
Дата 10.6.2010, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



Цитата(CodeMonkey @ 10.6.2010,  12:33)
Цитата(Vetlblya @  10.6.2010,  10:26 Найти цитируемый пост)
может потому что это не ошибка, а ответ на нормальное выполнение ShellExecute.

Вам только что сказали, что вы не вызвали CoInitialize(Ex).

как оно вызывается-то? smile 
PM MAIL   Вверх
Vetlblya
Дата 10.6.2010, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



вообще у кого-нибудь ShellExecute на 64х битных работала? если работала на какой делфе писали?
PM MAIL   Вверх
Rennigth
Дата 10.6.2010, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 8
Всего: 76



Цитата(Vetlblya @  10.6.2010,  13:26 Найти цитируемый пост)
как оно вызывается-то? 

Обычно в Initialization


--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
Демо
Дата 10.6.2010, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 3.11.2005

Репутация: 6
Всего: 50



Цитата(Vetlblya @  10.6.2010,  13:54 Найти цитируемый пост)
вообще у кого-нибудь ShellExecute на 64х битных работала? если работала на какой делфе писали?


У меня прекрасно работает в W7 x64.

Это сообщение отредактировал(а) Демо - 10.6.2010, 14:14


--------------------
    
PM MAIL ICQ Skype   Вверх
Vetlblya
Дата 10.6.2010, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



Цитата(Rennigth @ 10.6.2010,  14:10)
Цитата(Vetlblya @  10.6.2010,  13:26 Найти цитируемый пост)
как оно вызывается-то? 

Обычно в Initialization

уже голова пухнет, можно более конкретный пример? 
PM MAIL   Вверх
CodeMonkey
Дата 10.6.2010, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 16
Всего: 89



Цитата(Vetlblya @  10.6.2010,  15:35 Найти цитируемый пост)
можно более конкретный пример?  

Можно


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Vetlblya
Дата 11.6.2010, 18:14 (ссылка)    | (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 65
Регистрация: 3.6.2009

Репутация: нет
Всего: нет



Цитата(CodeMonkey @ 10.6.2010,  17:47)
Цитата(Vetlblya @  10.6.2010,  15:35 Найти цитируемый пост)
можно более конкретный пример?  

Можно

чтоб тебе так в больнице помогали
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0675 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.