Автор |
Тема: Шрифт (Прочитано 3394 раз) |
|
Seroga

 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
Временно сделал. Фрагмент. for t9=3 to t8 z0=[strip [ged 'ld.'+[intsn t9]]] t0=[strip [dos [ged 'ld.'+[intsn t9]]]] BB=[ch32]+'"'+z1+'\'+z0+'"'+[ch10] * A='N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe"'+BB *printstr A debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^A * *printstr 'N:ENTER:>"C:\Program Files (x86)\AutoIt3\autoit3.exe"'+BB *^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^t0 N:ENTER: endfor Результат выполнения. debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program debug: N:ENTER:>"C:\Program
|
|
Зарегистрирован |
|
|
|
mine-R
  
 compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
Количество форматных вставок (^^^) перед ^^^^^^^^A увеличьте, чтобы хотя бы 200 символов вмещали..
|
|
Зарегистрирован |
|
|
|
Svetlana
Moderator
    

Просмотреть Профиль |
Сообщений: 404
|
Видимо непростая задача. Предлагаю разбить на шаги и я буду выкладывать шаг за шагом - будем переходить из каталога в каталог, смотреть путь, который мы создаем, обсуждать его - пока не дойдем до каталога с файлами. Со стороны Serega ожидаю отчет о результатах выполнения, что он видит и как понял. Ну а коллег приглашаю помогать Serega, готов?
|
|
Зарегистрирован |
|
|
|
Seroga

 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
Я тут стал пробовать клиента менять, сейчас у меня стоит Clw32-230408.exe. t0=[strip [dos [ged 'ld.'+[intsn t9]]]] Начиная с "os" и до конца строки зачеркнуто, ранее такого не было. Извиняюсь за короткую строку для переменной. Сейчас она 232 символа. Результат выполнения: debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\calculator.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\COM" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\count-do.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\count-for.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\count-while.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\functions.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\GUI" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\Helpfile" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\inputbox.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\msgbox.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\notepad1.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\notepad2.au3" debug: N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files (x86)\AutoIt3\Examples\_ReadMe_.txt"
|
|
Зарегистрирован |
|
|
|
mine-R
  
 compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
Клиент может зачеркивать некоторые функции. Главное чтобы однопользовательская версия не зачеркивала. Code: for t9=3 to t8 z0=[strip [ged 'ld.'+[intsn t9]]] t0=[strip [dos [ged 'ld.'+[intsn t9]]]] BB=[ch32]+'"'+z1+'\'+z0+'"'+[ch10] * A='N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe"'+BB printstr A *debug: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^A * *printstr 'N:ENTER:>"C:\Program Files (x86)\AutoIt3\autoit3.exe"'+BB ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^t0 N:ENTER: endfor |
| Если закрыть звездочками отладочную debug и открыть printstr A и ^^^t0 то при условии, что по указанному пути действительно установлен Гугл-Хром, не вижу причин для неоткрытия например текстового файла _ReadMe_.txt
|
« Изменён в : 06.02.21 в 16:31:17 пользователем: mine-R » |
Зарегистрирован |
|
|
|
Seroga

 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
Да, Хром есть. Но тхт файл не открывает. В своем пути к открываемому файлу оставил только цифры и пробелы. Не открывает. Ошибка: име файла или путь указаны не правильно. Это сообщение кто выдает ФбП или ....?
|
« Изменён в : 07.02.21 в 08:45:42 пользователем: Seroga » |
Зарегистрирован |
|
|
|
Seroga

 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
Готов к чему? Стать заслуженным программистом России. Не вопрос.
|
|
Зарегистрирован |
|
|
|
mine-R
  
 compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
Поставил Хром, перепроверил вручную. A='N:ENTER:>"C:\Program Files(x86)\Google\Chrome\Application\chrome.exe"'+BB Там где красное, у вас не хватает пробела. (Между s и открывающейся скобкой) Добавил пробел - txt открылся.
|
« Изменён в : 06.02.21 в 20:42:35 пользователем: mine-R » |
Зарегистрирован |
|
|
|
Svetlana
Moderator
    

