Имя: Пароль:
1C
1С v8
Аналог окна Диалог = Новый ДиалогВыбораФайла(Режим)
,
0 TheMask
 
13.11.13
10:04
Конфигурация написана под web-интерфейс, используется расширение работы с файлами, где используется одна единственная фишка из этого расширения, а именно диалоговое окно выбора файла:
    Новый ДиалогВыбораФайла(Режим)
Вопрос: кто-нибудь сталкивался с внешней обработкой для выполнения функций этого самого диалогового окна  или   можно как-нибудь реализовать с помощью ActiveX, COM или WSH.
Просто конфигурацией будет пользоватся большое количество народу (у всех практически нет админских прав) и всем при установке ставить РасширениеРаботысФайлами накладно получается  (((
Кто сталкивался подскажите
1 Wobland
 
13.11.13
10:05
ну делал я под веб загрузку файлов. диалогом и делал
2 Ork
 
13.11.13
10:15
(0) "будет пользоватся большое количество народу"
Если у всего "большое количество народу" будет винда - можно пользовать видовый CommonDlg. Будет выбор файла в стиле проводника.
3 TheMask
 
13.11.13
10:18
>можно пользовать видовый CommonDlg
кусок кода если можно?
4 Ork
 
13.11.13
10:25
Диалог = Новый COMОбъект("MSComDlg.CommonDialog");
Диалог.ShowOpen();
ИмяФайла = Диалог.FileName;

Правда перед ShowOpen() нужно еще несколько флагов установить. Как то : начальный каталог, множественный выбор, расширение по умолчанию ...
5 TheMask
 
13.11.13
10:37
>Диалог.ShowOpen();

Неизвестная ошибка: The common dialog function failed during initialization. This error often occurs when insufficient memory is available
6 TheMask
 
13.11.13
10:38
памяти вроде еще хватает((
7 Ork
 
13.11.13
10:43
(5) Эттта да. Только что сам проверил. Та же ошибка.

Отработало так :
В обычной форме "вставить ActiveX" - > "Microsoft Common Dialo Control".
Имя - "ЭлементУправления1"
Видимость - галочка снята.
По нажатию кнопки такой код :

Процедура КнопкаВыполнитьНажатие(Кнопка)
    ЭлементыФормы.ЭлементУправления1.ShowOpen();
КонецПроцедуры
8 Ненавижу 1С
 
гуру
13.11.13
10:44
Диалог = Новый COMОбъект("MSComDlg.CommonDialog");
Диалог.InitDir="C:\";
Диалог.MaxFileSize = 256;
Диалог.ShowOpen();
ИмяФайла = Диалог.FileName;
Сообщить(ИмяФайла);
9 TheMask
 
13.11.13
10:49
спасибо Ork и Ненавижу 1С ))) все работает))
10 Ork
 
13.11.13
10:50
+(7) Также нормально отработало ShowPrinter()
А вот ShowFont() выдал ошибку типа "шрифты не установлены. пользуйте панель управления..." на WS2003.
11 Ork
 
13.11.13
10:55
В варианте
Диалог = Новый COMОбъект("MSComDlg.CommonDialog");
обязательно указание
Диалог.MaxFileSize = 256;
непонятно, с чем связано... Видимо конструктор не устанавливает его "по умолчанию".