GSI

3D 프린터기나 CNC를 만들기 위해서 벨트 방식이나 스크류 방식을 사용하게 되면

해당 1.8도(1펄스) 회전이 몇mm를 가는지 알아야 한다. 

이런걸 계산해 주는 사이트가 있어서 그 사이트 링크 정보를 기록한다.

스테핑모터 벨트 방식 계산 화면(참고)

https://blog.prusaprinters.org/calculator/

Posted by gsi
:

Visual Studio Code를 최초 깔고 나서 

이것저것 하면서 디버깅을 해도 이상하게 안되는 부분들이 존재

 

이분글 보고 대충 파악됨

https://codens.info/1671  <--- 참고하세요.

 

 

중요한건

> Chrome 설치 되어 있어야하고

> Extension에 Debugger for Chrome 설치 되어 있어야 하고

 

이후 샘플 코드 추가후

html, js 파일 만들고 나서 F5를 눌러서 Chrome를 선택하면 launch.json 파일이 만들어 진다.

여기에 아래 내용으로 수정

 

{

// Use IntelliSense to learn about possible attributes.

// Hover to view descriptions of existing attributes.

// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387

"version": "0.2.0",

"configurations": [

{

"name": "Launch index.html",

"type": "chrome",

"request": "launch",

"file": "${workspaceFolder}/index.html"

},

{

"name": "Attach Chrome",

"type": "chrome",

"request": "attach",

"port": 9229,

"url": "http://localhost/index.html",   <-- 여기에 index.html을 시작하는 html이름으로 변경

"webRoot": "${workspaceFolder}/index.html"    <-- 여기도 시작 html을 변경해준다.

},

]

}

Posted by gsi
:

매번 작업 하지만 막상 할때 되면 잊어 먹는 부분이네요.

Windows Server 2016 .NET Framework 3.5 설치 하는 방법 입니다.


서버 관리자 > 역활 및 기능 추가 를 눌러 줍니다.


역활 및 기능 추가 마법사 창이 열립니다.

다음 을 누르세요.


다음 을 누르세요.


다음 을 누르세요.


서버 역활에서는 추가 할게 없으니 무시하고

다음 을 누르세요.


.NET Framework 3.5 Features 를 체크 합니다.

다음 을 누르세요.


설치 을 누르세요.


설치가 다 되고 나면

닫기 을 누르세요.


끝!!!









Posted by gsi
:

근접센서 OSG-105LF 입니다.

0.8mm ~ 1.2mm 의 거리를 감지합니다.


[회로도]


[PCB에 조립한 사진]



Posted by gsi
:

testJson 변수에 해당 문자열을 담고

아래쪽에서 화면에 출력해 보는 내용입니다.

한개씩 값을 가져와야할 경우는

Info.Get("lastname") 를 사용하면 됩니다.


이 부분을 사용하기 위해서는 json2.asp가 필요 합니다. (첨부확인)


[인클루드]

<!--#include virtual="json2.asp"-->


[본문]

'json test

testJson = "{""firstname"":""Fabio"", ""lastname"":""長尾""}"


'json 타입으로 값을 가져오는 방법

dim Info : set Info = JSON.parse(testJson)

Response.write( JSON.stringify(Info, null, 2) & vbNewline ) ' prints the text below:

Response.Write "<br/>"

Response.Write Info.Get("lastname")

set Info = nothing


Posted by gsi
:

인스톨쉴드에서 설치다되고나서 특정파일 실행하기 위한 방법



위와 같이 InstallScriptProject로 만드셔야 합니다.



다른 부분들은 다 아실겁니다.

해당 파일들을 추가하고 나서 위의 이미지와 같이 InstallScript 에서 OnMoved() 함수 안에 위의 코드를 추가 하면 됩니다.


//---------------------------------------------------------------------------

// OnMoved

//

// The OnMoved event is called as a result of the setup calling

// FeatureTransferData or FeatureMoveData. The event is called when

// all file transfer operations are completed except for batch

// self-registration which is performed immediately after this event returns.

// During uninstallation this event sent after uninstallation is completed,

// therefore you should not modify system state in this event.

//---------------------------------------------------------------------------

function OnMoved()

string svDir;

