Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / То ли Шелл чудит, то ли проект / 7 сообщений из 7, страница 1 из 1
02.05.2013, 17:15
    #38246703
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
Здравствуйте, из Ворда по нажатию на поле запускаю команду
Shell "D:\РабочаяПапка\000.exe, vbNormalFocus"
файл и папка по указанному пути на месте
код скомпилированного файла 000.exe:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
'Public - для видимости во всём проекте
Public ObjectWord As Object
Public ObjectOpenWord As Object
Sub Main()
    Set ObjectWord = GetObject(, "Word.Application")
    Set ObjectOpenWord = ObjectWord.ActiveDocument
    'отключаем дёргание экрана при выполнении кода
    ObjectWord.ScreenUpdating = False
        If ObjectOpenWord.Selection.Fields.Count = 1 Then
        'код выделенного поля
        MsgBox$ Trim$(ObjectOpenWord.Selection.Fields(1).Code)
        'номер выделенного поля в документе по порядку
        MsgBox$ ObjectOpenWord.Selection.Fields(1).Index
        'результат выделенного поля
        MsgBox$ Trim$(ObjectOpenWord.Selection.Fields(1).Result)
        End If
     'отменяем отключенное ранее дёргание экрана при выполнении кода
    ObjectWord.ScreenUpdating = True
    'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для создания этого объекта
    Set ObjectWord = Nothing
    Set ObjectOpenWord = Nothing
End Sub


и тишина....
Что за ересь?
...
Рейтинг: 0 / 0
02.05.2013, 17:36
    #38246714
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
Вообще-то Selection - свойство приложения или окна, а не документа.
Попробуй

Код: vbnet
1.
If ObjectWord.Selection.Fields.Count = 1 Then


и т.п.
...
Рейтинг: 0 / 0
02.05.2013, 17:59
    #38246732
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
Казанский,
увы и ах - тишина
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
'Public - для видимости во всём проекте
Public ObjectWord As Object
'Public ObjectOpenWord As Object
Sub Main()
    Set ObjectWord = GetObject(, "Word.Application")
    'Set ObjectOpenWord = ObjectWord.ActiveDocument
    'отключаем дёргание экрана при выполнении кода
    ObjectWord.ScreenUpdating = False
	'Selection - свойство приложения или окна, но не документа
        If ObjectWord.Selection.Fields.Count = 1 Then
        'код выделенного поля
        MsgBox$ Trim$(ObjectWord.Selection.Fields(1).Code)
        'номер выделенного поля в документе по порядку
        MsgBox$ ObjectWord.Selection.Fields(1).Index
        'результат выделенного поля
        MsgBox$ Trim$(ObjectWord.Selection.Fields(1).Result)
        End If
     'отменяем отключенное ранее дёргание экрана при выполнении кода
    ObjectWord.ScreenUpdating = True
    'установка объекта в значение Nothing требуется для освобождения памяти, которая была выделена для создания этого объекта
    Set ObjectWord = Nothing
    'Set ObjectOpenWord = Nothing
End Sub
...
Рейтинг: 0 / 0
02.05.2013, 19:42
    #38246791
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
катастрофаShell "D:\РабочаяПапка\000.exe, vbNormalFocus"
Кавычки переставьте чтобы был верный путь
...
Рейтинг: 0 / 0
02.05.2013, 19:51
    #38246798
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
VSVLAD, спасибо
Shell "D:\РабочаяПапка\000.exe", vbNormalFocus - я в шоке, как же оно раньше работало??????
...
Рейтинг: 0 / 0
02.05.2013, 20:15
    #38246811
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
катастрофа,

Всё что после пути к файлу, т.е. после "ехе" просто передавалось как параметры командной строки. Это если перед запятой стоял бы 1 пробел хотя бы.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
23.05.2014, 13:41
    #38650237
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
То ли Шелл чудит, то ли проект
вдогонку к соседней теме
как же правильней
Код: vbnet
1.
Shell "D:\РабочаяПапка\000.exe", vbNormalFocus


или
Код: vbnet
1.
Shell.Run "D:\РабочаяПапка\000.exe", vbNormalFocus
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / То ли Шелл чудит, то ли проект / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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