HotDir: Advanced folder shortcuts — Расшир-е ссылки на папки

Здесь можно обсудить ваш любимый плагин.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

HotDir

Post by DkmS »

Latest post of the previous page:

Попытался скомпилить х64-версию - случился облом: компилится нормально (с обычными предупреждениями о возможной потере данных при преобразованиях), но при занрузке - "Ошибка при загрузке плагина". :cry:
Результат одинаковый в 2005-й и 2008-й Студиях.
User avatar
NightRoman
Posts: 6034
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 20 times
Been thanked: 49 times
Contact:

Post by NightRoman »

Опираясь на опыт портирования Far.NET (вроде почти получилось или даже вообще получилось уже), скажу по поводу "с обычными предупреждениями о возможной потере данных при преобразованиях", что эти предупреждения на самом деле говорят и о фатальных ошибках. Каждое предупреждение надо осознанно рассмотреть и загасить либо реально пофиксить. Есть несколько мест, где раньше указатели передавались через int - это потенциальные краши.

Возьми новые хедер файлы из http://forum.farmanager.com/viewtopic.php?p=24962#24962 и пройдись по предупреждениям на предмет pointer ~ int, в новых хедерах такие вещи теперь идут типом INT_PTR (или LONG_PTR местами). Соответственно в плагине надо заменить int -> INT_PTR.
User avatar
Alexey Samlyukov
Posts: 1764
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Post by Alexey Samlyukov »

О результатах только потом отпишись.

PS. модераторам - надо бы переместить в основную ветку.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

х64

Post by DkmS »

Отпишусь, только вы от меня много ожидаете - я не сишник ни разу :oops: , а тут даже проекта для Студии нет (с ней, всё же, полегче разбираться)...
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Докладываю.

Новые hpp из указанного архива взял, запустил соответствующую консоль Студии 2008, подправил вызов компилятора:

Code: Select all

cl /Zp2 /O1igy /GF /Gr /GR- /EHs-c-  /Wp64 /LD %PlugName%.cpp /link /subsystem:console /machine:x64 /opt:nowin98 /noentry /nodefaultlib /def:%PlugName%.def kernel32.lib advapi32.lib user32.lib msvcrt.lib shell32.lib %PlugName%.res /map:"..\%PlugName%.map" /out:"..\%PlugName%.dll" /merge:.rdata=.text
Предупреждений немного:
HotDir.cpp(115) : warning C4311: 'type cast' : pointer truncation from 'char *const ' to 'unsigned int'
HotDir.cpp(116) : warning C4311: 'type cast' : pointer truncation from 'char *const ' to 'unsigned int'
HD_DirMenu.cpp(98 ) : warning C4311: 'type cast' : pointer truncation from 'const char *' to 'int'
HD_DirMenu.cpp(102) : warning C4311: 'type cast' : pointer truncation from 'const char *' to 'int'
HD_DirMenu.cpp(104) : warning C4311: 'type cast' : pointer truncation from 'const char *' to 'int'

При запуске:
Ошибка при загрузке плагина
C:\far64\Plugins\hotdir64\HotDir.dll
:cry:
После замены int -> INT_PTR (и unsigned int тоже) предупреждения пропали, но работать от этого не начало. Вот весь протокол:

Code: Select all

Make HotDir.def file...
... succesfully
Make HotDir.rc file...
... succesfully
Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Microsoft (R) C/C++ Optimizing Compiler Version 15.00.20706.01 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

cl : Command line warning D9035 : option 'Og' has been deprecated and will be removed in a future release
cl : Command line warning D9035 : option 'Wp64' has been deprecated and will be removed in a future release
HotDir.cpp
Microsoft (R) Incremental Linker Version 9.00.20706.01
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:HotDir.dll
/dll
/implib:HotDir.lib
/subsystem:console
/machine:x64
/opt:nowin98
/noentry
/nodefaultlib
/def:HotDir.def
kernel32.lib
advapi32.lib
user32.lib
msvcrt.lib
shell32.lib
HotDir.res
/map:..\HotDir.map
/out:..\HotDir.dll
/merge:.rdata=.text
HotDir.obj
LINK : warning LNK4224: /OPT:NOWIN98 is no longer supported;  ignored
   Creating library HotDir.lib and object HotDir.exp
User avatar
DrKnS
Posts: 5781
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 329 times

Post by DrKnS »

DkmS wrote:подправил вызов компилятора:

Code: Select all

cl /Zp2
Выравнивание рекомендовалось выставлять в 8 байт.
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Не помогло :(
User avatar
DrKnS
Posts: 5781
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 329 times

Post by DrKnS »

Собрал, работает. Если надо, могу выложить.
User avatar
Alexey Samlyukov
Posts: 1764
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Post by Alexey Samlyukov »

Выкладывай, можешь прямо в анонсах.

PS. Дифы или полностью исходники мне присылай.
User avatar
DrKnS
Posts: 5781
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 329 times

Post by DrKnS »

Alexey Samlyukov
Держи.
Attachments
hotdir7_64.7Z
(32.56 KiB) Downloaded 316 times
DkmS
Posts: 31
Joined: Sat 10 Jun, 2017 18:07

Post by DkmS »

Ура! :good:
User avatar
Alexey Samlyukov
Posts: 1764
Joined: Tue 15 Mar, 2005 17:28
Been thanked: 7 times
Contact:

Re: HotDir: Advanced folder shortcuts — Расшир-е ссылки на папки

Post by Alexey Samlyukov »

стараниями DrKnS после 722 билда плагин стал работать и в уникодном фаре ;)
User avatar
Wave
Posts: 1792
Joined: Thu 04 Aug, 2005 18:47
Has thanked: 5 times
Been thanked: 17 times

Re: HotDir: Advanced folder shortcuts — Расшир-е ссылки на папки

Post by Wave »

А в уникодные хотдиры переходит?
Весь функционал плагина (кроме переходов по каталогам вверх) прекрасно реализуется макросами и главным меню.

Для примера
Пользуюсь ФАРом больше 20 лет © собирательный.
shaker
Posts: 18
Joined: Wed 15 Aug, 2007 13:01

Подскажите по Hotdir

Post by shaker »

После установки v.1.75 по Alt+F1,2 появились отсутсвовашие до этого PrintManager, и Same Folder. Из-за этого сдвинулись на 2 "цифры" привычные папки. Same Folder появилась и в списке по F11 - "съела" букву, к тому же это бесполезная вещь, подскажите как ее удалить? ее нет в плагинах.
User avatar
HaRT
Moderator
Posts: 9637
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 116 times
Been thanked: 242 times

Re: Подскажите по Hotdir

Post by HaRT »

shaker wrote:как ее удалить
См. настройки плагина FAR Commands.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

Return to “Обсуждение плагинов”