begin       

svDir = TARGETDIR^"aaaa.exe";

if(LaunchAppAndWait(svDir, "", WAIT) < 0) then

//MessageBox("aaa", SEVERE);

//else

// MessageBox("bbb", SEVERE);

endif;

end;

//---------------------------------------------------------------------------

// OnMoved




Posted by gsi
:

bufferStr = "abcdefgh"


response.write LEFT(bufferStr, 4) & "<br>"

response.write MID(bufferStr, 5, 2) & "<br>"

response.write RIGHT(bufferStr, 4) & "<br>"


[결과]

abcd

ef

efgh





Posted by gsi
:

[asp 에 지메일 연동 방법]

  • 2차 보안설정만 하고 2차 보안설정은 하지 않음
  • 보안 수준이 낮은 앱의 엑세스가 가능하게 처리
  • 전달 및 POP/IMAP에 별도 설정은 하지 않아도 발송되는부분은 확인했습니다

지메일 설정항목은 아래 부분을 참조 하시면 됩니다.
  • 발신 메일(SMTP) 서버 - TLS 필요
    • smtp.gmail.com
    • 포트: 465 또는 587
    • SSL 필요: 예
    • 인증 필요: 예
    • 받는 메일 서버와 동일한 설정 사용
  • 이름 또는 표시 이름: [사용자 이름]
  • 계정 이름 또는 사용자 이름: 전체 Gmail 주소(username@gmail.com). Google Apps 사용자는 username@your_domain.com을 입력하세요.
  • 이메일 주소: 전체 Gmail 주소(username@gmail.com). Google Apps 사용자는 username@your_domain.com을 입력하세요.
  • 비밀번호: Gmail 비밀번호


메일 발송이 되지 않을시 아래 보안 수준이 낮은 앱을 사용 처리로 하면 정상적으로 발송이 되실거예요.


[ASP 소스]


<!--#Include Virtual="/Include/initialize.asp"-->

<!--#Include Virtual="/Include/DBCon.asp"-->

<!--#Include Virtual="/Include/Common.asp"-->


<!-- 메일 전송 -->

<%

'/////////////////////////////////////////////////////////////////

'SMTP 기본정보 입력

SMTP_USER = "유저아이디"

SMTP_PASS = "비밀번호"

SMTP_SERVER = "smtp.gmail.com"

SMTP_PORT = 465 ' SMTP 포트번호

SMTP_EMAIL_CERT_HTTP = "리턴받을 웹주소"


'// GUID 생성해서 값을 리턴하는 함수

Function fnGetGUID()

Dim myTypeLib

Set myTypeLib = Server.CreateObject("Scriptlet.Typelib")

fnGetGUID = myTypeLib.guid

Set myTypeLib = Nothing

End Function


'// GUID 생성하기

Dim strGUID

'// 좌우 {} 빼기

strGUID = Trim(fnGetGuid())

strGUID = Left(strGUID, Len(strGUID)-3)

strGUID = Right(strGUID, Len(strGUID)-1)

'Response.Write strGUID & "<br/>"


' 호출주소와 guid를 합친다.

SMTP_EMAIL_CERT_HTTP = SMTP_EMAIL_CERT_HTTP & strGUID

'Response.Write SMTP_EMAIL_CERT_HTTP


' Body

htmlBody = "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'>"

htmlBody = htmlBody & "<HTML>"

htmlBody = htmlBody & "<HEAD>"

htmlBody = htmlBody & "<TITLE> 이메일 인증 </TITLE>"

htmlBody = htmlBody & "</HEAD>"

htmlBody = htmlBody & "<BODY>"

htmlBody = htmlBody & "<table border='0' cellpadding='0' cellspacing='0' width='720' style='font-family: '맑은 고딕', '돋움', 'Dotum', sans-serif;font-size: 14px; font-weight: 400;text-align: left; background-color: #202835; color:#BFC1C5;-webkit-font-smoothing: antialiased;'>"

htmlBody = htmlBody & "<tbody>"

htmlBody = htmlBody & "<tr>"