Просмотреть Профиль |
Сообщений: 404
|
on 06.02.21 в 20:12:58, Seroga wrote:Готов к чему? Стать заслуженным программистом России. Не вопрос. |
| on 06.02.21 в 09:27:20, Seroga wrote:Для чистоты эксперимента интересующий нас фрагмент программы (файла) вынес в отдельный файл. Полный путь к открываемому файлу. d:\DOGOVOR\4028041029\2017\170129-01 13 279 292-94 ОАО Селенгинский ЦКК\170129-01 00 7 979 292-94 Дог 05с.pdf |
| Вот предлагаю вернуться к твоему исходному техзаданию и по шагам разбираться. Ты ведь изначально ставил задачу перехода из каталога в каталог и выбор, а уж потом просмотр файла. Ну вот так и будем. Шаг 1. Создай новый файл *.rpt и в нем будем вести опыты, например, '!!003.rpt' (символы !! помогут этому файлу стать первыми в списке меню 'Формы на клиенте'). Скопируй в файл !!003.rpt текст: * q1='610000001' A=[im 'Варианты','1','2','3','4'] * if A=1 q1='610000001' [ia 61] j1='D:\DOGOVOR\' * CC=j1+'*.*' CC: ^^^^^^^^^^^^^^^^^^^^^^^CC начало формирования пути loaddir CC for i=3 to [ged 'ld.N'] a=[ged 'ld.'+[intsn i]] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^a endfor * [sed 'ld.N',0] * endif Что делает этот фрагмент: мы должны зайти в каталог j1='D:\DOGOVOR\' и увидеть его содержимое. Распечатка переменной CC покажет тебе на экране какой путь сформировался на этом этапе. Вот пожалуйста, скажи нам - что у тебе получилось, что в этом фрагменте непонятно. На следующем шаге будем заходить в следующий каталог.
|
|
Зарегистрирован |
|
|
|
Seroga

 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
Благодарю всех, кто помогал, особенно Минера. Ну, что сказать … разминировал, правда. Приношу всем извинения, за свой косяк. У Светланы было (в изначальном, написанном для меня примере) …\Program Files\Google\Chrome … у меня Хром был в другом месте …\Program Files (x86)\Google …, я не заметил пробел пред скобкой (х86). Изправил ошибку, чуть изменил под себя, окончательно доделаю чуть позже. Все прекрасно работает. Открывает все, что нужно. Светлана, … благодарю. Правда, есть еще один вопрос. К базе (ФбП) можно добраться (удаленка) без статичных IP адресов и т.п., как-то попроще? Программка на флешке, и из любой точки с интернетом подключился.
|
|
Зарегистрирован |
|
|
|
BBBB
 
 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 89
|
Кажется, мастер-класс не будет иметь продолжения .. а у меня нарисовался впрос. А как работать с такими длинными именами каталогов и именами файлов: .... 170129-01 13 279 292-94 ОАО Селенгинский ЦКК\170129-01 00 7 979 292-94 Дог 05с.pdf .... Какие передавать в качестве аргумента?
|
|
Зарегистрирован |
|
|
|
mine-R
  
 compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
on 07.02.21 в 14:01:12, Seroga wrote:. . . Правда, есть еще один вопрос. К базе (ФбП) можно добраться (удаленка) без статичных IP адресов и т.п., как-то попроще? Программка на флешке, и из любой точки с интернетом подключился. |
| Где-то уже обсуждалось тут. TeamViewer.. AeroAdmin... Либо же.. без статичных или белых IP, псевдо VPN поднимать с помощью каких-нибудь hamachi, либо же организовывать каталог обмена на сетевом webdav-диске.. Но скорости работы при таких подходах можно будет смело помахать платочком. on 07.02.21 в 16:32:26, BBBB wrote:Кажется, мастер-класс не будет иметь продолжения .. а у меня нарисовался впрос. А как работать с такими длинными именами каталогов и именами файлов: .... 170129-01 13 279 292-94 ОАО Селенгинский ЦКК\170129-01 00 7 979 292-94 Дог 05с.pdf .... Какие передавать в качестве аргумента? |
| Ну как фантазия позволит. Заносить в переменную в EXTRD, и передавать в качестве аргумента имя этой переменной. Либо, опять же, если надолго пути и имена файлов заносятся а не разово, субсчет создать и в [n2 xx] занести.. А [n1 xx] (код субсчета) гонять как аргумент.
|
« Изменён в : 07.02.21 в 17:14:25 пользователем: mine-R » |
Зарегистрирован |
|
|
|
Svetlana
Moderator
    

Просмотреть Профиль |
Сообщений: 404
|
А я хочу предложить еще один вариант: перейти от длинных имен каталогов и файлов к коротким (это возможность операционной системы). Короткое имя содержит 6 первых символов от имени плюс символ 'тильда' и плюс '1'. И тогда при формировании пути к файлу если встретилось слишком длинное имя - заменять его на короткое (8 символов). И при подходе к последнему каталогу, где лежат *.pdf у нас должен собраться путь: D:\DOGOVOR\402804~1\2017\170129~1\*.* файлы: 170129-01 00 7 979 292-94 Договор05с.pdf корректировка.pdf И ИТОГОВАЯ строка после выбора файла на просмотр выглядела бы так: D:\DOGOVOR\402804~1\2017\170129~1\170129~1.pdf Также на короткие имена можно заменить и путь к программе, которая будет использована для просмотра *.pdf, например: .... .... a=[ged 'ld.'+[intsn i]] ae=[cp a,1,6]+[ch 126]+'1'+'.pdf' BB=[ch 32]+j1+FF+'\'+PP+'\'+H1+'\'+ae+[ch 10] printstr 'N:ENTER:>"C:\Progra~1\Google\Chrome\Applic~1\chrome.exe"'+BB Экономно и боремся с пробелами в имени
|
|
Зарегистрирован |
|
|
|
Seroga

 Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 40
|
Звезду дали ... надо отрабатывать ... Для ВВВВ. "А как работать с такими длинными именами каталогов и именами файлов: ..." Конечно, желательно знать изначальную задачу. Что значит, как с ними работать? А что именно с ними надо делать или что предполагается делать? Если вопрос касается сохранения, то сохраняй так, что бы в дальнейшем было удобно пользоваться. Разбей их на части: имена каталогов и имена файлов. Сложить их всегда можно. ... А затем снова разбить на нужную длину, тоже всегда можно. У меня, например, база документов (соотведственно и имена файлов) рассчитана на пользователей, которые с компьютерами и программами не на ВЫ, а на ОНО. И вот, что бы они смогли в ручную в базе найти нужное, и наименование разделов (папок), и наименования файлов должны в этом помогать. Поэтому имена длинные. Если они предпочитают искать в ручную, а не с помощью программы. Делать две одинаковые база с разными именами (длинными и короткими) внутри их не разумно. Если ручное не предполагается, то наименования файлов могут быть гораздо короче. Т.е. в этом нет смысла. Как говорят, есть причина и есть ее следствие. Да, чуть не забыл, кому нужно короткое, это к Пронину. С первого предложения, наверное многим будет сразу понятно, что этого они не смогут сделать. А он будет рассказывать, как это легко и просто закодировать ВСЕ материальные ценности предприятия (каждую шайбу, каждую гайку), с численностью от 1000 человек, ... в 9 (Девяти) символах, т.е. обозначение субсчета. Он еще кодировку автоматизировал. Сейчас он наверное ушел еще дальше ...
|
« Изменён в : 09.02.21 в 20:47:17 пользователем: Seroga » |
Зарегистрирован |
|
|
|
Svetlana
Moderator
    

Просмотреть Профиль |
Сообщений: 404
|
on 09.02.21 в 20:04:17, Seroga wrote:Звезду дали ... надо отрабатывать ... Для ВВВВ. "А как работать с такими длинными именами каталогов и именами файлов: ..." Конечно, желательно знать изначальную задачу. Что значит, как с ними работать? А что именно с ними надо делать или что предполагается делать? Если вопрос касается сохранения, то сохраняй так, что бы в дальнейшем было удобно пользоваться. Разбей их на части: имена каталогов и имена файлов. Сложить их всегда можно. ... А затем снова разбить на нужную длину, тоже всегда можно. У меня, например, база документов (соотведственно и имена файлов) рассчитана на пользователей, которые с компьютерами и программами не на ВЫ, а на ОНО. И вот, что бы они смогли в ручную в базе найти нужное, и наименование разделов (папок), и наименования файлов должны в этом помогать. Поэтому имена длинные. Если они предпочитают искать в ручную, а не с помощью программы. Делать две одинаковые база с разными именами (длинными и короткими) внутри их не разумно. Если ручное не предполагается, то наименования файлов могут быть гораздо короче. Т.е. в этом нет смысла. Как говорят, есть причина и есть ее следствие. Да, чуть не забыл, кому нужно короткое, это к Пронину. С первого предложения, наверное многим будет сразу понятно, что этого они не смогут сделать. А он будет рассказывать, как это легко и просто закодировать ВСЕ материальные ценности предприятия (каждую шайбу, каждую гайку), с численностью от 1000 человек, ... в 9 (Девяти) символах, т.е. обозначение субсчета. Он еще кодировку автоматизировал. Сейчас он наверное ушел еще дальше ... |
| Вопрос ведь касался о том, как передать аргументы в директиве серверу ФБП, а не о том, что не следует заводить длинные имена папок и файлов. Не нужно создавать и дублирующих каталогов - один с длинными именами, а другой с короткими. Длинное и короткое имя - это синонимы, то есть, ты создаешь каталоги с длинными именами, а windows присваивает им короткие имена. Почему этим не воспользоваться? Кстати, если на компе стоит FAR - можно открыть его и при Ctrl+N перейти в режим просмотра коротких имен. Никто не заставляет так делать, но при программировании короткие имена удобны. И видимо и А.Пронин разработал себе систему кодирования - обозначение субсчета это короткое имя (9 символов), а наименование (100 символов) - длинное. Да и не только он использует этот вариант.
|
|
Зарегистрирован |
|
|
|
|
|