Почему vb .net постоянно пишет одну и ту же строку текста в .txt? - PullRequest
0 голосов
/ 10 сентября 2018

Я создал файл .dll как плагин для AutoCAD. Каждый раз, когда происходит событие, оно напишет в .txt об этом. Почему он постоянно пишет одну и ту же строку текста в .txt?

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices

    Public Class Class1

       <CommandMethod("AddAppEvent")>
       Public Sub AddAppEvent()

           AddHandler Application.SystemVariableChanged, AddressOf appSysVarChanged

    End Sub

    Public Sub appSysVarChanged(ByVal senderObj As Object,
                                ByVal sysVarChEvtArgs As Autodesk.AutoCAD.ApplicationServices.
                                SystemVariableChangedEventArgs)

        Dim oVal As Object = Application.GetSystemVariable(sysVarChEvtArgs.Name)

        Dim file As System.IO.StreamWriter
        file = My.Computer.FileSystem.OpenTextFileWriter("C:\Users\rita.aguiar\Documents\AutoCAD plug-in\Registo de Eventos.txt", True)
        file.WriteLine("O utilizador " & Environment.UserName & " encerrou o AutoCAD às " & DateTime.Now.ToString("hh:mm, dddd, dd MMMM yyyy"))
        file.Close()

    End Sub

End Class

Пример вывода в файл .txt:

Здесь он написал 4 раза, иногда пишет больше, другие меньше. Почему происходит эта случайная вещь? У кого-нибудь была такая же проблема? Я просто хочу написать один раз.

О том, что используется, AutoCAD - 01:11, segunda-feira, 10 сентября 2018

О том, что используется, AutoCAD - 01:11, сегунда-фейра, 10 сентября 2018 года

О том, что используется, AutoCAD - 01:11, сегунда-фейра, 10 сентября 2018 года

О том, что используется, AutoCAD - 01:11, сегунда-фейра, 10 сентября 2018 года

Большое спасибо.

1 Ответ

0 голосов
/ 26 сентября 2018

Я следил за этой страницей: http://docs.autodesk.com/ACD/2010/ENU/AutoCAD%20.NET%20Developer's%20Guide/index.html это даже не правильно. Если я хочу зарегистрировать закрытие autocad, мне нужно использовать событие acadBeginQuit, а не системные переменные, как сказано на этой странице.

...