Giter Site home page Giter Site logo

ebsocprogressviewer's Introduction

EBS 온라인 클래스 진도율을 일괄적으로 조회/계산할 수 있는 프로그램입니다.
진도율로 출결관리를 하는 학생들을 위해 제작되었습니다. (구. EBS 온라인 클래스 진도율 계산기)
일괄 수강신청 기능, 학교 페이지 바로가기 등 여러 추가기능 또한 지원합니다.

ChangeLog : https://github.com/devITae/EBSOCProgressViewer/releases

온라인 클래스의 개편으로, 더 이상 사용이 불가합니다.

최신버전 : v2.6.1 (Build 201118)

윈도우에서만 사용가능 하며, 디스플레이 기본 배율(100%)에 최적화 되었습니다.

EBS 계정으로만 로그인이 가능합니다. (소셜로그인 미지원)

최초 실행시 메인 스크린샷 수강신청 스샷

1. 사용법

1.1. 학교코드 검색

  1. "찾기" 버튼을 누릅니다.

설명

  1. 맨위 검색창에 학교 이름을 입력합니다.

  2. 옆의 "검색" 버튼을 클릭합니다.
    (EBS 서버가 원활하지 않으면 작동하지 않는 경우가 있습니다.)

  3. 자신의 학교 이름을 클릭합니다.

  4. "선택하기" 버튼을 누르면 자동으로 코드가 입력됩니다.

1.2. 설명

  1. "찾기" 버튼을 통해 학교를 검색하여 학교코드를 찾을 수 있습니다.
    EBS 서버가 불안정할 때 검색이 되지 않는 경우가 있습니다.

  2. 클래스 목록에는 자신이 가입한 클래스 표시됩니다.

  3. 학습중/학습완료/미수강중인 강의들의 목록를 조회할 수 있습니다.

  4. 열(Column) 부분을 클릭하면 오름/내림차순 정렬이 가능합니다.

  5. 행(Row) 부분을 더블클릭하면 해당 주소가 기본 브라우저로 열립니다. (클래스, 강의목록 모두 해당)

  6. 미수강중 목록에서 Ctrl, Shift, 드래그를 활용해 다중 선택한 뒤 체크박스를 누르면 한번에 체크가 됩니다.
    개별 항목을 더블클릭 할 시, 선택한 항목만 수강신청 여부 메세지가 표시됩니다.

  7. 이 프로그램은 사용자의 개인정보를 탈취하지 않습니다. 소스코드를 참고해주세요. 아래참고

  8. 보안 상 비밀번호 저장 기능은 지원하지 않습니다. (급하게 만드느라..)

1.3 주의사항

  1. 진도율은 프로그램 내에서 진행된 자체적인 계산입니다. (EBS가 더 이상 마이페이지 진도율을 제공하지 않음)
    ※ 진도율 계산식 : (완료한 강의 수) / (해당강의 목차 수) * 100

  2. 조회 내용이 잘못되었다면, 새로고침하거나 홈페이지 내에서 확인해주세요.
    하지만 아마도 높은 확률로 잘못 출력되지는 않을 것입니다.

  3. EBS의 DB오류로 인해 학습완료 임에도 100%로 표기되지 않는 경우가 존재합니다.

본 오류는 현재 수정되었습니다. 아래참고

  1. 본 사항을 분명히 숙지하시고, 문제가 생기지 않도록 주의하시기 바랍니다.

2. EBS 자체 오류 보고

아래 사항들은 프로그램의 문제가 아닌 EBS OC 사이트 자체에서 발생하는 오류들입니다.

2.1. 학교코드 찾기

이 기능은 v2.0 이후로 지원하지 않습니다. 필요에 따라 추후 지원예정입니다.

EBS 서버가 불안정 할 때 학교코드 검색이 간혹가다 되지 않습니다. 그럴 때 쓰는 방법입니다.

  1. https://oc.ebssw.kr/ 에 들어가서 자신의 학교를 선택하고 학교가기를 누릅니다.

    학교 선택

  2. 새로 접속된 페이지의 주소를 보면 아래와 같이 영어와 숫자 5자리가 보입니다.

    schulCcode=00000

    숫자 5자리가 바로 학교코드 입니다.

  3. 이제 프로그램에서 학교코드를 칸에 기입해주세요! (자동저장 됩니다!)

    학교코드 칸

  4. 이제 로그인 하면 됩니다!

2.2. 학습완료 임에도 100%로 표기되지 않는 경우

본 오류는 현재 수정되었습니다.

과거에 EBS 사이트에서 발생한 오류이며 사이트에서도 동일하게 뜹니다.
이 현상은 DB상에서 진도가 2개로 복제되어 생김으로 인해 발생하는데, 복제되어도 어느 걸로 듣던지 오직 하나의 항목만 학습완료로 인정되는 경우입니다.
현재는 DB 오류가 수정된 것을 확인하였습니다.

3. 소스코드

이 프로그램의 소스 코드를 공개하고 있으며, MIT License를 준수합니다.
https://github.com/devITae/EBSOCProgressViewer/releases 에서 다운 받을 수 있습니다.

직접 기능을 추가해보시나, 이 코드를 분석해보셔도 좋습니다.

아마도 학교나 학생들에 따라 제각각의 오류가 보고될 것입니다.
하지만 그만큼의 데이터 확보가 부족한 상황이니 양해바랍니다 ㅠ

