На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual C++ / MFC / WTL (далее Раздела)
1) На Раздел распространяются все Правила Форума.
2) Перед тем, как создать новый топик, убедитесь, что Вы читали Правила создания тем в Разделе.
3) Вопросы, не связанные с программированием (настройки MS Visual Studio, книги, библиотеки и т.д.),
обсуждаются в разделе C/C++: Прочее
4) Вопросы разработки .NET (Windows Form, C++/CLI и т.п.) приложений на Visual C++/C# обсуждаются в разделе .NET.
5) Нарушение Правил может повлечь наказание со стороны модераторов.

Полезные ссылки:
user posted image FAQ Раздела user posted image Обновления для FAQ Раздела user posted image Поиск по Разделу user posted image MSDN Library Online
Модераторы: ElcnU
  
> CLinkCtrl , диалог не открывается
    Visual C 2010
    Установил на диалог компонент CLinkCtrl - диалог перестал открываться, ошибок не выводится.
    Может что-то подключать надо или обязательная инициализация?
      А если его удалить с формы - то норм открывается? Моджет ты там руками что то нечаяно грохнул?

      Добавлено
      Еще у диалоге можно задать один флаг, при создании, забыл блин как он там называется, что то там IGNORE ERROR, кароче он нужен для того, чтоб даже если во время создания диалога произошла ошибка, то всеравно его показать. Вспомпню напишу как он там называется.
        удаляю - диалог открывается!
        создал пустой диалоговый MFC-проект, компилирую - диалог "О программе" открывается, добавляю в "О программе" CLinkCtrl, компилирую - не открывается
          Во, нашел - https://msdn.microsoft.com/ru-ru/library/wi...esktop/ff729172
          Цитата


          DS_NOFAILCREATE



          Creates the dialog box even if errors occur — for example, if a child window cannot be created or if the system cannot create a special data segment for an edit control.

          Вот попробуй этот стиль диалогу выставить, посмотри в каком контроле трабл.

          Добавлено
          Цитата Vladimir_ @
          создал пустой диалоговый MFC-проект, компилирую - диалог "О программе" открывается, добавляю в "О программе" CLinkCtrl, компилирую - не открывается

          Попробуй посмотреть что возвращает GetLastError ?

          Добавлено
          Цитата Vladimir_ @
          добавляю в "О программе" CLinkCtrl, компилирую - не открывается

          Кстати как добавляешь? Просто кинул на форму, скомпилил и запустил - диалог не открывается? Если так, попробуй всетаки проверить функцией GetLastError - есть какая нибудь ошибка или нет.

          Добавлено
          Еще попробуй пройтись под отладчиком, особенно место, где создаеться диалог. Желательно с заходом внутрь.

          Добавлено
          Как зайти внутрь - там надо прописать в настройках студии сервер с майкрософтовскими символами. И подключить их, тогда ты сможешь отлаживать MFCшные классы и методы включая виндовые функции, вот тут инструкция по подключению:
          https://msdn.microsoft.com/ru-ru/library/wi...t_symbol_server

          Добавлено
          Ну или если вообще ниче не поможет, скинь минимальный проект сюда, я может завтра поковыряю. Правда у меня 2015 студия.
          Ну и еще один момент, если нет ошибок, и ничего не помогло, то может быть студия криво встала? Ну мало ли :-?

          Добавлено
          К слову, чтоб в коде не писать GetLastError, ты можешь просто под отладчиком пройтись, дойти до функции DoModal/Create или что там вызываеться пройти ее, а после в Watcher'е вдолбить @err, оно покажет статус ошибки.
          Сообщение отредактировано: KILLER -
            В общем проходит всю функцию INT_PTR CDialog::DoModal(), в CATCH_ALL(e) не вылетает, возвращает -1.
            После функции @err = 0
            Может для этого контрола нужен какой-то дополнителный вызов как с Rich Edit?
              Цитата Vladimir_ @
              Может для этого контрола нужен какой-то дополнителный вызов как с Rich Edit?

              Если мне не изменяет память, то CLinkCtrl просто подобие Label, лейбы, только с возможностью ткнуть по ней и перейти на указанный веб адрес, там нужно только указать заголовок и адрес, больше там вроде ниче не надо указывать, да и как вообще какой то контрол может влиять на поведение диалога? Ему даже член класса не нужен нафиг. Там полюбому в чем то косяк.

              Добавлено
              Попробуй всетаки заморочиться с сервером символов, там просто нужно прописать сервер символов, создать папку, как указано по ссылке выше, и попробуй создание диалога продебаж полностью, с заходом внутрь, там где он создает все дочерние окна, вот когда дойдешь до создания своего CLinkCtrl, вот там внимательно смотри на возвращаемые значения, и проверяй GetLastError через вотчер(@err). Я сейчас просто немного занят, чтоб вплотную разобраться с твоей проблемой, да и не в том состоянии ))
              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
              0 пользователей:


              Рейтинг@Mail.ru
              [ Script execution time: 0,1613 ]   [ 17 queries used ]   [ Generated: 25.04.24, 05:02 GMT ]