Microsoft MVP성태의 닷넷 이야기
글쓴 사람
라르크
홈페이지
첨부 파일
[12.png]    

안녕하세요.

C# 6.0 책에 첨부되어 있는 링크에서 받은 cs6_part3.pdf를 보고 예제를 따라하고 있습니다.

12.3 서비스 응용프로그램을 진행 중인데

예제 12.20 중 EchoServer.cs 파일에 ServiceBase를 입력하면


[서비스 응용 프로그램의 일부로 존재할 서비스에 기본 클래스를 제공합니다. ServiceBase는 새 서비스 클래스를 만들 때 파생되어야 합니다.

'Component'형식이 참조되지 않은 어셈블리에 정의되었습니다. 'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 어셈블리에 참조를 추가해야 합니다.]


이런 메세지가 나오고 빠른 작업 및 리팩터링을 실행하면

참조에 System 항목이 추가됩니다.

추가하면 에러는 안나옵니다.

Program.cs까지 작성하고 빌드후 실행하면


[Windows 서비스 시작 오류

명령줄 또는 디버거에서 서비스를 시작할 수 없습니다. 먼저 installutil.exe를 사용하여 Windows 서비스를 설치한 다음 서버 탐색기, Windows 서비스 관리 도구 또는 NET START 명령을 사용하여 시작해야 합니다.]


이런 메세지가 나오면서 실행이 안됩니다.


그리고 두번째로 문의드릴건

그 밑에 Professional에서 가능하다는 예제인데

MyServiceInstaller.cs에서 클래스에 : Installer를 쓰면

['Installer' 형식 또는 네임스페이스 이름을 찾을 수 없습니다. using 지시문 또는 어셈블리 참조가 있는지 확인하세요.]

라고 나오는데 Installer가 뭔지 모르겠어요.

제가 사용하고 있는건 비주얼스튜디오 2017 커뮤니티 버전입니다.

버전 문제 때문일까요?











[최초 등록일: ]
[최종 수정일: 7/17/2017]


비밀번호

댓글 작성자
 



2017-07-17 12시21분
우선, 86페이지에서 쓴 "2번" 항목에 따라 "System.Configuration.Install" 어셈블리를 추가해야 합니다.

그리고, 빌드 후 실행은 NT 서비스의 경우에는 가능하지 않습니다. NT 서비스를 실행하는 방법은 88 페이지의 내용에 따라 InstallUtil.exe로 먼저 등록한 다음, 91페이지에 언급한 대로 "서비스" 관리 도구를 이용해 "시작"해 주시면 됩니다.
정성태
2017-07-18 12시52분
[라르크] System.Configuration.Install은 그대로 따라서 추가한 상태구요.

일단 댓글 주신대로 예제 12.20을 빌드 후에 InstallUtil.exe로 등록을 시도했습니다.

Commit 단계가 완료되었습니다.
트랜잭트 설치가 완료되었습니다. 라고 나오는데 중간에


영향을 받는 매개 변수:
   logtoconsole =
   assemblypath = C:\Users\H\Documents\Visual Studio 2017\Projects\MyServer\MyServer\bin\Debug\MyServer.exe
   logfile = C:\Users\H\Documents\Visual Studio 2017\Projects\MyServer\MyServer\bin\Debug\MyServer.InstallLog
C:\Users\H\Documents\Visual Studio 2017\Projects\MyServer\MyServer\bin\Debug\MyServer.exe 어셈블리에서 RunInstallerAttribute.Yes 특성을 포함하는 공용 설치 관리자를 찾을 수 없습니다.
설치 관리자가 없으므로 InstallState 파일을 제거합니다.

이렇게 나옵니다.

설치가 완료되었다고 나오는데 서비스에서는 등록이 되어 있지 않습니다.

무엇이 문제일까요?



[guest]
2017-07-18 04시56분
12장의 소스 코드가 다음의 글에 링크로 모두 포함되어 있습니다.

http://www.sysnet.pe.kr/2/0/1490

서비스는 다음의 링크로 제공되고 있으니, 저 코드와 비교해 보시면 어디에서 잘못 되었는지 아실 수 있을 것입니다.

http://res.sysnet.pe.kr/book/source/MyService.zip
정성태

1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5920한예지 donator10/3/202313708C#과 WIN32 API 관계 질문드립니다. [4]
5919이건우9/27/202312381WinForm의 로딩속도 관련 질문입니다 [2]
5917한예지 donator9/14/202313098동기화 도구 질문 있습니다. [4]
5916한예지 donator9/3/202313491Thread.Sleep(500), await Task.Delay(500), Task.Delay(500) 차이점이 궁금합니다. [2]
5915한예지 donator8/30/202314913비동기 코드를 for 문 안에 작성한 경우 제어 변수가 올바르게 동작하지 않는 이유가 궁금합니다. [3]
5914한상욱8/11/202314450.net wpf에서 skiasharp 의 skelement 를 canvas로 사용 하고 있습니다. [1]
5913김태우8/10/202314022지역변수로 이해하는 메서드매개변수 게시글 댓글 [3]
5912guest4/25/202319493[참고 - 초보용] Sqlite 디비는 double이 없고 Real이 대신합니다 [3]
5911guest4/24/202313212Form1.cs와 외부 class.cs와 통신 (static async method포함) [4]파일 다운로드1
5910guest4/24/202312558Async 메서드와 try~catch [1]
5909guest4/22/202314175Visual Studio 구매 시(1인 개발자) [4]
5908guest4/22/202313399텅빈 원그리기 [5]
5907민성4/21/202313398안녕하세요 서버 백업 문제에 대해서 [2]
5906guest4/21/202313665Dispatcher 서비스 구현 질문 [1]
5905guest4/20/202314737tabControl의 tabPage가 여러 개일 때 순서를 바꾸기가 까다롭네요 [5]
5904guest4/18/202315049[신규자료첨부] DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [4]파일 다운로드1
5903guest4/18/202313670fileSystemWatcher 이벤트 관련 질문입니다 [2]
5902guest4/17/202314819c#으로 USB 관련 질문 [2]
5901guest4/17/202312081내솔루션 판매 시 1.0.0.0 폴더와 Sqlite 배포 [5]
5900guest4/17/202315223DLL 'SQLite.Interop.dll'을 찾을 수 없습니다 [2]파일 다운로드1
5899guest4/17/202313204Dictionary와 Linq [4]
5898차가워4/17/202312793CNTK 교육 문의 [1]
5897guest4/17/202312392Socket스레드와 UI thread [4]
5896HAN4/16/202312467c언어 return 에 대해 궁금한게 있어요. [1]파일 다운로드1
5895guest4/15/202312704Drag and Drop - 모든 컨트롤 [2]
5894송부장4/14/202314659[질문] Visual Studio 2022에서 '도구 상자 항목 선택'의 'COM 구성 요소' 탭에서 ActiveX 목록이 보이지 않습니다. [3]파일 다운로드2
1  2  [3]  4  5  6  7  8  9  10  11  12  13  14  15  ...