Loopback wrote: |
Кому понравится - пользуйтесь |
Quote: |
Его значение всегда устанавливается в -1, так что выражение сравнения составляйте так, чтобы результат всегда был False (=0, >0, >-1, <>-1 и т.д.), иначе все файлы будут раскрашены . |
Quote: |
А не проще возвращать не число -1, а тупо в функции ContentGetValue возвращать значение ft_nosuchfield? |
Quote: |
И размерчик наш - не несколько сотен кило. |
В Readme-файле кто-то wrote: |
ShellExec <имя файла> [<параметры> [<рабочая папка> [<отображение=1>]]] |
Code: |
/t"ку ка ре ку" /c"бла бла бла" /p"хренотень" |
Code: |
ShellExec что-то-там.exe "/t\"ку ка ре ку\" /c\"бла бла бла\" /p\"хренотень\"" "C:\Documents and Settings\All Users" |
MVV wrote: |
Например, мне надо передать следующую строку как параметр:
И при этом указать рабочую папку "C:\Documents and Settings\All Users". Это реально? |
MVV wrote: |
Кстати, родилась еще одна идея, которая кому-то точно понравится. |
Quote: |
Парсер запоминает, с какой кавычки начинается параметр и кавычки другого типа считает вложенными. |
Quote: |
Это с успехом позволит добавить автозагружаемый функционал без необходимостии добавлять новые цветовые схемы. |
Code: |
LoadLibrary /U myplugin.dll auto_func_1 |
Code: |
LoadLibrary [/U] [/T] [/D1000] <dll_name> [<func_name>] |
Code: |
SetEnv [/A] <имя переменной> <текст переменной> |
MVV wrote: |
Кстати, можно добавить возможность вставки кавычки, с которой начинался параметр, указанием двух таких кавычек |
MVV wrote: |
Ну, я думал и про вызов функции без параметров из DLL. Правда, тут возникает вопрос - что делать после вызова функции - выгружать DLL или нет? |
MVV wrote: |
Все-таки я схожусь к мысли, что необязательные параметры типа добавления/замены текста переменной удобнее добавлять в начале параметров через слэш, так проще парсить, и потом, так число необязательных параметров может быть любым: |
Quote: |
Для парсера в данном случае важен порядок параметров. |
MVV wrote: |
Я бы писал парсер строк отдельно, и отдельной функцией сам алгоритм обработки команды |
Code: |
void __stdcall Autorun_PluginInit(const AutorunInfo* Info, char* FuncList, int MaxListSize); |
MVV wrote: |
А вот с Autorun_PluginInit какой-то косяк - вызывается она явно не как __stdcall, также я пробовал __fastcall и __cdecl, ни при одном из них я не нахожу в стеке этих параметров на нужном месте. Ерунда какая-то. Кстати, какой размер буфера - чему равна MaxListSize (может, хоть ее найду)? |
MVV wrote: |
Корректные прототипы функций: |
MVV wrote: |
И вопрос - что такое HModule nProcID? В Си нет такого типа, но есть тип HMODULE (регистр в Си важен). Но я вообще не въеду, что с этим хэндлом можно делать. Зачем он? |
MVV wrote: |
дескриптор окна ТК передается плагином (кстати, ты окно ищешь с учетом его принадлежности текущему процессу? ). |
MVV wrote: |
Не представляю, какие еще могут понадобиться дескрипторы для работы. А если и могут, то DLL их по идее может получить так же точно, как и твой плагин. |
MVV wrote: |
Также плохо понятно (хотя смотрится интересно), зачем добавлять функции из DLL в список. Их потом можно прямо из конфига запускать? |
output generated using printer-friendly topic mod. All times are GMT + 4 Hours