Microsoft MVP성태의 닷넷 이야기
uwp에서 TcpListener를 사용할 수 없나요? [링크 복사], [링크+제목 복사],
조회: 11251
글쓴 사람
문성운
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

안녕하세요

하단의 코드 처럼 정말 단순한 코드를 작성해서 돌려봤는데, 클라이언트 측에서 연결 대기하다 응답없음 에러가 발생하며 중단됩니다.
코드에는 문제가 없을 것으로 생각됩니다. 코드를 그대로 복사하여 .NET Framework에서 돌려본 결과는 아래와 같습니다.

.NET 서버 <-> .NET 클라이언트 = 성공
.NET 서버 <-> UWP 클라이언트 = 성공
UWP 서버 <-> UWP 클라이언트 = 실패
UWP 서버 <-> .NET 클라이언트 = 실패
(.NET은 VisualStudio 2013로 UWP는 2017 평가판으로 작성했습니다.)

uwp의 TcpListener가 문제가 있는 것 같은데.. 해결 방법을 모르겠습니다.

구글링 해보니 보안상 uwp의 루프백 연결이 막혀있다고 하더라구요, 그래서 checknetisolation loopbackexempt -a -n= 명령어로 루프백 연결 허용도 해봤는데도 결과는 같았습니다. 혹시나 해서 라즈베리파이3 b+에 윈도우10 iot 올리고 여기에 uwp 서버 코드 넣구 제 PC에서 접속시도 해봤는데도 안됬습니다.

감사합니다...


// Server

        public MainPage()
        {
            this.InitializeComponent();

            this.ServerTest();
        }

        private async void ServerTest()
        {
            TcpListener server = new TcpListener(IPAddress.Any, 2345);
            server.Start();

            Debug.WriteLine("서버 시작");
            var client = await server.AcceptTcpClientAsync();
            Debug.WriteLine("서버 성공");
        }

// Client

        public MainPage()
        {
            this.InitializeComponent();

            this.ClientTest();
        }

        private async void ClientTest()
        {
            TcpClient client = new TcpClient();

            Debug.WriteLine("클라이언트 시작");
            await client.ConnectAsync("127.0.0.1", 2345);
            Debug.WriteLine("클라이언트 성공");
        }


[연관 글]






[최초 등록일: ]
[최종 수정일: 11/14/2018]


비밀번호

댓글 작성자
 



2018-11-14 02시07분
[문성운] 해결했습니다.
[guest]
2018-11-14 02시08분
[문성운] uwp는 프로젝트 내에 Package.appxmanifest 파일에서 앱의 기능/권한을 설정하게 되어있네요. 여기에서 인터넷(클라이언트/서버)를 체크하니 되었습니다.
[guest]
2018-11-14 02시09분
[guest]
2018-11-14 10시22분
@문성운 그러니까, 외부 PC로부터의 TCP 서버 접근이 성공했다는 것이죠? 저도 테스트를 해봤는데,

UWP 앱에서 한 컴퓨터(localhost, 127.0.0.1) 내에서의 소켓 연결
; http://www.sysnet.pe.kr/2/0/11778

같은 PC 내에서는 TCP Server로의 접속이 안 되었습니다.
정성태
2018-11-15 10시58분
[문성운] 네 ㅎㅎ 노트북 하나 더 가져와서 테스트 했습니다.
라즈베리파이 이용해서 테스트 했을 때 안됬던 이유는 <Capability Name="internetClientServer" /> 이거 권한추가를 안해줘서 그랬던 것이 였구요.
정리 정말 잘해주셨네요. 감사합니다.
[guest]

... 16  17  18  19  20  21  22  23  24  25  26  [27]  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
5230질문9/23/20198599C++ 로 만든 dll 을 C#에서 사용할 때 질문 [2]
5229fox3...9/23/201911038C# 메모리맵드파일 관련 질문드립니다. [2]
5227세퉁9/23/20199750WPF Textblock 폰트 크기에 따라 글자 색이 깨지는 현상이 있습니다. [3]파일 다운로드1
5226김대훈9/23/20199025정말 황당한 경우입니다.. [2]
5223김태균9/19/20199156책 소개 링크가 7.1버전판으로 이어집니다. [1]
5222냥냥이9/14/20199666프로그래밍 논리력이 많이 부족합니다 [3]
5219티지레몬9/9/201911224c# PCB 자동화 프로그램(윈도우 폼 위주로 작업) 제작 준비 [3]
5218민성9/9/20199264안녕하세요 WPF에서 xaml 안에 다른 xaml을 넣고 싶습니다. [1]파일 다운로드1
5216WPF9/8/201910384WPF에서 XAML Islands를 사용하여 Win2D를 사용하니 그래픽 품질이 저하됩니다. [2]파일 다운로드1
5215허송세월9/5/201910117중복실행 방지 관련 문의 [2]파일 다운로드1
5214Jang...9/4/20199778[DB 테이블의 데이터 변경에 대한 알림 처리] SQL-Server말고 MySQL은 불가능하겠죠? [1]
5213진우8/31/20198923c# 람다 변수 캡쳐 문의 [2]
5212심성보8/29/201910641Clipboard내 여러개의 이미지를 PictureBox로 불러오는 문제 [2]
5211최휘철8/24/20199715CLR20r3 관련된 윈도우 오류입니다. ㅠㅠ 도와주세요. / 아래글 관련하여 관련 파일 올려 드려요^^ [1]파일 다운로드1
5210최휘철8/23/201913962CLR20r3 관련된 윈도우 오류입니다. ㅠㅠ 도와주세요. [5]
5209세퉁8/21/20199460폰트 파일 속성 값을 가져오는 방법 질문 드립니다. [2]파일 다운로드1
5208홍길동8/19/201910005DebugDiag에서 .Net의 Stack Trace를 Windbg에서는 어떻게 볼 수 있나요? [3]
5207민성8/16/20198402네 소스 전체를 올리도록 하겠습니다. [2]파일 다운로드1
5206민성8/14/20198630전 재현 가능하다고 봤는데 다시올리도록 하겠습니다. [1]
5205miny...8/14/20199209안녕하세요 .WPF ListBox시 체크박스가 있는데 체크박스에서 체크가 되었는지 알수 있는 방법이 있을까요? [1]
5204영민8/8/201912142안녕하세요 디버깅시 콘솔창을 띠어서 볼수가 없나요? [7]
5202민성8/6/20198787WPF에서 <Application.Resources에 xaml에 있는 icon 값을 저장하고 xaml에 불러다 사용하고 싶은데요 [1]
5201김대훈8/3/20198622상속시 생성자에 대해 질문드립니다 [3]
5200농상7/30/201911440foreach로 데이터 변경 [2]
5190오리다람7/20/20198764질문드립니다. [3]
5189진우7/19/20199341C# 스레드풀 코어별 실행 문의 [2]
... 16  17  18  19  20  21  22  23  24  25  26  [27]  28  29  30  ...