Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 4698
Рейтинг: 426
#1: 2009-11-12 15:31:28 ЛС | профиль | цитата
Вот написал генератор запросов к hiasm.db, чтобы сохранять настройки после обновления, его действие очень простое:
1. Ставим в HiAsm нужные вам настройки.
2. Выходим из HiAsm и запускаем эту программу
3. Вводим путь к hiasm.db, жмем open и нажимаем create you base
4. Затем после обновления HiAsm, запускаем эту программу снова, открываем базу(или пользуемся уже открытой, если она была открыта), выделяем флажки на нужных значениях, жмем Insert you values и Save table.
5. Все
code_15635.txt
------------ Дoбавленo в 15.36:
Забыл отметить, все ваши значения сохраняются в файле MyValues.txt, он используется при Insert you values
карма: 10
0
файлы: 1code_15635.txt [6.7KB] [136]
Ответов: 16884
Рейтинг: 1239
#2: 2009-11-12 18:47:00 ЛС | профиль | цитата
И только ?

SELECT * FROM params
А еще, к примеру, и настройки компиляторов. Меня например достает и "E:Lang...." и "C:.......Delphi 7...."
И еще много другого...

Думай дальше

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 4698
Рейтинг: 426
#3: 2009-11-12 19:11:13 ЛС | профиль | цитата
Tad, поэтому-то выложил не в "Схемы"
карма: 10
0
Ответов: 16884
Рейтинг: 1239
#4: 2009-11-13 18:10:51 ЛС | профиль | цитата
Кто ещё подскажет: в каких таблицах могут быть индивидуальные настройки ?
У меня
Localization
Compilers
Params

Есть идея создать Настоящий Автоматический Менеджер Обновлений , который бы в фоне подготавливал обновления и среды и пакетов, выбрасывал табличку - "Обновления для HiAsm готовы. Установить ?" с двумя кнопками "Сейчас" и "Потом" и т. д.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Администрация
Ответов: 15295
Рейтинг: 1519
#5: 2009-11-13 18:35:03 ЛС | профиль | цитата
настоящий это тот, который еще и с SVN стянет все изменения для установленных пакетов
карма: 27
0
Ответов: 8930
Рейтинг: 823
#6: 2009-11-13 18:49:14 ЛС | профиль | цитата
Tad,
Tad писал(а):
с двумя кнопками "Сейчас" и "Потом" и т. д.
"и т. д." - имеется ввиду третья кнопка "Или ну её на ..." (После нескольких обновлений с проблемами, я нажимаю именно третью кнопку и, при необходимости, ручками стягиваю с SVN нужные компоненты )
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#7: 2009-11-13 19:10:58 ЛС | профиль | цитата
Dilma писал(а):
настоящий это тот, который еще и с SVN стянет
Ага.
Tad писал(а):
который бы в фоне подготавливал обновления и среды и пакетов
(SVN) и все это установит.
Пока только не знаю, как автоматом закрыть HiAsm с сохранением всех открытых проектов.
------------ Дoбавленo в 19.19:
Леонид, во всяком случае от обновления "нулевыми" файлами защита должна быть.
И в настройках должен быть пункт "Автообновление" = "Добавить в Автозагрузку", "Не добавлять"
И ОТКАТ на дату - тоже.
------------ Дoбавленo в 19.21:
И делать на HiAsm или Delphi
------------ Дoбавленo в 19.21:

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Главный модератор
Ответов: 2999
Рейтинг: 396
#8: 2009-11-13 19:39:13 ЛС | профиль | цитата
У Adobe это красиво реализовано. Его приложения предоставляют доступ к своим функциям в виде некоего API с интерфейсом на скриптовых языках. Например, на платформе Windows - это VBScript и JScript, а на MacOSX - это AppleScript и JScript. Выглядит это так:
AppleScript

--Hello World
tell application "Adobe InDesign CS2"
--Create a new document and assign its
--identity to the variable "myDocument"
set myDocument to make document
tell myDocument
--Create a new text frame on the first page.
tell page 1
set myTextFrame to make text frame
--Change the size of the text frame.
set geometric bounds of myTextFrame to {"0p0", "0p0", "18p0", "18p0"}
--Enter text in the text frame.
set contents of myTextFrame to "Hello World!"
end tell
end tell
end tell
VBScript

Rem Hello World
Set myInDesign = CreateObject("InDesign.Application.CS2")
Rem Create a new document.
Set myDocument = myInDesign.Documents.Add
Rem Get a reference to the first page.
Set myPage = myDocument.Pages.Item(1)
Rem Create a text frame.
Set myTextFrame = myDocument.TextFrames.Add
Rem Specify the size and shape of the text frame.
myTextFrame.GeometricBounds = Array("0p0", "0p0", "18p0", "18p0")
Rem Enter text in the text frame.
myTextFrame.Contents = "Hello World!"
JScript

