powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Об управлении MS Outlook
5 сообщений из 5, страница 1 из 1
Об управлении MS Outlook
    #32773841
Galustov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С вопросом кодировки сообщений мне удалось разобраться.
Второй вопрос: как отключить сообщение в MS Outlook, которое в аттачменте приложено? Оно стоит 5 секунд при каждой попытке отправить какое-либо сообщение...

А вдруг всё-таки кто-то это знает :):):):):):) хотя надежды мало...


Спасибо
...
Рейтинг: 0 / 0
Об управлении MS Outlook
    #32773967
Proga
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А кодируешь так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Public Function GO_GO(COMU, CHTO, NCR)
On Error GoTo Err_SUB_SUB
Dim OlApp As Outlook.Application
Dim mail_res As MailItem
Set OlApp = CreateObject("Outlook.Application")
Set mail_res = OlApp.CreateItem(olMailItem)
With mail_res
.Subject = "CR_" & NCR
.To = COMU
.Body = CHTO
.Display
End With

Exit_func:
 Exit Function

Err_SUB_SUB:
If Err = - 2113732605  Then
    Call Shell("Program Files\Microsoft Office\Office\outlook.exe",  1 )
    Set mail_res = OlApp.CreateItem(olMailItem)
    With mail_res
    .Subject = "CR"
    .To = COMU
    .Body = CHTO
    .Display
    End With
Else
    MsgBox Err.Description
    Resume Exit_func
End If

End Function
или по другому, покажи код.
...
Рейтинг: 0 / 0
Об управлении MS Outlook
    #32774599
Galustov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я, честно сказать написал макросок внутри MS Outlook :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
Sub multy_forward()
'пересылает письма на указанные адреса
'и добавляет указанный текст в поле сообщения
Dim myOlApp As New Outlook.Application
Dim myOlExp As Outlook.Explorer
Dim myOlSel As Outlook.Selection

'Dim MsgTxt As String
Dim myOlMail As Outlook.MailItem
Set myOlExp = myOlApp.ActiveExplorer
Set myOlSel = myOlExp.Selection
komu = "Пупкин П.П." 'можно через точку с запятой несколько указать

For Each myOlMail In myOlSel
'MsgBox test_codepage(myOlMail)
If test_codepage(myOlMail) = "20866" Then
        Set myforward = myOlMail.Forward
        str_text = "УПЗМБУПЧБОП" '"согласовано" при koi8-R
        If myOlMail.BodyFormat = olFormatHTML Then
        myforward.HTMLBody = str_text & vbCr & vbCr & vbCr & myOlMail.HTMLBody
        Else
            If myOlMail.BodyFormat = olFormatPlain Then
                str_text = "согласовано" '"согласовано" при windows-1251
                myforward.Body = str_text & vbCr & vbCr & vbCr & myforward.Body
            End If
        End If
        myforward.Recipients.Add komu
        myforward.Send
Else
    If test_codepage(myOlMail) = "1251" Then
            Set myforward = myOlMail.Forward
            str_text = "согласовано" '"согласовано" при windows-1251
        If myOlMail.BodyFormat = olFormatHTML Then
        myforward.HTMLBody = str_text & vbCr & vbCr & vbCr & myOlMail.HTMLBody
        Else
            If myOlMail.BodyFormat = olFormatPlain Then
                myforward.Body = str_text & vbCr & vbCr & vbCr & myforward.Body
            End If
        End If
        myforward.Recipients.Add komu
        myforward.Send
    Else
        MsgBox "Какие-то проблемы с кодировкой сообщения", vbCritical, "Не отправлено"
    End If
End If
Next myOlMail
End Sub


Function test_codepage(ByVal test_myOlMail) As Integer

'попытка определить кодировку исходящих сообщений
Dim myOlApp As New Outlook.Application
Dim myOlExp As Outlook.Explorer
'Dim test_myOlMail As Outlook.MailItem
'Dim myOlSel As Outlook.Selection

Set myOlExp = myOlApp.ActiveExplorer
Set myOlSel = myOlExp.Selection
'1251 - windows
'20866 - koi8-r
    test_codepage = test_myOlMail.InternetCodepage
End Function

...
Рейтинг: 0 / 0
Об управлении MS Outlook
    #32774605
Galustov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прочитал на одном из иностранных сайтов, что фишку с выскакивающим предупреждением, которое стоит 5 секунд никак не обойти...

В связи с этим ставлю задачу целиком: необходимо переслать выбранные письма (одновременно может быть выбрано сколько угодно писем) и затем в тело сообщения добавить вначале слово "согласовано", ниже имеющийся текст сообщения и переслать на определённый адрес.
Все письма идут на один и тот же адрес (точнее на два адреса, которые всегда одни и те же)

Мне удалось сделать всё, кроме отключения этих дурацких предупреждений...
Теперь оказывается их нельзя отключить......

КАК БЫТЬ? Не заставлять же пользователя после каждого сообщения ждать 5 секунд и потом жать "Да"...это 100 сообщений он будет 500 секунд минимум отправлять, да ещё и кнопки давить.
...
Рейтинг: 0 / 0
Об управлении MS Outlook
    #32774831
Galustov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всё, я сделал.
Может и не очень красиво, но зато работает

Просто при формировании объекта myforward (см предыдущий пост) делаю myforward.display и потом sendkeys "^{ENTER}", true (true, чтобы клавиши обработались оутлуком) и всё.
Никакие окошки в таком случае по 5 секунд не висят, а пользователю необходимо один единственный раз дать доступ проге на 10 минут. Думаю, что этого вполне хватит чтобы отправить 100 сообщений, а если не хватит можно снова дать доступ и всё :)

Удачи
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Об управлении MS Outlook
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]