htmlBody = htmlBody & "<td style='font-family: '맑은 고딕', 'Malgun Gothic', '애플산돌고딕네오', 'AppleSDGothicNeo', '애플고딕', 'AppleGothic', '돋움', 'Dotum', sans-serif;text-align: left; background-color: #242D3D; border-top-width: 1px; border-top-style: solid; border-top-color: #3E424E; color: #BFC1C5; padding: 0 30px 0 30px;'>"

htmlBody = htmlBody & "<br>" & SMTP_USERID & " 님, 안녕하세요.<br> <br>"

htmlBody = htmlBody & "이메일 주소를 인증하려면 아래 링크를 클릭해 주세요.<br>"

htmlBody = htmlBody & "<a href='" & SMTP_EMAIL_CERT_HTTP & "' target='_blank'>메일 인증하기</a><br> <br>"

htmlBody = htmlBody & "</td>"

htmlBody = htmlBody & "</tr>"

htmlBody = htmlBody & "</tbody>"

htmlBody = htmlBody & "</table>"

htmlBody = htmlBody & "</BODY>"

htmlBody = htmlBody & "</HTML>"


'Response.Write htmlBody


'이메일 smtp

Set iConf = Server.CreateObject("CDO.Configuration")

Set Flds = iConf.Fields

With Flds

        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = SMTP_SERVER

        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = SMTP_PORT

        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1

        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = SMTP_USER

        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = SMTP_PASS

        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = 1

        .Update

End With

Set CDOMail = server.CreateObject("CDO.Message")

Set CDOMail.Configuration = iConf

CDOMail.From = "<userid@gmail.com>"  ' 자신의 E-mail 주소를 쓰세요

CDOMail.To = "<userid@gmail.com>"   ' 받는이도 자신의 E-mail 주소를 쓰세요

CDOMail.Subject = "인증 메일 입니다. 확인해 주세요."

CDOMail.HtmlBody = htmlBody

CDOMail.Fields.update

CDOMail.Send

response.write "발송완료"

Set Flds   = Nothing

Set iConf = Nothing

Set CDOMail = Nothing

%>



이상입니다.






Posted by gsi
:

[윈도우 서버 R2 보안강화 해제방법]



위와 같이 보안강화 구성 사용 상태가 되면 서버에서 인터넷 익스플로러를 열면 좀 귀찮아 집니다.

이 부분은 아래와 같이 해제하면 됩니다.



관리도구 > 서버 관리자 를 클릭 합니다.



왼쪽 탭에서 서버 관리자를 클릭 합니다.

오른쪽 보안 정보 탭에 IE ESC 구성 을 클릭 합니다.



사용안함 체크



위와 같이 인터넷 익스플로러를 열어서 보안 강화 구성이 사용되지 않습니다. 라는 메시지를 확인하면 됩니다.


이상입니다.




Posted by gsi
:


해결 방법은 아래와 같습니다.


보통 1번으로 다 해결됩니다.

혹시 5번에 해당 항목이 있는지 확인해 보세요.


작업 방법 1. 인터넷 옵션 설정 확인

  1. 모든 Internet Explorer 창을 닫습니다.
  2. [제어판 - 인터넷 옵션 - 고급 탭]에서 '원래 대로' 클릭 합니다.
  3. 설정이 완료 되었다면 '닫기' 클릭 합니다.
  4. 다시 인터넷 옵션에서 연결 탭 클릭 합니다.
  5. "전화(광대역)연결 및 VPN(가상 사설망) 설정" 항목에 추가되어 있는게 있다면 선택하여 제거 합니다.
  6. 하단의 "LAN 설정" 클릭 하여 "자동으로 설정 검색" 외에 다른 항목이 체크 되어 있다면 체크 해제 합니다.

 

작업 방법 2. Reset Proxy Cache

  1. [시작 -> 모든 프로그램 -> 보조프로그램 -> 명령 프롬프트오른쪽마우스 클릭 후 '관리자 권한으로 실행클릭합니다.
  2. 아래 명령어 입력 후 엔터 합니다.
    netsh winhttp reset proxy


Posted by gsi
:

dat 파일을 받기 위해서 iis에 웹을 셋팅하고 받으려고 할때 아래와 같은 오류가 날때가 있다.


구글 크롬에서는 위와 같이 깨지게 나올때도 있다.


익스플로러에서 인코딩을 유니코드로 해보면

내부 서버 오류가 발생했기 때문에 페이지를 표시할 수 없습니다.

깨지지 않은 오류 메시지를 보실 수 있습니다.


dat 파일을 다운로드 받을려고 하는데 안되는 경우이기 때문에

MIME 쪽 설정을 봐야 합니다.


위와 같이 .dat 파일이 등록이 되어 있지만 

안되는 경우가 존재를 합니다.

원래 이렇게 등록이 되어 있으면 되야 하지만 안되니 아래를 더 확인해 봐야 합니다.


web.config 를 체크 해봅니다.

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

    <system.webServer>

        <staticContent>

            <mimeMap fileExtension=".dat" mimeType="application/x-msdownload" />

        </staticContent>

        <defaultDocument>

            <files>

                <add value="index.asp" />

            </files>

        </defaultDocument>

        <httpErrors errorMode="Detailed" />

    </system.webServer>

</configuration>


위와 같이 .dat 구문이 있다면 충돌이 일어 나게 된다.
이렇게 되면 아래와 같이 조치를 한다.

MIME 설정창에서 .dat 파일을 지웁니다.
그리고 iis를 재시작을 하게 되면 
web.config 에 있던 .dat 파일이 자동으로 등록되고 
web.config 에는 없어지게 되어 있습니다.
-- 이상입니다. --


Posted by gsi
:


url 파일을 하나 만들어서 인스톨 쉴드를 통해서 배포를 했는데
설치한 pc에서 해당 url이 바탕화면에 깔리긴 하는데.
이상하게 아이콘 이미지가 나오지 않았다.

제작을 할때 바로가기 아이콘을 하나 만든 다음에 ico 를 해당 url 파일 속성에서 아이콘 변경을 통해서
처리를 했다.
근데 문제는 여기서 발생했는데 ico 파일을 메모장에서 열어 보면 아래와 같은 경로 입력 부분이 나오게 된다.

[InternetShortcut]
URL=http://www.test.co.kr/
IDList=
IconFile=C:\Program Files\JupiterSoft\test\bb.ico
HotKey=0
IconIndex=0
[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,2

위와 같이 IconFile 쪽에 내가 설치한후 ico 파일이 있는 경로를 적어 줘야
다른 pc에서 제대로 나오는걸 확인 했다.

Posted by gsi
:



VC++ 2008을 작업 하다 보면 다른 pc에서 이런 오류 메시지를 종종 보게 된다.
이때 해결 방법은 몇가지로 나눠 진다.

1. DLL을 같이 배포
  - C:\Program Files\Microsoft Visual Studio 9.0\VC\redist 폴더 안에 있는 debug, release 의 내용을 복사해서 같이 배포 한다.
  - 사실 이렇게 해봤지만. 되지 않을때가 많다.

2. 배포 패키지를 사용
  - 어떤 개발툴(2005, 2008) 둘중에 하나를 쓰게 되는데요. 이때 선택해서 배포 패키지를 깔아서 써야 한다.




  - 위의 3개 중에서 내가 테스트 할때는 2008로 개발했을때인데.. 이때 sp1 빼고 2008 배포 패키지만 깔아도 될때도 있었다.

Tip :
  - 컴파일 할때 보면 "다중 스레드 디버그 DLL", "다중 스레드 디버그" 두개가 실행파일의 dll 관계를 보면 좀 틀려 보이긴 한다. 어쩔땐 이걸 해결하면 될때도 있다.. 쩝.. 너무 귀찮다.

[아래 화면은 Tip에 적어 놓은, 걸 Depends로 찍어 본것..]
Posted by gsi
:


Posted by gsi
:


게임의  UI 는 아무래도 라이브러가 제공되지 않고서는
구축, 제어가 어려운거 같다.

Ogre3D 게임엔진을 사용해서 지금 프로젝트를 진행하면서
Flash가 지원되지 않는지 보다 보니 역쉬 지원 되는게 있었다.
어찌 보면 UI쪽의 개발 기간을 단축할 수 있기 때문에,
다행인듯 하다.

해당 자료 링크 : Hikary-Flash-Library
Posted by gsi
: