PDA

Показать полную графическую версию : .: NSIS - все вопросы :. часть 2.


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146

K.A.V.
08-01-2014, 12:16
забыл тебя предупредить »
Забавно это слышать, если учесть то, что я являюсь создателем справочника

Попросите модератора изменить автора темы Справочник по NSIS (http://forum.oszone.net/thread-168287.html) на себя или на Krinkels, удалите меня из авторов, чтобы не нужно было в будущем меня даже информировать об изменениях в справочнике

И удачи вам в развитии справочника, в этой теме я больше не появлюсь

MKN
08-01-2014, 12:26
Ну вот, договорились... Причастные к недоразумению - надо что то срочно делать... :) Жаль не в одном городе живём. Устроили бы рождественскую встречу и всё мирно разрешили.

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)

Во всем документе есть несколько таких мест

K.A.V.
09-01-2014, 19:41
Не нужно горячиться, я лишь хотел сделать как лучше »
Я понимаю, что для вас "Авторское право" - это пустой звук, если вы научились читать, то увидели бы на главной страничке справочника:

Внимание: Применение материалов данного руководства в печатных или электронных изданиях, включая электронные статьи, допустимо только с согласия автора.
Даже Применение разрешено с согласия автора, а вы взяли, внесли в него изменения и выдаёте за "новую версию справочника"
Кто автор справочника? 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., либо кто то еще, более достойный чем я, соберется добавить подсветку в справочник, то пусть пишет в л.с., я скину все свои наработки и расскажу что стоит доделать/исправить.

K.A.V.
09-01-2014, 21:40
Но раз такое отношение »
У меня ко всем одинаковое отношение. Не нужно строить из себя жертву в данной ситуации, то, что вы берёте чужую работу без согласия автора, вносите в неё изменения и выдаёте за "новую версию" - нигде не приветствуется и никто вам за это спасибо не скажет, по крайней мере автор работы, которую вы без его ведома принялись изменять.

я теперь палец о палец не ударю чтоб хоть как то его улучшить или сделать более красивым »
Начнём с того, что Вас об этом никто не просил
Нужно делать всё правильно (возможный вариант развития событий я написал выше в скрытом тексте), а не так, как вы: захотели, сделали и выложили
И вы ещё говорите о "таком отношении", а у меня к Вам какое отношение после этого должно быть, как вы думаете?

Вам будет приятно, если кто-то взломает ваш сайт и изменит на нём оформление по своему вкусу, вбив на главную страницу сайта свой ник и ссылку на свой сайт, при этом сказав, мол, "мне так нравится, смотрите, что я сделал"?

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.

K.A.V.
16-01-2014, 15:25
!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
Всем привет ,существует ли утилита которая создает ассоциации для файлов ?

MKN
18-01-2014, 09:24
существует ли утилита которая создает ассоциации для файлов ? »
для 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 Спасибо

K.A.V.
19-01-2014, 05:22
Возможно ли 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, но все равно интересует сама функция.

K.A.V.
20-01-2014, 15:47
У меня еще один вопросик - нет ли простейшего примера написания на Cpack'e сборки инсталлера NSIS? или NSIS64 ? попытался пошерстить по инету, но более менее путевое нашел только это: »
Я могу подсказать только командам под Win-систему, указанную вами программу услышал впервые в жизни, подсказать ничего не могу по этому вопросу :)

можно вырезать первую букву из $EXEDIR, но все равно интересует сама функция. »
${GetRoot} "C:\Program Files\NSIS" $R0
; $R0="C:"
Не?




© OSzone.net 2001-2012