//Hello World!
var myDocument = app.documents.add();
with(myDocument){
var myPage = myDocument.pages.item(0);
with(myPage){
//Create a new text frame and assign it to the variable "myTextFrame"
var myTextFrame = textFrames.add();
//Specify the size and shape of the text frame.
myTextFrame.geometricBounds = [ "0p0", "0p0", "18p0", "18p0"];
//Enter text in the text frame.
myTextFrame.contents = "Hello World!"
}
}

Так вот, с помощью этого API можно не только "открыть/закрыть", но и очень даже ничего себе автоматизация получается. Многие рутинные вещи вешаются на горячие клавиши запуска своих скриптов и только в путь.
карма: 6
Дорогу осилит идущий. Install/Update HiAsm.NET
0
Разработчик
Ответов: 4698
Рейтинг: 426
#9: 2009-11-14 12:57:31 ЛС | профиль | цитата
Tad писал(а):
Есть идея создать Настоящий Автоматический Менеджер Обновлений , который бы в фоне подготавливал обновления и среды и пакетов, выбрасывал табличку - "Обновления для HiAsm готовы. Установить ?" с двумя кнопками "Сейчас" и "Потом" и т. д.

Делаю что-то подобное, только не в фоне и пока без SVN.
------------ Дoбавленo в 12.58:
Только там есть нестандартные компоненты, неудобно целую кучу связей сразу на мультик помещать срочно требуется кабель
карма: 10
0
Разработчик
Ответов: 26164
Рейтинг: 2127
#10: 2009-11-14 13:08:55 ЛС | профиль | цитата
Assasin, давай-ка, все таки, на стандартных делай. Мне, например, нет никакого желания ставить доп компоненты, да и другим тоже, как мне кажется
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#11: 2009-11-14 13:10:36 ЛС | профиль | цитата
Assasin писал(а):
Делаю что-то подобное, только не в фоне и пока без SVN.
Без SVN и в фоне nesco сделал. Осталось только к нему добавить восстановление своих настроек из предыдущего, сохраненного в папке бекап (nesco, поправь), оригинального hiasm.db.
Assasin писал(а):
Только там есть нестандартные компоненты
нестандартных ненадо. То что нестандартное лучше оформлять в IC (ИМХО)
------------ Дoбавленo в 13.12:
nesco, напомни где лежит твой вариант или ссылочку
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26164
Рейтинг: 2127
#12: 2009-11-14 13:12:25 ЛС | профиль | цитата
Tad писал(а):
nesco, поправь

Ну, наверне -- не поправь, а добавь. Я делаю проще, я hiasm.db вырезаю перед обновлением (двойным кликом). Но система обновлений не полностью автоматическая, а полуавтоматическая -- последнее слово за вами
------------ Дoбавленo в 13.13:
Tad писал(а):
напомни где лежит твой вариант

В публикаторе -- VHiUpdate называется. Но учти, я его регулярно подправляю при обнаружении багов и неточностей
------------ Дoбавленo в 13.17:
Хотел добавить, что там предусмотрен запуск файла после обновления. Вот туда и надо припихать программу поиска различий и замены hiasm.db. ИМХО. Незчем по-новой изобретать велосипед и потом год его отлаживать
карма: 22

0
Разработчик
Ответов: 4698
Рейтинг: 426
#13: 2009-11-14 13:21:38 ЛС | профиль | цитата
Угу, nesco, я готов доделать свою программу до ума и впихнуть в консоль чтобы твоя программа смогла общаться с моей, или просто потом тебе отдам ее схему, но скажи сначала какие настройки из базы можно или нужно сохранить
карма: 10
0
Ответов: 16884
Рейтинг: 1239
#14: 2009-11-14 13:30:19 ЛС | профиль | цитата
nesco, Именно и хочу использовать для обновления среды твой вариант
Мне представляется такой вариант:
1. При запуске компа тихо садится в трей.
2. При запуске компа или раз в сутки проверяет соединение с Инетом и (тихо) наличие нового на http://hiasm.selfip.net и на SVN
3. Если есть, то подготавливает обновления или даже и обновляет если HiAsm не запущен (нужен совет Dilma, что можно обновить при запущеном HiAsm).
4. Если HiAsm запущен, то выводит сообщение "Обновление для HiAsm готово ! Нужно перезапустить HiAsm."
5. Если HiAsm не запущен - молча обновляет и выдаёт на пару секунд табличку "Выполнено обновление HiAsm"
или что-то в этом роде

Во всяком случае добавлять новые компоненты можно и при работающем HiAsm - они появятся только после перезапуска


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26164
Рейтинг: 2127
#15: 2009-11-14 13:35:01 ЛС | профиль | цитата
Tad, мне так кажется, что полную автоматику в пень
VHiUpdatе прекрасно сообщает и может активизировать окно при наличии обновления, но вот автоматически я этого делать не стал, хотя, и мог бы.
Assasin, внимательно рассмотри насторйки VHiUpdat-a. Там в конце есть -- "запуск по окночанию" и поле настройки имени запускного файла. Вот его и можно использовать для запуска твоей программы обновления базы и пакетов
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)