![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ShellExecute(Handle,'open',PCHAR(EMAIL),... - EMAIL c пробелами [D7]
TheEd © (2006-03-11 00:30:00)Господа вопрос:
делаю
ShellExecute(GetDesktopWindow,'open',PCHAR(EMail), nil, nil, SW_SHOWMAXIMIZED);
где
EMail = 'mailto: Some Name '
Так вот, если в EMail все пробелы заменить напр. '_', то всё сработает, иначе - обрежет адрес до первого пробела, т.е. до пустого значения, то же с subject'ом...
Подскажите, может пробел кодом какимто прописать надо, напр #32 или &nspb; (последний вариант не работает - проверил).
Спасибо за ответ!
TheEd (2006-03-15 01:30:00) [1]Спасибо всем!!!
помог palva © (11.03.06 17:57) [6]- %20 работает, и AbrosimovA (13.03.06 08:31) [7]тоже помог - заключая всё кроме ключевых слов в кавычки тоже работает!
Спасибо, ребята!
Чапаев (2006-03-13 11:07:00) [2]Хм... Замена пробела на %20 не проходит?
AbrosimovA (2006-03-13 08:31:00) [3]
> Достаточно двойных кавычек:
>
> ShellExecute(0, nil, '"mailto: Some Name <some_adress@mail.
> ru>?Subject=Привет, как дела?"', nil, nil, SW_SHOWNORMAL);
>
Ключевые слова, типа Mailto, Subject, Body и т.д. не должны быть внутри двойных кавычек. Если после 'Mailto:' ставите пробел, то необходимы двойные кавычки, смотрите ниже:
ShellExecute(0, nil, 'mailto: "Some Name <some_adress@mail.
> ru> "?Subject= "Привет, как дела? "', nil, nil, SW_SHOWNORMAL);
palva (2006-03-11 17:57:00) [4]Пробелы можно заменять на %20 и вопросительный знак тоже соответствующим кодом. Но у меня (Windows 2000) работает и с пробелами.
fellix (2006-03-11 13:45:00) [5]Для интереса проверил под Win98 и Win2000 - работает, наоборот, без двойных кавычек.
По идее, это зависит от версии shdocvw.dll, но глубже копать лень. :-)
fellix (2006-03-11 11:44:00) [6]Тогда остается только экспериментировать.
У меня с дв.кавычками ("") работает - Win2003.
TheEd (2006-03-11 04:03:00) [7]
> Достаточно двойных кавычек:
я это первым делом проверил - не работает... :(
fellix (2006-03-11 02:38:00) [8]Достаточно двойных кавычек:
ShellExecute(0, nil, '"mailto: Some Name <some_adress@mail.ru>?Subject=Привет, как дела?"', nil, nil, SW_SHOWNORMAL);
TheEd (2006-03-11 00:33:00) [9]опечатка вверху, EMail читать так:
EMail = 'mailto: Some Name <some_adress@mail.ru > ?Subject=Привет, как дела?'
кстати, последний знак вопроса видимо тоже не сработает, т.к. он используется для склейки параметров. Но этот вопрос не важен, тем не менее кто ответит - тому спасибо!