[c#] 로컬 네트워크 어뎁터 IPv4 정보 획득

[c#] 로컬 네트워크 어뎁터 IPv4 정보 획득

프로그램
[c#] 로컬 네트워크 어뎁터 IPv4 정보 획득 각자 컴퓨터의 IP 세팅을 처음 하거나 세팅이후에 변경해야 될 값이 있어서 네트워크 정보에 들어가서 IP 정보를 수정해야 될 일이 있었는데 모두에게 반복된 이야기나 혹은 들어가는 순서를 PPT등을 제작을 해야 하는 불편함이 있어서 어려움이 있었습니다. 그래서 현재 세팅되어 있는 IP정보를 가져와서 IP, 서브넷마스크, 게이트웨이, DNS1, DNS2 번등의 정보를 모두 가져와서 쉽게 입력하고 많은 항목을 꼭 변경되야 될 항목만으로 제한하여서 프로그램을 주고 이 부분만 변경을 하고 적용 누르면 된다고 하니 모두들 편하게 할 수 있었습니다. 해당 프로그램을 만들던중 일단 기존 세팅된 정보를 가져오는 부분입니다.※ 네트워크 어뎁터(랜카드)가 1개라는 가정하에서 소스를 변경하였습니다. #정보 획득 부분 foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) { //Console.WriteLine(ni.Name); // Only display informatin for interfaces that support IPv4. if (ni.Supports(NetworkInterfaceComponent.IPv4) == true) { foreach (GatewayIPAddressInformation gipi in ni.GetIPProperties().GatewayAddresses) { string GeteWay = Convert.ToString(gipi.Address); MainForm.MainApp.InvokeText(MainApp.txtBox4,…
Read More

[JavaScript] 네이버 지도 API 이용하기

JavaScript
네이버 지도 API 이용하기 네이버 지도 API키를 발급 받아야만이 사용 가능합니다.발급 받을때는 사용할 도메인에 대해서 입력을 하기 때문에 키를 알아도 다른곳에 사용을 하기에는 무리가 있습니다. API key 발급 홈페이지 : http://developer.naver.com/wiki/pages/OpenAPI <script src="http://openapi.map.naver.com/openapi/naverMap.naver?ver=2.0&key=API Key"></script> 네이버 지도 API 이용시에 X,Y 좌표가 필요하기때문에 꼭 X,Y 좌표를 알아서 입력해 주시기 바랍니다.네이버 지도에서 좌표를 확일 할 수 있지만 API Key 가 있다면은 다음의 도메인으로 확인도 할 수 있습니다. UTF-8 형식을 사용하기때문에 요청할때 한글 인코딩 처리를 해야 합니다. http://openapi.map.naver.com/api/geocode?key=API Key&encoding=utf-8&coord=latlng&output=xml&query=한글 전체주소 위 주소로 요청할 경우에 다음과 같이 값이 리턴되어서 돌아 옵니다. <geocode> <result> <userquery>서울특별시 영등포구 의사당대로 1 국회의사당</userquery> <total>1</total> <items> <item> <address>서울특별시 영등포구 의사당대로 1 국회</address> <addrdetail> <country>대한민국</country> <sido>서울특별시</sido> <sigugun>영등포구</sigugun> <dongmyun>의사당대로</dongmyun> <rest> 1 국회</rest> </addrdetail> <isRoadAddress>true</isRoadAddress> <point> <x>126.9141499</x> <y>37.5320453</y> </point> </item> </items> </result> </geocode> 위 값을 가지고 DB에 저장을 해도 좋으며, 바로 javaScript에 넣어서 호출해도…
Read More

[PHP] CURL 설정

PHP
NAME CURLOPT_SSLVERSION - set preferred TLS/SSL version SYNOPSIS #include <curl/curl.h> CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLVERSION, long version); DESCRIPTION Pass a long as parameter to control which version of SSL/TLS to attempt to use. Use one of the available defines for this purpose. The available options are:   CURL_SSLVERSION_DEFAULT The default action. This will attempt to figure out the remote SSL protocol version. CURL_SSLVERSION_TLSv1 TLSv1.x CURL_SSLVERSION_SSLv2 SSLv2 CURL_SSLVERSION_SSLv3 SSLv3 CURL_SSLVERSION_TLSv1_0 TLSv1.0 (Added in 7.34.0) CURL_SSLVERSION_TLSv1_1 TLSv1.1 (Added in 7.34.0) CURL_SSLVERSION_TLSv1_2 TLSv1.2 (Added in 7.34.0) DEFAULT CURL_SSLVERSION_DEFAULT PROTOCOLS All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. EXAMPLE   CURL *curl = curl_easy_init(); if(curl) {   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");   /* ask libcurl to use TLS version 1.0 or later */   curl_easy_setopt(curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);   /* Perform the request */  …
Read More
Subscribe 설명서

Subscribe 설명서

프로그램
Subscribe 설명서 RSS를 구독하는것을 만들고 싶어서 이것 저것 하다가 뭔가 이상하게 방향이 잡혀 나갔지만은 그냥 기록을 해 놓으려고 한다. 분류도 나만의 분류를 만들어서 만들어서 사용을 할 수 있고, RSS 주소를 등록, 필요한 키워드를 등록해서 분류해 놓을 수 있다. 개발환경 : Windows10, .Net FrameWork 4.5 언어 : c# 테스트 환경 : Windows10, Windows7 1. 서버 구성 간단한 원리 입니다. PHP로 DB에 저장된 URL에 따라서 사이트에 접속하여서 해당 사이트 HTML소스를 가지고 옵니다. 이후에 HTML 파싱 작업을 해서 원하는 정보를 추출해서 DB에 저장을 해 놓으면은 사용자 프로그램이 특정 주소로 XML 요청을 하면은 해당 값을 찾아서 리턴을 해 주는것입니다. 사용자단에서 모두 처리해도 되지만은 일정한 시간마다 수집하고 어디서나 동일한 정보를 위해서 중간에 서버를 두고 서버에서 수집하고 있습니다. 2. 사용자 프로그램 실행 화면 #20150919   - 2주일간 RSS 수집된 내역을 요일별로 볼 수 있습니다.( 날짜는 원하는…
Read More

[c#] 어셈블리 버전 정보 확인

프로그램
using System.Reflection; Assembly assemObj = Assembly.GetExecutingAssembly(); Version v = assemObj.GetName().Version; // 현재 실행되는 어셈블리..dll의 버전 가져오기 int majorV = v.Major; // 주버전 int minorV = v.Minor; // 부버전 int buildV = v.Build; // 빌드번호 int revisionV = v.Revision; // 수정번호
Read More

[PHP] CURL을 이용한 RSS 파서

프로그램
RSS 2.0, RSS 1.0, ATOM 을 대용하기 위해서 한개의 파일로 만들려고 노력을 하였지만 잘 되지 않았습니다. <?php class RssParser { var $Agent = "MyAgent"; var $CookieNM = "./cookie.txt"; var $debug = false; function RssParser() { } function RssGet ($RssURL, $RssParam='') { $this->URL = $RssURL; $this->Param = $RssParam; $this->GetHeader(); $this->RssGetAccess(); $this->RssXMLLoad(); // xml 중 테이터가 있을 경우에만 결과값을 돌려줌 if(empty($this->xml->channel->title) == false) { return $this->MyParser(); } } function RssPost ($RssURL, $RssData) { $this->URL = $RssURL; $this->Data = $RssData; $this->ContentLength = strlen($this->Data); } function GetHeader() { //"GET ".$this->Param." HTTP/1.1", $this->Headers = array( "Content-type: application/xml;charset=\"utf-8\"", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language: ko-kr,ko;q=0.8,en-us;q=0.5,en;q=0.3", "Accept-Encoding: ", "Accept-Charset: EUC-KR,utf-8;q=0.7,*;q=0.7", "Keep-Alive: 300", "Connection: keep-alive", "" ); } /** * 실제 데이터 얻어 오는 부분 **/ function RssGetAccess() { $ch = curl_init(); curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, false); curl_setopt($ch, CURLOPT_URL, $this->URL); curl_setopt($ch, CURLOPT_HTTPHEADER, $this->Headers);…
Read More

[PHP] 한글 포함 여부 체크

프로그램
function includeHangul($str) { $cnt = strlen($str); for($i=0; $i<$cnt; $i++) { $char = ord($str[$i]); if($char >= 0xa1 && $char <= 0xfe) { return true; } } return false; } 위 코드를 실행 시키면은 다음과 같은 결과를 얻을수 있습니다. echo includeHangule('ㄴㄴㄴㄴㄴ_ㄴㄴ-zzzz'); // result : true / 1 echo includeHangule('abcdedczzdda'); // result : false / 0
Read More

[JavaScript] 구글 지도 이용하기

JavaScript
구글 지도 이용하기 먼저 자바스크립트를 로드합니다. 구글에서 가져오는게 가장 최신으로 가져 온다고 판단이 되기에 구글에서 자바스크립트를 로드 합니다. <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 내용을 가지고와서 로컬에 가져도 되지만은 링크하는게 좋을듯 합니다. 세계 최강의 검색업체인 구글인데 오류가 가장 적을듯 합니다. <script> //구글맵 v3 function initialize() { var geocoder = new google.maps.Geocoder(); var addr="정식 주소"; var lat=""; var lng=""; geocoder.geocode({'address':addr}, function(results, status){ if(results!=""){ var location=results[0].geometry.location; lat=location.lat(); lng=location.lng(); var latlng = new google.maps.LatLng(lat , lng); var myOptions = { zoom: 16, center: latlng, mapTypeControl: true, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); marker = new google.maps.Marker({ map:map, position: latlng }); } else $("#map_canvas").html("위도와 경도를 찾을 수 없습니다."); } ) } </script> 이렇게 하고 원하는 곳에 ID 값을 주면은 바로 로드 할 수 있을 것입니다.
Read More

[Windows] Windows Route 등록

Windows
Windows Route 등록 # 라우터 보기 netstat -nr 등록전에 metric 번호는 꼭 확인 하셔야 합니다 # 라우터 등록 route ADD 222.122.231.0 MASK 255.255.255.0 192.168.0.1METRIC 1 IF 12 -p route ADD 121.156.109.0 MASK 255.255.255.0 192.168.0.1METRIC 1 IF 12 -p route ADD 211.44.254.0 MASK 255.255.255.0 192.168.0.1METRIC 1 IF 12 -p route ADD 101.79.245.0 MASK 255.255.255.0 192.168.0.1METRIC 1 IF 12 -p route ADD 1.255.53.0 MASK 255.255.255.0 192.168.0.1METRIC 1 IF 12 -p route ADD 121.125.52.0 MASK 255.255.255.0 192.168.0.1METRIC 1 IF 12 -p # 지울때는 등록된 네트워크 주소를 적으면 됨 route delete 121.125.52.0
Read More