p.s. 본의 아니게 스파게티 코드가 된점 죄송합니다 흑흑..

ebsocprogressviewer's People

Contributors

devitae avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

vb6hobbyst7

ebsocprogressviewer's Issues

학습완료 목록을 확인할 때 index가 array를 넘어감

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at EBSOCStatus.Form1.CallNokori()
   at EBSOCStatus.Form1.lrnType_SelectedIndexChanged(Object sender, EventArgs e)
   at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4150.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
EBSOCStatus
    Assembly Version: 2.0.0.0
    Win32 Version: 2.0.0.0
    CodeBase: file:///C:/Users/ilsubyeega/Downloads/EBSOCProgress2.0.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 10.0.0.0
    Win32 Version: 14.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4001.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4121.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4150.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.3752.0 built by: NET48REL1
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

미수강중 강의 조회 오류

--해결되었습니다-- 일시적인 서버 오류인것 같네요 ㅠㅠ
안녕하세요! 먼저 이렇게 좋은 프로그램을 제작, 배포해 주셔서 감사하다는 말씀 드립니다. ㅎㅎ
다름이 아니라, '미수강중' 강의 조회에 오류가 발생하는데요ㅠ EBS자체 서버에서 미수강중 조회 링크가 바뀐 것인지, 아니면 다른 문제인지 알 수 없어 Issue를 제출합니다 ㅠㅠ 혹여.. 시간 괜찮으시다면.. 감사합니다!!
image

이 대화 상자 대신 JIT(Just-in-time) 디버깅을 호출하는
방법에 대한 자세한 내용은 이 메시지의 뒷부분을 참조하십시오.

************** 예외 텍스트 **************
System.Runtime.InteropServices.COMException (0x80072EE5): 잘못된 URL입니다.

위치: Microsoft.VisualBasic.CompilerServices.LateBinding.InternalLateCall(Object o, Type objType, String name, Object[] args, String[] paramnames, Boolean[] CopyBack, Boolean IgnoreReturn)
위치: Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn)
위치: EBSOCStatus.Form1.CallNotEnrolled()
위치: EBSOCStatus.Form1.lrnType_SelectedIndexChanged(Object sender, EventArgs e)
위치: System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
위치: System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)
위치: System.Windows.Forms.ComboBox.WndProc(Message& m)
위치: System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
위치: System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
위치: System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** 로드된 어셈블리 **************
mscorlib
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4200.0 built by: NET48REL1LAST_C
코드베이스: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll

EBSOCStatus
어셈블리 버전: 2.3.1.0
Win32 버전: 2.3.1.0
코드베이스: file:///C:/Users/[사용자 계정]/Downloads/EBSOCPro2.31.exe

Microsoft.VisualBasic
어셈블리 버전: 10.0.0.0
Win32 버전: 14.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll

System
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4200.0 built by: NET48REL1LAST_C
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Core
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4200.0 built by: NET48REL1LAST_C
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Windows.Forms
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4200.0 built by: NET48REL1LAST_C
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System.Drawing
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System.Configuration
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4190.0 built by: NET48REL1LAST_B
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Xml
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

System.Runtime.Remoting
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll

Accessibility
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll

mscorlib.resources
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ko_b77a5c561934e089/mscorlib.resources.dll

System.Windows.Forms.resources
어셈블리 버전: 4.0.0.0
Win32 버전: 4.8.4084.0 built by: NET48REL1
코드베이스: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ko_b77a5c561934e089/System.Windows.Forms.resources.dll

************** JIT 디버깅 **************
JIT(Just In Time) 디버깅을 사용하려면 이 응용 프로그램 또는 컴퓨터의
config 파일(machine.config)의 jitDebugging 값을
system.windows.forms 섹션에 설정해야 합니다.
또한 응용 프로그램은 디버깅할 수 있도록 컴파일되어야
합니다.

예:

JIT 디버깅을 사용하면 처리되지 않은 모든 예외는
이 대화 상자에서 처리되지 않고 컴퓨터에 등록된 JIT
디버거에 보내집니다.

버그?

최근 미수강중으로 접근할 시 아래와 같은 오류를 발생합니다.
¯_(ツ)_/¯

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Runtime.InteropServices.COMException (0x80072EE5): The URL is invalid

   at Microsoft.VisualBasic.CompilerServices.LateBinding.InternalLateCall(Object o, Type objType, String name, Object[] args, String[] paramnames, Boolean[] CopyBack, Boolean IgnoreReturn)
   at Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateCall(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack, Boolean IgnoreReturn)
   at EBSOCStatus.Form1.CallNotEnrolled()
   at EBSOCStatus.Form1.lrnType_SelectedIndexChanged(Object sender, EventArgs e)
   at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
EBSOCStatus
    Assembly Version: 2.3.1.0
    Win32 Version: 2.3.1.0
    CodeBase: file:///C:/bin/EBSOCPro2.31.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 10.0.0.0
    Win32 Version: 14.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
Accessibility
    Assembly Version: 4.0.0.0
    Win32 Version: 4.8.4084.0 built by: NET48REL1
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

기능 추가 요청: 수강신청되지 않은 강좌 목록

안녕하세요 현재도 유용하게 사용하고 있습니다!
혹시 수강신청되지 않은 강좌 목록을 확인할 수 있을까요? 가끔가다 중간에 수강신청을 놓치는 강좌들이 있어서 한번 요청해봅니다!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.