Microsoft MVP성태의 닷넷 이야기
nsis파일 수정중에요! [링크 복사], [링크+제목 복사]
조회: 12517
글쓴 사람
김솔
홈페이지
첨부 파일
 

nsis파일을 수정하고 있습니다.

xp환경인 경우를 파악해서, .net Framework 3.5여부를 판단하여 설치가 안되어있으면 설치하라는 메시지 창을 주고 싶습니다.

xp환경인 경우는 어찌어찌해서 되었는대.

.net Framework 3.5여부 판단이 몇시간째 되지 않고 있습니다.ㅜㅠㅜ

어떤식으로 해야하는지 알려주십시여.ㅜㅜㅜ

Function .onInit
 
  Push $R0
  Push $R1
 
  ClearErrors
 
  ReadRegStr $R0 HKLM \
  "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion
 
  IfErrors 0 lbl_winnt
 
  ; we are not NT
  ReadRegStr $R0 HKLM \
  "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber
 
  StrCpy $R1 $R0 1
  StrCmp $R1 '4' 0 lbl_error
 
  StrCpy $R1 $R0 3
 
  lbl_winnt:
 
  StrCpy $R1 $R0 1
 
  StrCmp $R1 '3' lbl_winnt_x
  StrCmp $R1 '4' lbl_winnt_x
 
  StrCpy $R1 $R0 3
 
  StrCmp $R1 '5.0' lbl_winnt_2000
  StrCmp $R1 '5.1' lbl_winnt_XP

  StrCmp $R1 '6.1' lbl_winnt_7 lbl_error
 
  lbl_winnt_x:
    StrCpy $R0 "NT $R0" 6
 
  Goto lbl_done
 
  lbl_winnt_2000:
    Strcpy $R0 '2000'
MessageBox MB_OK|MB_ICONQUESTION "Windows 2000" IDOK
Quit
    Goto lbl_done
 
  lbl_winnt_XP:
    Strcpy $R0 'XP'
MessageBox MB_OK|MB_ICONQUESTION "Windows XP" IDOK

Quit
    Goto lbl_done
 
  lbl_winnt_2003:
    Strcpy $R0 '2003'
MessageBox MB_OK|MB_ICONQUESTION "Windows 2003" IDOK
Quit
    Goto lbl_done
 
  lbl_winnt_vista:
    Strcpy $R0 'Vista'
MessageBox MB_OK|MB_ICONQUESTION "Windows Vista" IDOK
Quit
    Goto lbl_done
 
  lbl_winnt_7:
    Strcpy $R0 '7'
;MessageBox MB_OK|MB_ICONQUESTION "Windows 7" IDOK
;Quit
 ; Goto lbl_done
 
  lbl_error:
    Strcpy $R0 ''
  lbl_done:
 
  Pop $R1
  Exch $R0
 
;Quit
FunctionEnd

Section "-boo"
;
SectionEnd


이게 xp환경일 경우, 메시지 박스 띄우는 것인대...!!!

.net Framework에 관한것을 어케 해야하는지 감이 안잡힙니다..ㅜㅜㅜ

nsis수정하는게 처음하는거라..막막해서요ㅠㅠ








[최초 등록일: ]
[최종 수정일: 8/18/2014]


비밀번호

댓글 작성자
 



2014-08-18 03시14분
[정환나라] nsis를 왜 여기다가 질문 하시는지...

레지스트리 뒤져서 윈도버전 얻은것처럼
레지스트리에 닷넷이 저장되는 부분이 있습니다.
그래서 위 윈도버전 확인처럼, 닷넷버전 확인하는 부분이 있으니 존재 유무 확인하셔서 확인하는 방법과,

닷넷이 설치되면 설치되는 폴더에 대한 존재유무 등을 복합적으로 확인해서 체크하는것도 있습니다.
[guest]
2014-08-18 03시15분
저도 nsis를 잘 모릅니다. ^^
정성태

... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...
NoWriterDateCnt.TitleFile(s)
4878heyh...8/25/201710039프로세스의 프로세스 찾기(?) [2]
4877강준8/24/20179269SQLite journal_mode=wal 관련하여 질문드립니다. [1]
4876heyh...8/23/20179481프로세스 초기화하기 [1]
4874ho8/22/20179574파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4875ho8/23/201710549    답변글 [답변]: 파일 확장자명을 이용해 파일의 실행 프로그램의 전체 경로를 얻어 올 수 있을까요? [1]
4873kmi8/21/201711351전역 변수를 쓰지 않고 여러 군데에서 같은 변수를 공용하는 방법이 궁금합니다. [4]
4872abcd8/18/201710021프로세스를 초기화 하는 명령어도 있나요? [1]
4871kmi8/17/201711344메모리 부족으로 종료되는 현상의 여러가지 이유가 무엇인지 궁금합니다. [2]
4870heyh...8/14/201710142프로그램 실행시 중복일 때 버튼 색깔 원래대로 돌리기 [1]
4868kmi8/4/20179455string[] 에 Reverse 적용방법 질문해봅니다 [3]
4867heyh...8/4/20178937EventHandler에 관한 [1]
486610년차8/3/20179375dsoframer axframer open시 기존 오픈되어있는 엑셀을 먹어버리는 현상 [1]
4865heyh...7/31/201710945클릭원스로 배포 한 프로젝트가 끝났는지 알 수 있는 방법 [8]
4864초보자7/28/20179943DllIImport질문 드립니다. [1]
4863다연아빠7/23/201710160전역 예외처리에 대해 질문있습니다. [3]
4861라르크7/17/201715416window form 예제 따라하는 중인데 12.3 서비스 응용 프로그램에서 진행이 안됩니다. [3]파일 다운로드1
4859heyh...7/10/201710070다른 환경에서 실행하기 [1]
4858heyh...7/10/20179911Clickonce update에 관한질문입니다. [1]
4857heyh...7/7/201710557제가 여태까지 작성한 보고서입니다. [2]파일 다운로드1
4856heyh...7/6/20179270성태님 다른질문입니다. [4]
4855JP7/6/20179947Dispose 패턴 구현시 Finalize 재정의에 대한 질문드립니다. [2]
4854heyh...7/6/20179388
4853heyh...7/5/20179497성태님이 작성한대로 해봤습니다. [1]파일 다운로드1
4852김레오7/4/201711651서드파티 dll 디버깅에 대해 질문드립니다. [2]
4851김현준7/3/201710769Datagridview VirtualMode 시 GC가 계속 호출되는 현상이 이해가 안갑니다. [2]
4850heyh...7/3/201710518성태님 밑에 질문드렸던 오류입니다. [1]파일 다운로드1
... 31  32  33  34  35  36  37  38  [39]  40  41  42  43  44  45  ...