Отладчик присоединения к экземпляру IIS

Как вы можете прочитать в документации :

В дереве виджетов часто возникает необходимость доступа / ссылки на другие виджеты. Язык Kv предоставляет способ сделать это с помощью id. Подумайте о них как о переменных уровня класса, которые могут быть использованы только на языке Kv.

blockquote>

Атрибуты id из кода Python описаны здесь здесь . Рабочий пример:

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
from kivy.properties import ObjectProperty
from kivy.uix.button import Button

Builder.load_string("""
:
    id: masta
    orientation: 'vertical'

    MyButton:
        id: deleto

        button_id: deleto

        text: "Delete"
        on_release: masta.DelButton()

    MyButton
    MyButton
""")

class MyButton(Button):
    button_id = ObjectProperty(None)

class Terminator(BoxLayout):
    def DelButton(self):
        for child in self.children:
            print(child.button_id)       

class TestApp(App):
    def build(self):
        return Terminator()    

if __name__ == '__main__':
    TestApp().run()

Чтобы не удалять кнопку с меткой «Удалить», вы можете проверить ее свойство text. Hovewer, удаляющийся из цикла, приведет к ошибкам, так как некоторые из них будут пропущены после того, как список, который вы повторяете, изменится:

class Terminator(BoxLayout):
    def DelButton(self):
        for child in self.children:            
            self.remove_widget(child) # this will leave one child

Вам нужно создать список детей для удаления:

class Terminator(BoxLayout):
    def DelButton(self):
        for child in [child for child in self.children]:            
            self.remove_widget(child) # this will delete all children

В вашем случае:

class Terminator(BoxLayout):
    def DelButton(self):
        for child in [child for child in self.children if child.text != "Delete"]:            
            self.remove_widget(child)

73
задан Mihai Lazar 11 May 2009 в 16:46
поделиться

5 ответов

В Visual Studio:

  1. Нажмите «Отладка» в строке меню
  2. Нажмите «Присоединить к процессу»
  3. Установите флажок « Показать процессы от всех пользователей "в нижнем левом углу
  4. Выберите aspnet_wp.exe , w3p.exe или w3wp.exe из списка процессов
  5. Щелкните «Присоединить»
118
ответ дан 24 November 2019 в 12:16
поделиться

Возможные названия процесса ASP.NET:

  • w3wp.exe является IIS 6.0 и позже.
  • aspnet_wp.exe является более ранними версиями IIS.
  • iisexpress.exe является IISExpress.
  • dotnet.exe является Ядром ASP.NET.
  • inetinfo.exe является более старыми приложениями ASP, работающими незавершенный.

От Находят название процесса ASP.NET

3
ответ дан 24 November 2019 в 12:16
поделиться

Вам также потребуется открыть информационную службу Интернета, выбрав Панель управления> Администрирование. Щелкните правой кнопкой мыши соответствующий веб-сайт, щелкните вкладку домашнего каталога и нажмите кнопку конфигурации. Откроется новая форма с тремя вкладками - щелкните вкладку отладки и выберите два параметра в разделе флагов отладки. Это также необходимо для отладки.

1
ответ дан 24 November 2019 в 12:16
поделиться

Процесс IIS - это aspnet_wp.exe.

Фактически, присоединение к процессу aspnet_wp.exe - это то, что делает VS, когда ваш проект настроен на использование IIS для отладки.

5
ответ дан 24 November 2019 в 12:16
поделиться

Просто чтобы прояснить ответ Джимми Р. Хаутса…

Если вы хотите отладить веб-приложение VS и IIS, вы можете сделать следующее:

  1. Разместите сайт внутри IIS (виртуальный каталог и т. д.).
  2. Затем в VS2005 сделайте следующее:

    • Щелкните правой кнопкой мыши веб-проект → Свойства → Параметры запуска → Использовать настраиваемый сервер → Базовый URL → Введите адрес сайта как , размещенный в IIS.
    • Нажмите F5 , и вы сможете отладить свой код.

То же самое работает и для VS 2008.

16
ответ дан 24 November 2019 в 12:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: