출저: 이스트소프트
'2019년 이전 정리 > 모바일 정보' 카테고리의 다른 글
하이브리드 앱 (웹앱) 이 최선 책인가? (0) | 2014.06.02 |
---|---|
토익 단어 스터디하기 편리한 앱 (0) | 2014.04.01 |
OAuth 란 (0) | 2013.12.12 |
phone gap 앱개발 (0) | 2013.03.29 |
개발자에게 도움될 만한 IT 기술 블로그 (0) | 2013.03.14 |
출저: 이스트소프트
하이브리드 앱 (웹앱) 이 최선 책인가? (0) | 2014.06.02 |
---|---|
토익 단어 스터디하기 편리한 앱 (0) | 2014.04.01 |
OAuth 란 (0) | 2013.12.12 |
phone gap 앱개발 (0) | 2013.03.29 |
개발자에게 도움될 만한 IT 기술 블로그 (0) | 2013.03.14 |
DLL 이란?
DLL이란 라이브러리를 말한다. 그럼 라이브러리란 함수,데이터, 타입등의 여러가지 프로그래밍 요소들의 집합이다. 보통 LIB로 표현된다.
자주사용되는 부분이 있다고 치자. 예를들면, 아이디 체크라든지, 이미지의 로딩이라던지, 그런 비슷한 부분을 프로그램을 한다
고 치면, 같은 부분을 여러번 소스를 작성하면 나중에 수정하기에 힘들뿐더러 당장 타이핑할때 손가락의 마비가 올수도 있다. 또한 여러번 작성함으로써 버그가 숨을 공간을 남긴다.
이러한 부분을 따로 DLL로 만들어 놓으면, 한번 코딩으로 여러군데서 동시에 쓰일수 있다.
또한 이렇게 만들어 놓은 좋은 DLL이 있다면, 새로운 프로그램을 빌드할때나, 실행할때 DLL의 도움을 받아 쉽게 작성할수 있으리라.
Unix나 Linux를 한사람들도 Dll이나, Lib 등은 알것이다. M$에서 만든것이 아니고, 여기에서 차용해 왔다고 그러더라.
간단히 요약하자.
DLL은 두가지 링크의 형태로써 프로그램과 연관을 맺는다.
정적링크 :
Lib로 빌드된다. 프로그램 빌드시에 같이 빌드가 되면서 해당 프로그램의 일부가 된다. 현실적으로는 속도가 동적링
크보다는 빠르다만, 크기가 커진다. 여러 프로그램이 같은 Lib를 쓴다면, 점점더 많은 메모리가 필요하다. 절대 공유하지 않는
다. 이미 프로그램의 일부로써 다른 프로그램과는 다른 영역에 존재한다. 프로그램 빌드시에 해당 함수및 변수, 데이타들이 프
로그램에 포함되기 때문에 프로그램의 실행시 Lib의 필요가 없다. (없어도 실행가능하다)
동적링크 :
DLL로 빌드된다.(그렇다고, Lib가 없다는건 아니다.) 프로그램의 빌드시에는 DLL안의 함수선언만 있으면 충분하다. 현실적으
로는 속도가 정적링크보다는 느리다고 할수 있지만, 크기가 커지는 것은 아니며, 여러 프로그램이 같은 DLL을 쓴다고 하더래도
DLL이 그 수만큼 메모리에 적재되는 것은 아니며, 공유해서 쓰게 된다. 타 프로그램도 읽을수 있는 메모리 공간에 따로 할당이
된다. 프로그램 빌드시에는 해당 함수에 대한 선언만이 존재할뿐이어서 실제 코드가 링크된 DLL파일이 없는이상 프로그램이 실
행되지 않는다.
레지스트리란?
‘레지스트리’는 윈도우 운영체제의 실행, 또는 각종 윈도우용 응용프로그램의 실행에 필요한 설정
값들을 한데 모아 놓은 데이터베이스입니다.
레지스트리는 윈도우OS 만의 고유한 정보저장 체계이며, 레지스트리 내의 각 위치마다 어떤 정보가
어떤 형식으로 저장되어야 하는지의 규칙이 정해져 있습니다.
저장된 레지스트리 정보는 OS나 프로그램에 의해 읽혀지고 수정되면서 다양하게 활용됩니다. 윈도우
의 각 계정 별로 바탕화면을 다르게 설정하거나, MP3 확장자를 실행할 때 사용자 별로 기본 음악플
레이어를 다르게 정할 수 있는 것도 모두 레지스트리의 특정 위치에 이러한 규칙을 지정하는 값들이
존재하기 때문입니다.
레지스트리라는 표준화된 정보저장소가 존재함으로 인해 대부분의 윈도우용 응용프로그램들이 더 효
율적이고 간결한 구조를 가질 수 있습니다. 다만 레지스트리에 대한 의존도가 그 만큼 높기 때문에
레지스트리를 잘못 변경하거나 삭제하게 되면 필요한 정보를 얻지 못한 프로그램이 실행되지 않거나
비정상적으로 동작할 수 있습니다.
예를 하나 들면 어느 사용자가 A’ PC에 설치된 사진편집 프로그램의 폴더를 찾아 폴더 내용을 그대
로 복사해서 B’ PC로 옮긴다면, 복사된 사진편집 프로그램은 제대로 실행되지 않습니다.
이는 정상적인 설치과정을 거치지 않고 사진편집 프로그램 폴더의 파일만 복사를 했기 때문에 A’
PC에 세팅된 레지스트리 정보가 B’ PC에 정상적으로 세팅되지 못했기 때문입니다.
레지스트리에는 사용자 설정과 각 하드웨어, 소프트웨어의 설정 값이 저장되기도 하지만 시스템과
애플리케이션의 동작 기록 및 사용자의 윈도우 사용기록을 남김으로 시스템운영에 필요한 로그의 기
능을 하기도 합니다.
등록된 DLL 보기
레지스트리 편집기는 열기. 실행창에서 regedit 를 입력.
아래 레지스트리 경로에서 레지스트리에 등록된 DLL의 목록을 볼 수 있다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs
[출처] 레지스트리에 등록된 DLL 목록보기|작성자 모아이
참고:
http://blog.daum.net/kiswiz/13
http://alyac.altools.co.kr/SecurityCenter/Issue/CommonSenseView.aspx?id=58
[C#] using 문 이해하기 (0) | 2014.04.24 |
---|---|
ASP 날짜 Now(), Date(), Time(), FormatDateTime() (0) | 2014.02.28 |
[ASP] instr 문자열 찾기 (0) | 2014.02.18 |
[ASP] 프로시저 Call, Sub, Function (0) | 2014.02.11 |
[ASP] With End With 문법 (0) | 2014.02.10 |
str = "1234 5678 91021 3568"
isNa = Instr(str,"l3568")
Response.Write isNa
ASP 날짜 Now(), Date(), Time(), FormatDateTime() (0) | 2014.02.28 |
---|---|
DLL 이란/ 레지스트리란/ 등록된 DLL 목록 보기 (0) | 2014.02.26 |
[ASP] 프로시저 Call, Sub, Function (0) | 2014.02.11 |
[ASP] With End With 문법 (0) | 2014.02.10 |
[ASP] 기본문법 (DIM, SET 등) (0) | 2014.02.10 |
Null 값일 때, 다른 값으로 바꿔주는 함수로 oracle에서는 nvl()함수를 사용하고,
MS-SQL에서는 isnull()함수를 사용하면 됩니다.
예)
NVL(SUM(mileage),0) as mileage
Oracle DISTINCT, GROUP BY (1) | 2014.02.07 |
---|---|
Oracle DECODE 함수 (0) | 2014.02.06 |
SELECT *
FROM Orders order by CustomerID
OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|
10308 | 2 | 7 | 1996-09-18 | 3 |
10365 | 3 | 3 | 1996-11-27 | 2 |
10355 | 4 | 6 | 1996-11-15 | 1 |
10383 | 4 | 8 | 1996-12-16 | 3 |
10278 | 5 | 8 | 1996-08-12 | 2 |
SELECT *
FROM Customers
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constituci� 2222 | M�ico D.F. | 05021 | Mexico |
3 | Antonio Moreno Taquer� | Antonio Moreno | Mataderos 2312 | M�ico D.F. | 05023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
두개를 LEFT OUTER JOIN 하게 되면
SELECT *
FROM Customers a
LEFT JOIN Orders b
ON a.CustomerID=b.CustomerID
ORDER BY Customers.CustomerName;
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country | OrderID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany | null | null | null | null |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constituci� 2222 | M�ico D.F. | 05021 | Mexico | 10308 | 7 | 1996-09-18 | 3 |
3 | Antonio Moreno Taquer� | Antonio Moreno | Mataderos 2312 | M�ico D.F. | 05023 | Mexico | 10365 | 3 | 1996-11-27 | 2 |
결과에서 보면 LEFT OUTER JOIN 은
ON CustomerID 를 기준으로 Orders 테이블과 일치하는 레코드가 없으면, Orders 테이블의 모든 컬럼이 담긴 row에 NULL을 넣는다
[MS-SQL] 실행계획 Nested Join Merge Join 문제해결 (0) | 2015.02.25 |
---|---|
[SQL] dateadd 문법 (0) | 2014.02.10 |
Call OpenConn_mall(conn)
Call OpenConn_ora(oraConn)
Call은 Sub, Function 을 호출 할 때 사용합니다.
w3schools 에서 의미를 찾아보면,
-> ASP 내 자바스크립트를 호출 할 수 있다.
<!DOCTYPE html>
<html>attend_write.asp
Call OpenConn_mall(conn)
dbconn_mall.asp
Sub OpenConn_mall(conn)
Set conn = Server.CreateObject("ADODB.Connection")
conn.open("xxxxxxxxxxxxx");
End Sub
DLL 이란/ 레지스트리란/ 등록된 DLL 목록 보기 (0) | 2014.02.26 |
---|---|
[ASP] instr 문자열 찾기 (0) | 2014.02.18 |
[ASP] With End With 문법 (0) | 2014.02.10 |
[ASP] 기본문법 (DIM, SET 등) (0) | 2014.02.10 |
[ASP.NET] MVC 장점 (0) | 2014.02.03 |
dateadd( 날짜형식(yy,mm,dd,hh), 숫자, 날짜)
지정된 날짜에서 지정된 숫자만큼, 지정된 날짜형식을 변환시키겠다 라는 말이다.
dateadd(yy, 10, '2012-02-13") 결과 : 2020-02-13
dateadd(d, 10, '2012-02-13") 결과 : 2012-02-23
특정 시간이 됐을 때 이벤트가 발생하는 where 절이다.
아래 보면 2014년 1월 2일에 00시에 이벤트가 발생.
아직 이벤트 시간이 안됐으면 발생 안함. where 절에 사용
where dateadd(hh, convert(int,evt_stime),convert(datetime,evt_sdate)) < getdate()
해석: dateadd(hh, 00, 2014-01-02) < 현재시간()
[MS-SQL] 실행계획 Nested Join Merge Join 문제해결 (0) | 2015.02.25 |
---|---|
[MSSQL] LEFT OUTER JOIN 예제 (0) | 2014.02.13 |
With ~ End With 문
여러 문장에 걸쳐 동일한 객체의 문장이 있을 경우 With문을 사용하면 객체의 이름을 여러번 입력하지 않아도 된다.
. 객체의 속성이나 메서드로 구성된 하나 이상의 문장
예)
With object
.name
.age
End With
DLL 이란/ 레지스트리란/ 등록된 DLL 목록 보기 (0) | 2014.02.26 |
---|---|
[ASP] instr 문자열 찾기 (0) | 2014.02.18 |
[ASP] 프로시저 Call, Sub, Function (0) | 2014.02.11 |
[ASP] 기본문법 (DIM, SET 등) (0) | 2014.02.10 |
[ASP.NET] MVC 장점 (0) | 2014.02.03 |