Показать полную графическую версию : .: NSIS - все вопросы :. часть 2.
забыл тебя предупредить »
Забавно это слышать, если учесть то, что я являюсь создателем справочника
Попросите модератора изменить автора темы Справочник по NSIS (http://forum.oszone.net/thread-168287.html) на себя или на Krinkels, удалите меня из авторов, чтобы не нужно было в будущем меня даже информировать об изменениях в справочнике
И удачи вам в развитии справочника, в этой теме я больше не появлюсь
Ну вот, договорились... Причастные к недоразумению - надо что то срочно делать... :) Жаль не в одном городе живём. Устроили бы рождественскую встречу и всё мирно разрешили.
Krinkels
08-01-2014, 14:54
K.A.V.
Не нужно горячиться, я лишь хотел сделать как лучше. Но если никому мой труд не нужен я могу спокойно все удалить, и отредактировать свой пост, как будто и ничего не было.
kotkovets
08-01-2014, 21:33
как будто и ничего не было »
Устроили бы рождественскую встречу и всё мирно разрешили »
под горячительные напитки :jester:
Kopejkin
09-01-2014, 15:00
...Добавил туда подсветку синтаксиса »
Не везде корректно отображается.
http://savepic.su/4020409m.jpg (http://savepic.su/4020409.htm)
Во всем документе есть несколько таких мест
Не нужно горячиться, я лишь хотел сделать как лучше »
Я понимаю, что для вас "Авторское право" - это пустой звук, если вы научились читать, то увидели бы на главной страничке справочника:
Внимание: Применение материалов данного руководства в печатных или электронных изданиях, включая электронные статьи, допустимо только с согласия автора.
Даже Применение разрешено с согласия автора, а вы взяли, внесли в него изменения и выдаёте за "новую версию справочника"
Кто автор справочника? kotkovets? Он всего-лишь со-автор статей, большого количества статей в справочнике, поэтому я и указал его ник на главной странице справочника, т.к. пока я отдавал долг родине - он дополнял справочник информацией.
Видимо, не нужно на главной странице было указывать никого, кроме себя, чтобы не было проблем с "двойным авторством"
С чего вы вообще решили, что kotkovets главный автор и если он говорит "разрешаю" (допустим, так и было) - то вам разрешено?
Кто автор публикаций новых версий справочника здесь (http://forum.oszone.net/thread-168287.html) и здесь (http://soft.oszone.net/program/9999/Spravochnik_po_NSIS/)?
А то, что вы на свой ник в справочнике установили ссылку на свой сайт, на котором распространяетчся варез - это во-первых нарушение ОПК, во вторых - все ссылки ников должны идти на профили участников на данном форуме.
И вам никто не давал право распространять "вашу новую версию справочника" по сторонним ресурсам, в т.ч. и через ваш варезный сайт, на каком основании это всё сделано? Пропиарить ваш варезник засчет справочника?
---
По пожеланиям к справочнику, есть тема на форуме, почему вы сначала не написали там что-то типа "у меня есть идея, а давайте-ка сделаем подсветку кода!" и посмотрев на ответы читателей справочника все вместе бы решили, а оно нужно вообще?
Зачем нужна подсветка кода на страничках? Подсветка кода, которая работает через раз при открытии страничек (раз открыл - код не читабелен, потому что его просто нет, второй раз открыл - есть), это раз
Два. Зачем нужна подсветка кода при просмотре страничек? Подсветка нужна в редакторе скриптов. Код в текущей версии выделен специально не напрягающей рамкой с содержимым, чтобы не отвлекать своё внимание от текста (скопировал-вставил в свой проект, всё), лично для моих глаз не приятно, т.к. сливается с фоном страницы и всё перемешивается, и текст и "подсветка"
Krinkels
09-01-2014, 20:01
K.A.V.
Справочник удален, и все что с ним связано. Но раз такое отношение, я теперь палец о палец не ударю чтоб хоть как то его улучшить или сделать более красивым.
З.Ы. Если уважаемый K.A.V., либо кто то еще, более достойный чем я, соберется добавить подсветку в справочник, то пусть пишет в л.с., я скину все свои наработки и расскажу что стоит доделать/исправить.
Но раз такое отношение »
У меня ко всем одинаковое отношение. Не нужно строить из себя жертву в данной ситуации, то, что вы берёте чужую работу без согласия автора, вносите в неё изменения и выдаёте за "новую версию" - нигде не приветствуется и никто вам за это спасибо не скажет, по крайней мере автор работы, которую вы без его ведома принялись изменять.
я теперь палец о палец не ударю чтоб хоть как то его улучшить или сделать более красивым »
Начнём с того, что Вас об этом никто не просил
Нужно делать всё правильно (возможный вариант развития событий я написал выше в скрытом тексте), а не так, как вы: захотели, сделали и выложили
И вы ещё говорите о "таком отношении", а у меня к Вам какое отношение после этого должно быть, как вы думаете?
Вам будет приятно, если кто-то взломает ваш сайт и изменит на нём оформление по своему вкусу, вбив на главную страницу сайта свой ник и ссылку на свой сайт, при этом сказав, мол, "мне так нравится, смотрите, что я сделал"?
red_byte
16-01-2014, 14:30
Друзья! Подскажите пожалуйста, есть NSIS скрипт инсталлера, собственно он собирает 32 битный установщик, работает хорошо, все отлично, но тут встал вопрос - нужно пересобрать установщик под х64, ибо 32 битный инсталлер, ставит нужные мне файлы не в system32,а в C:\Windows\SysWoW64. По этому у меня возник вопрос - придется все
заново переписывать, или есть хитрый способ пересобрать готовый скрипт под х64? Какие подводные камни могут встретится на этому пути? пытался пошерстить по сети, но путного мало чего нашел, в основном описываются х32 случаи. Буду рад любой помощи!
Спасибо за внимание.
Ж.Д.А.Л.К.Е.Р.
16-01-2014, 14:50
Читай здесь (http://en.wikipedia.org/wiki/WoW64):
32-bit applications can access %SystemRoot%\System32 through the pseudo directory %SystemRoot%\sysnative.
И почитай (http://blog.differentpla.net/post/38) про PROCESSOR_ARCHITEW6432.
Пример использования PROCESSOR_ARCHITEW6432 в батнике:
@Echo off
If Defined PROCESSOR_ARCHITEW6432 %SystemRoot%\sysnative\cmd.exe /q /k "Call %0" & Exit
Regedit /s "%~dp0WUfix.reg"
Regedit /s "%~dp0Conv2007\WUfix7.reg"
If Exist "%~dp0Setting.reg" Regedit /s "%~dp0Setting.reg"
Cscript "%~dp0Turn_on_updates.vbs" //NoLogo
Exit
В этом примере reg должны быть добавлены в реестр без WoW64 пере адресаций, поэтому If Defined проверяет наличие переменной PROCESSOR_ARCHITEW6432 и запускает все что идет ниже от имени х64 версии cmd.exe.
!include "x64.nsh"
; RunningX64 checks if the installer is running on x64.
;
; ${If} ${RunningX64}
; MessageBox MB_OK "running on x64"
; ${EndIf}
;
; DisableX64FSRedirection disables file system redirection.
; EnableX64FSRedirection enables file system redirection.
;
; SetOutPath $SYSDIR
; ${DisableX64FSRedirection}
; File some.dll # extracts to C:\Windows\System32
; ${EnableX64FSRedirection}
; File some.dll # extracts to C:\Windows\SysWOW64
;
Mafia_forever
17-01-2014, 23:05
Всем привет ,существует ли утилита которая создает ассоциации для файлов ?
существует ли утилита которая создает ассоциации для файлов ? »
для NSIS есть хедер - Assoc.nsh
есть плагин - http://nsis.sourceforge.net/Application_Association_Registration_plug-in
и есть макрос (был в теме )
ну и ессно, прописать нужное, можно вручную.
Но всё это бесполезно в Windows 8 - для уже ассоциированных системой файлов. Ничего путного в NSIS, для ассоциирования файлов в Windows 8, пока не придумано... (Не придумано пользователями NSIS. Разрабы ряда ПО, это дело давно победили. Каким методом - не известно... Возможно посредством экспорта специального XML файла с помощью dism
(типа : dism /Online /Import-DefaultAppAssociations:Z:\$W8i\$W8-Deploy\test.xml ) Про это был раговор на MSFN Forum_е. Не изучал, не знаю... )
Как вариант, в W8 можно задавать ассоциирование файлов "в лоб", когда в реестре сначала удаляются существующие системные связи, а затем создаются вновь с нуля. Этот метод хотя и работает, но явно не правильный...
Mafia_forever
18-01-2014, 11:05
MKN Спасибо
Возможно ли c помощью NSIS, организовать замену в файле, одних байт на другие ? ( Т.е. - заменить в файле по такому то адресу, имеющееся значение - на другое) »
Вот мне припекло, сидел с бубном шаманил сейчас :biggrin:
Вообщем, у меня получилось заменить в файле по hex смещению одни байты на другие, при открытии файла мы не можем открыть его для перезаписи определённых байт, а только добавить, у меня получилось произвести именно замену байт без смещения :tongue:
Вообщем, может кому пригодится, делюсЯ
FileOpen $0 "C:\Users\APTEM\Desktop\123.exe" a
FileSeek $0 "0x0001C6E7" SET ; прыгаем на нужное hex смещение
FileSeek $0 "0x0001C6E7" SET ; прыгаем ещё раз на нужное hex смещение, у вас не глюк, команда дублирована
FileWriteByte $0 "100" ; пишем своё значение
FileClose $0
Пока рылся по инету, где-то видел примеры добавления данных в конец файла с помощью той же команды "FileSeek", решил набросать сюда тоже
Если указанного файла не существует, то он будет создан с этими строками.
FileOpen $0 "C:\Users\APTEM\Desktop\123.exe" a
FileSeek $0 "0" END
FileWrite $0 "$\n$\rЭти строки будут добавлены в конец файла"
FileClose $0
red_byte
20-01-2014, 08:38
!include "x64.nsh"
Цитата:
; RunningX64 checks if the installer is running on x64.
;
; ${If} ${RunningX64}
; MessageBox MB_OK "running on x64"
; ${EndIf}
;
; DisableX64FSRedirection disables file system redirection.
; EnableX64FSRedirection enables file system redirection.
;
; SetOutPath $SYSDIR
; ${DisableX64FSRedirection}
; File some.dll # extracts to C:\Windows\System32
; ${EnableX64FSRedirection}
; File some.dll # extracts to C:\Windows\SysWOW64
; »
Спасибо огромное! Помогло! У меня еще один вопросик - нет ли простейшего примера написания на Cpack'e сборки инсталлера NSIS? или NSIS64 ? попытался пошерстить по инету, но более менее путевое нашел только это:
http://www.cmake.org/Wiki/CMake:CPackPackageGenerators#NSIS
wolkow70
20-01-2014, 11:28
Кто нибудь может подсказать можно ли как-то определить букву логического диска на котором записан сам nsis скрипт? И еще интересует можно ли получить путь к файлу скрипта. В справочнике в GetDrives не нашел такого.
red_byte
20-01-2014, 11:50
Спасибо огромное! Помогло! У меня еще один вопросик - нет ли простейшего примера написания на Cpack'e сборки инсталлера NSIS? или NSIS64 ? попытался пошерстить по инету, но более менее путевое нашел только это:
http://www.cmake.org/Wiki/CMake:CPac...enerators#NSIS »
После небольшой пляски с бубнами накидал такую штуку:
PROJECT(INSTALLER)
INCLUDE(CPack)
INSTALL(PROGRAMS "HelloWorld.bat" DESTINATION "./bin")
SET(CPACK_PACKAGE_NAME "HelloWorldPackage")
SET(CPACK_GENERATOR NSIS64)
SET(CPACK_PACKAGE_VENDOR "Visual Technology Services")
SET(CPACK_PACKAGE_VERSION_MAJOR 1)
SET(CPACK_PACKAGE_VERSION_MINOR 0)
SET(CPACK_PACKAGE_VERSION_PATCH 1)
SET(CPACK_RESOURCE_FILE_LICENSE "License-Full.txt")
SET(CPACK_PACKAGE_FILE_NAME "HelloWorldPackageFileName")
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_NAME}")
SET(CPACK_NSIS_MODIFY_PATH ON)
Под 32х битами все хорошо собирается и создается, но пробую собрать 64битную версию (делаю это так - cpack -G "NSIS64" -C Release) а он мне все равно собирает 32х битный инсталлер, в чем тут кроется причина? где я ошибаюсь? Спасибо, премного благодарен за внимание.
Кто нибудь может подсказать можно ли как-то определить букву логического диска на котором записан сам nsis скрипт? И еще интересует можно ли получить путь к файлу скрипта. В справочнике в GetDrives не нашел такого. »
Насколько я понимаю, можно вернуть путь до скрипта, а потом вырезать букву. Могу покопаться, вроде бы видел где-то нечто похожее.
wolkow70
20-01-2014, 14:12
Насколько я понимаю, можно вернуть путь до скрипта, а потом вырезать букву. Могу покопаться, вроде бы видел где-то нечто похожее. »
Уже подумал, что можно вырезать первую букву из $EXEDIR, но все равно интересует сама функция.
У меня еще один вопросик - нет ли простейшего примера написания на Cpack'e сборки инсталлера NSIS? или NSIS64 ? попытался пошерстить по инету, но более менее путевое нашел только это: »
Я могу подсказать только командам под Win-систему, указанную вами программу услышал впервые в жизни, подсказать ничего не могу по этому вопросу :)
можно вырезать первую букву из $EXEDIR, но все равно интересует сама функция. »
${GetRoot} "C:\Program Files\NSIS" $R0
; $R0="C:"
Не?
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC