C--

High-level languages programming questions
  • Помогите правильно переписать данную структуру:

    Filter:
    dd Filter.end - Filter.1
    .1:
    .end:
    db 0
    to infinity and beyond
  • punk_joker wrote:Помогите правильно переписать данную структуру:
    В чем суть проблемы?
    Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!
  • Пока писал ответ, придумал вариан решения. Но все равно, dd Filter.end - Filter.1 - определяет размер скажем так массива с нужными расширениями файлов, для пустого фильтра можно в принципе указать 0, но хочется всеже более универсальное решение. Тут скорее всего необходимо задействовать указатели, вот как с ними работать я еще плохо понимаю.
    to infinity and beyond
  • Боюсь сам, я всетаки не одолею сего демона (OpenDialog). Заголовочный файл теоретически правильный, Скорее всего я делаю что-то не так либо при заполнении структуры, либо неправильно понял как вызывать инициализацию opendialog'а, так как именно после добавления строки инициализации компонента программа вылетает. Архив с программой и хедером прилагаю.
    Attachments
    Downloaded 259 times
    to infinity and beyond
  • Если ты хочешь протестировать отдельно взятый функционал, лучше для этого взять программу cmm/example.
    В твоём примере черт ногу сломит: в ней намешан и буфер обмена, и OpenDialog, и даже boxlib от предыдущего примера.

    Ты всё делал правильно, но запутался и если удалить всё лишнее, ответ может быть найден сам собой. После расчистки так и случилось. Вначале нужно установить переменные, а потом уже инициализировать OpenDialog. Всё что я сделал, это перенёс строку proc_lib_opendialog_init stdcall (#twst); ниже по коду.
    Attachments
    example.7z (1.14 KiB)
    Downloaded 259 times
    Из хаоса в космос
  • Leency wrote:Если ты хочешь протестировать отдельно взятый функционал, лучше для этого взять программу cmm/example.
    В твоём примере черт ногу сломит: в ней намешан и буфер обмена, и OpenDialog, и даже boxlib от предыдущего примера.

    Ты всё делал правильно, но запутался и если удалить всё лишнее, ответ может быть найден сам собой. После расчистки так и случилось. Вначале нужно установить переменные, а потом уже инициализировать OpenDialog. Всё что я сделал, это перенёс строку proc_lib_opendialog_init stdcall (#twst); ниже по коду.
    Пора бы мне уже прекращать такие тупые ошибки делать. Спасибо. А про использование для этих целей cmm/example как-то и не подумал.
    to infinity and beyond
  • Осталось отловить причину падения программы при попытке запуска OpenDialog'а.
    to infinity and beyond
  • Скорее всего что-то с параметрами. Нужно смотреть ассемблерные варианты. И алсо у FPlay тоже должен быть подключаемый файл OpenDialog.
    Из хаоса в космос
  • Leency wrote:Скорее всего что-то с параметрами. Нужно смотреть ассемблерные варианты. И алсо у FPlay тоже должен быть подключаемый файл OpenDialog.
    Я брал в качестве примеров код на wiki и rtfread. Ниче, теперь он унего не останется выбора кроме как заработать :)
    to infinity and beyond
  • Ха, в Fplay используется для подключения asm-код
    to infinity and beyond
  • Кинь ссылку, пожалуйста.
    Из хаоса в космос
  • Leency wrote:Кинь ссылку, пожалуйста.
    http://websvn.kolibrios.org/listing.php ... d321873c73
    to infinity and beyond
  • Каким образом в С-- можно получить данные определенного размера с определенной позиции?
    to infinity and beyond
  • Что ты конкретно хочешь сделать?

    > Каким образом в С-- можно получить данные определенного размера с определенной позиции?
    strncpy(in_buf, from_buf + смещение_на_определённую позицию, размер_копируемых_данных);

    оно?
    Из хаоса в космос
  • Who is online

    Users browsing this forum: No registered users and 6 guests