Версия x64

Russian main discussion
  • Author
  • Message
Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Свои 5 коп., раз обо мне 2 раза упомянули:
1. Мои плаги не слушаются настройки языка Акела(не то что-бы специально, просто не делалось), но тем не менее поддерживают локализацию(рус/укр/англ)(кстати, не зависимо от битности): используется язык текущего потока, если таковой установлен(а Акелом он не устанавливается, потому используется язык локализации системы), а если это не один из рус/укр/англ - то тут как система укажет.
3. В Plugsx64 я положил плагин в общем то что-бы не делать копии архивов(так как это орг. момент не оговаривался вообще), если надо - буду ложить как скажете.

ЗЫ: кстати, а под IA64 юзеров не наблюдается случайно?
Last edited by FeyFre on Sun Feb 27, 2011 10:26 am, edited 1 time in total.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

FeyFre
3. Мне симпатичнее вариант с "Plugs64".

ab
Offline
Posts: 9
Joined: Tue Feb 15, 2011 6:19 am

Post by ab »

FeyFre wrote: Не знаете часом какого-нибудь GUI-шного инструмента для работы с CVS? А то TortosieCVS как на зло ничего не умеет, коммандная строка и то лучше. Как посмотреть историю файла я так и не нашел, тем более получить визуальный diff.
был WinCVS. Правда проект похоже заглох лет 5 назад. http://sourceforge.net/projects/cvsgui/files/WinCvs/

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

ab
Спасибо, уже не актуально. С черепахой я немного разобрался и пока доволен.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Такой вопрос..
На Win 7 x64 и этом скрипте:

Code: Select all

'========================   Описание   =====================================
' Циклическое разбиение окна с заданной очерёдностью
' http://akelpad.sourceforge.net/forum/viewtopic.php?p=11012#p11012
'========================  Параметры =====================================
'В параметрах вызова скрипта должен быть прописан один параметр:
' 1 - Переключение горизонтальное --> вертикальное --> четыре части
' 2 - Переключение вертикальное --> горизонтальное --> четыре части
' 3 - Переключение горизонтальное --> четыре части -> вертикальное
' 4 - Переключение вертикальное --> четыре части --> горизонтальное
' 5 - Переключение четыре части --> вертикальное --> горизонтальное
' 6 - Переключение четыре части -- > горизонтальное --> вертикальное
'
' Call("Scripts::Main", 1, "SwitchSplittedWindow.vbs", `"2"`) Icon("%a\AkelFiles\Plugs\ToolBarImage.dll", 632)		'работает по установленному порядку
' Call("Scripts::Main", 1, "SwitchSplittedWindow.vbs", `"4212"`) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 22)		'просто разбивает закладку файла по номеру команды
'
' Автор:            Аверин Андрей & VladSh
' Версия:          1.5 (2011.01.06 - 2011.02.16)
' Mail:               Averin-And@yandex.ru
'===========================================================
Set oSet = AkelPad.ScriptSettings()

If WScript.Arguments.Count < 1 Then
	Param = 1		' если порядок не задан в аргументах, то по умолчанию работает 1-й вариант: гор -> верт -> 4 части
Else
	Param = CInt(WScript.Arguments(0))
End If

If Param <= 6 Then
	Select Case Param
		Case 1
			Call Switch(4214, 4213, 4212)
		Case 2
			Call Switch(4213, 4214, 4212)
		Case 3
			Call Switch(4214, 4212, 4213)
		Case 4
			Call Switch(4213, 4212, 4214)
		Case 5
			Call Switch(4212, 4213, 4214)
		Case 6
			Call Switch(4212, 4214, 4213)
	End Select
Else
	Call SplitWindow(Param)
End If


Sub Switch(n, m, k)
	Do
		Name = GetHandleCurrent()
		
		If Name = 0 Then
			Call SplitWindow(n)
			Call OptionWrite(GetHandleCurrent(), n)
		Else
			l = CInt(OptionRead(Name))
			Select Case l
			Case 0
				l = n
			Case n
				l = m
			Case m
				l = k
			Case k
				Call SplitWindow(4214)
				Call OptionDelete(Name)
				Exit Do
			End Select
			Call SplitWindow(l)
			Call SplitWindow(l)
			Call OptionWrite(Name, l)
		End If
		
		Exit Do
	Loop
	
	Call oSet.End()
End Sub

Function GetHandleCurrent()
	GetHandleCurrent = AkelPad.SendMessage(AkelPad.GetEditWnd(), 3447, 0, 0)
End Function

Sub OptionWrite(sOptionName, nOptionValue)
	Call oSet.Begin(WScript.ScriptBaseName, &H2)		'POB_SAVE
	Call oSet.Write(sOptionName, 1, nOptionValue)		'PO_DWORD
End Sub

Function OptionRead(sOptionName)
	Call oSet.Begin(WScript.ScriptBaseName, &H1)		'POB_READ
	OptionRead = oSet.Read(sOptionName, 1)		'PO_DWORD
End Function

Sub OptionDelete(sOptionName)
	Call oSet.Begin(WScript.ScriptBaseName, &H2)		'POB_SAVE
	Call oSet.Delete(sOptionName)
End Sub

Sub SplitWindow(n)
	Call AkelPad.SendMessage(AkelPad.GetMainWnd(), 273, n, 0)
End Sub

скрипт иногда валится на CInt, но что самое странное, если продолжать его вызывать, то дальше скрипт выполняется.
Это глюк WScript для vbs или что-то другое?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

VladSh
Вот тут, до релиза 4.5.6, лежит версия с исправленной работой Scripts на x64.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Instructor wrote:4. Когда делал релиз забыл, что у FeyFre dll для x64 в папке Plugsx64. Попробую автоматизировать, чтобы исключить такую ситуацию. AkelPad-4.5.5-x64-setup.exe перезалил.
dll для плага SpellCheck после инсталляции в папке с плагами не появляется.
VladSh wrote:Ставил x64-версию на Win7, следующие наблюдения:
...почему-то на папке с AkelPad'ом установлен замочек, хотя доступ на запись в папку и все вложенные папки/файлы под текущим пользователем имеется.
Почему такое может быть?
Instructor wrote:Вот тут, до релиза 4.5.6, лежит версия с исправленной работой Scripts на x64.
Для "моих" проблем с CInt не помогло, ошибка продолжает вылетать.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »


Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

VladSh wrote:
Instructor wrote:Вот тут, до релиза 4.5.6, лежит версия с исправленной работой Scripts на x64.
Для "моих" проблем с CInt не помогло, ошибка продолжает вылетать.
С выложенной версией у меня проблем не возникает.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Это... А почему под x64 при попытке вызвать EM_EXGETSEL для заполнения CHARRANGE происходит разрушение стека невзирая на полное соответствие документации?

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

DV
CHARRANGE -> CHARRANGE64
viewtopic.php?p=10517#p10517

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Instructor wrote:CHARRANGE -> CHARRANGE64
Это я видел. Мне просто интересно, есть ли вменяемое объяснение со стороны Майкрософта, почему, чёрт побери, код, написанный в полном соответствии с документацией, которая в данном конкретном случае даже не допускает разночтений, приводит к краху.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

DV
Это скорее вопрос не к майкрософту :) EM_EXGETSEL посылается AkelEdit'у и обрабатывает сообщение он же.

DV
Offline
Posts: 1250
Joined: Thu Nov 16, 2006 11:53 am
Location: Kyiv, Ukraine

Post by DV »

Instructor wrote:EM_EXGETSEL посылается AkelEdit'у и обрабатывает сообщение он же.
Потенциально опасная несовместимость с RichEdit, однако. Потенциально обеспечивает крэш для всяких перехватчиков текста (например, программ для перевода или чтения текста).

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

DV
Тоже верно.
Post Reply