블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2809)
Unity3D (865)
Programming (479)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (234)
협업 (61)
3DS Max (3)
Game (12)
Utility (140)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (16)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

http://www.tworld.co.kr/html/customer_center/wifi_zone/SKT_EAP_SIM_v01.mobileconfig

해당 링크를 safari로 열면
profile 설치를 진행합니다.

설치버튼을 눌러 설치가 완료되면
곧바로 t wifi zone secure를
usim인증을 통해 사용할 수 있습니다.

단, skt에서는 iOS 4.3이상이 설치된
iPad 2 3g, iPhone 4에 대해서만
이 profile 사용이 가능하다고 하니
참고하시기 바랍니다.

접속시 skt usim이 장착되어 있어야 하며
skt 데이터쉐어링 usim도 사용가능합니다.





출처 : http://kmug.co.kr/board/view.php?id=itip&no=298

짧은 주소 : http://j.mp/viOP9B

반응형
Posted by blueasa
, |

오류코드

Programming/Python / 2012. 5. 10. 15:53

1) 오류코드 : SyntaxError: Non-ASCII character '\xc7' in file 
2) 원인 : 문자 인코딩 오류로 한글이 코드에 들어갈대 생기는 문제, 링크 따라가면 해결 방법 나옴.
3) 해결 : 소스 맨 위에 다음 문장 추가,
          - 한글 해결  : # -*- coding:cp949 -*-
          - unicode 해결 : # -*- coding:utf-8 -*-

 

 

1) 오류코드 : AttributeError: debugger instance has no attribute 'open_process'
2) 원인 : '해당명' 인스턴스(객체)가 없다는 오류, 저 함수 open_process가 없다는 내용이다.
3) 해결 : 오류난 줄로 가서 해당 함수명을 조사해 보면..  대부분 오타이다!! ㅋ

 

 

 

1) 오류코드 : NameError: global name 'DEBUG_EVENT' is not defined
2) 원인 : 해당 객체가 정의되지 않았다.
3) 해결 : 해당 내용이 생성 및 정의되어 있는지 확인해 본다.



[출처] Python 오류코드|작성자 msBang

반응형
Posted by blueasa
, |

# 문자열 포맷 코드
%s 문자열 (String)
%c 문자 한개 (character)
%d 정수 (Integer)
%f 부동소수 (floating-point)
%o 8진수
%x 16진수
%% Literal % (문자 '%s' 자체)

 


# 자주 사용되는 슬라이싱 예 - 문자열 자르기
>>> a = "20110406Clean"
>>> date = a[:8]
>>> weahter = a[8:]
>>> date
'20110406'
>>> weather
'Clean'

 


# 2개 이상의 값을 치환 - 문자열 포매팅(Formatting)
>>> number = 10
>>> day = "three"
>>> print "I eat %d apples. so I was sick for %s days." % (number, day)
I eat 10 apples. so I was sick for three days.

 


# 문자 갯수 세기(count)
>>> a = "hobby"
>>> a.count('b')
2

 


# 문자 위치 알려주기1(find)
>>> a = "Python is best choice"
>>> a.find('b')   // 존재하지 않으면 -1 반환
10

 

 

# 문자 위치 알려구지2(index)
>>> a = "Life is too short"
>>> a.index('t')
8

 


# 문자열 삽입(join)
>>> a = ","
>>> a.join('abcd') // 문자열의 각각의 문자사이에 변수 a의 값을 삽입
'a,b,c,d'

 


# 왼쪽 공백 지우기(lstrip)
>>> a = " hi"
>>> a.lstrip()
'hi'

 

 

# 오른쪽 공백 지우기(rstrip)
>>> a = "hi "
>>> a.rstrip()
'hi'

 

 

# 양쪽 공백 지우기(strip)
>>> a = " hi "
>>> a.strip()
'hi'

 


# 문자열 바꾸기(replace)
>>> a = "Life is too short"
>>> a.replace("Life", "Your leg")
'Your leg is too short'

 


# 문자열 나누기 (split) - 결과는 list에 저장됨
>>> a = "Life is too short"
>>> a.split()
['Life', 'is', 'too', 'short']

>>> a = "a:b:c:d"
>>> a.split(':')
['a', 'b', 'c', 'd']



[출처] 파이썬 팁) 문자열 다루기|작성자 msBang

반응형
Posted by blueasa
, |

Q. C에서 파이썬 사용이 가능한가?

 

예. 가능합니다. 
파이썬에서 C프로그램을 쓰는 것을 extending이라고 부르고, C프로그램에서 파이썬을 쓰는 것을 embedding이라고 부릅니다. 
파이썬 매뉴얼에 관련 내용이 포함되어 있습니다.

 

http://docs.python.org/ext/ext.html 
http://docs.python.org/ext/embedding.html
_________________
http://twitter.com/hyeshik



[출처] C에서 파이썬 사용이 가능한가?|작성자 msBang

반응형
Posted by blueasa
, |

더미다(Themida) 테스트

 

Themida 실행

 

디버거(올리디버거 등)가 미리 실행되어 있으면 더미다 실행안됨

 

 

Protection Options (보호 옵션)

 

▨ Anti-Debugger Detection

보호된 어플리케이션에서 anti-debugger를 발견할 수 있다. "Ultra"로 설정시 바이러스 감염이나 루트킷 설치여부, Windows OS 여부 확인 가능

 

▨ Anti Dumpers

보호된 어플리케이션에게 가장 위험한 툴 중에 하나는 메모리덤퍼이며, 이 옵션은 메모리 덤핑을 막는다.

 

▨ Themida command line

Themida user interface에서 옵션 내용을 저장하면 .tmd 파일이 생성됨, 명령줄에서 다음 내용 실행

Themida /protect YourProjectFile.tmd

자신의 build system에서 위 내용을 bat 파일로 작성하여 자동화 시키면 됨

 

 

 

 

 

 

 

 

  

 

 

▨ Protection Options > When Debugger Found 적용 테스트

 

1) Display Message 옵션 적용시

 

 

디버거가 실행 중이면 다음 메시지를 출력하고 프로세스는 실행되지 않는다.

 

 

 

2) Exit Silently 옵션 적용시

 

 

디버거가 실행 중이면 옵션 이름처럼 소리없이 조용히 프로세스(패킹된 자기자신)를 종료한다.

 

 

3) Crash Application 옵션 적용시

 

 

디버거가 실행 중이면 Exit Silently 옵션가 같이 프로세스가 자동 종료된다.

 

 

 

▨ 디버거 탐지 제외

Protection Options > Anti-Debugger Detection > Disabled

 

 

위 옵션을 주면 디버거가 실행 중이더라도 패킹된 파일이 실행된다.

 

 

▨ VMware/Virtual PC에서 실행 가능하게 설정

Protection Options > VMWare/Virtual PC > Compatible 체크 (체크시 VM환경에서 실행 가능)

 

 

체크를 해제하면 VM환경에서 실행이 안되고 다음 메시지 뜸

 

 

 

 

 

▨ Command Line을 이용한 자동 패킹

 

테스트 파일 준비

 

 

 

Themida에서 기본 옵션 조금 변경하고 프로젝트 저장하면 같은 폴더에 .tmd 파일과 ._ini 파일 생성됨

 

 

옵션값을 조금씩 바꿔가며 프로젝트 저장하여 ._ini 파일을 여러 개 생성해서 다양하게 옵션 적용 가능



[출처] Themida 실행압축(Packing) 테스트|작성자 msBang

반응형

'Utility > Themida' 카테고리의 다른 글

[Packer/Protector] Themida  (0) 2012.05.10
Posted by blueasa
, |

What is Themida? 

 



 

 

Packer? Protector?



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 

 

Themida  Main Screen



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 

 

Protection Options



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 



[출처] [Packer/Protector] Themida|작성자 ㄲㅑ

 

 

    Advanced Options



     

     


     

      Themida Packing Test 

      Test File

      - Unpack_Crackme.exe 

       

       


       

       

        File Packing 

         






        [출처] [Packer/Protector] Themida|작성자 ㄲㅑ

         

         

          Detection Of File (Use PE Scanner) 

           




          [출처] [Packer/Protector] Themida|작성자 ㄲㅑ

          반응형

          'Utility > Themida' 카테고리의 다른 글

          Themida 실행압축(Packing) 테스트  (0) 2012.05.10
          Posted by blueasa
          , |

          WxPyWiki 페이지 입니다
          공부하려고 한참을 찾다 구글링으로 찾았습니다
          Python의 GUI 툴인 WxGlade의 튜토리얼 입니다
          각각 함수에 대한 API와 상세 설명 메소드 설명 소스코드와 스샷들이 포함되어 있습니다
          메소드(methods) 하나하나에 대한 모든 코드들이 구현 되어 있어서 공부하거나 사용할 참고하세요 
          굉장히 설명이 잘 되어 있습니다 

          튜토리얼 한페이지에 모든 글이 포함되어 있어서 로딩 시간이 조금 오래 걸릴 수 있습니다 







          차례

          1. The wxPython Linux Tutorial
            1. Foreword
            2. wxPython API
            3. First Steps
              1. wx.Window
              2. wx.Frame
              3. wx.MenuBar
              4. wx.ToolBar
            4. Layout Management
              1. wx.BoxSizer
              2. wx.GridSizer
              3. wx.GridBagSizer
            5. Basic Objects
              1. Cursors
              2. Fonts
              3. Colours
              4. Bitmaps
            6. Events
              1. Examples
            7. Dialogs
              1. Custom dialogs
              2. Common Predefined Dialogs
            8. Core Widgets
              1. wx.Button
              2. wx.ToggleButton
              3. wx.BitmapButton
              4. wx.StaticLine
              5. wx.StaticText
              6. wx.StaticBox
              7. wx.ComboBox
              8. wx.CheckBox
              9. wx.StatusBar
              10. wx.RadioButton
              11. wx.Gauge
              12. wx.Slider
              13. wx.ListBox
              14. wx.SpinCtrl
              15. wx.ListCtrl
              16. wx.SplitterWindow
              17. wx.ScrolledWindow
              18. wx.TreeCtrl
              19. wx.Notebook
            9. wx.lib Classes
              1. Mouse Gestures
              2. AnalogClockWindow
              3. Bitmap Text Buttons
            10. Advanced Widgets
              1. CalendarCtrl
              2. LEDNumberCtrl
            11. Creating a taskbar application
            12. wx.TheClipboard
            13. Drag and Drop
            14. Plotting
            15. Configuring application settings
            16. wxPython functions
              1. System functions
              2. Dialog functions
              3. Other functions
            17. Using xml resource files
            18. Skeletons
              1. File Hunter
              2. SpreadSheet
            19. Tips And Tricks
              1. PopupMenu
              2. The tiniest wxPython application
              3. Interactive Button
              4. Error handling without dialogs
              5. UndoRedoFramework
            20. Gripts
              1. Tom
              2. Editor
              3. Kika
            21. Appendix
              1. Cursor IDs
              2. wx.Frame styles
              3. Standard Colour Database
              4. wx.Pen styles
              5. wx.Brush styles
              6. CalendarCtrl styles
              7. Keycodes
            22. Comments...







          WxGlade에 대한 여려 튜토리얼 링크가 있는 페이지 입니다
          http://wiki.wxpython.org/WxGladeTutorial


          가장 기본 튜토리얼 페이지 입니다
          http://wiki.wxpython.org/index.cgi/AnotherTutorial 


          출처 : http://paranwater.tistory.com/180

          반응형
          Posted by blueasa
          , |

          [서론]

            이전에 W.O.W 접속유지 프로그램을 만든적은 있지만 그때는 WOW 캡션이 정해져 있었고, 키입력만으로(방향키를 사용했음) 접속유지가 됐기때문에 단순한 키입력 메시지 전달만 하면 끝이었다. 

            다만.. W.O.W 에서 SendMessage를 먹어버려서 PostMessage로 처리했었다.

            (W.O.W 접속유지 프로그램 링크:http://blueasa.tistory.com/527)


            이번에는 서로(현재는 C# -> C++ 만 되는거 보고 정리함.. 나중에 업뎃 할지도..) SendMessage를 보내서 뭔가 일을 꾸밀(?) 수 있게 해보고 싶은마음에 시작.. 물론 양쪽 프로그램은 내가 직접 만든다는 가정하에..

            세상에 선구자는 많으니 역시나..자료를 찾기 시작.. 이전에 간단하나마 만든 것도 있고..

            말재주는 없으니 본론으로 들어가서 그냥 소스 정리..


          [사용된 WinAPI 함수 및 중요 키워드]

          FindWindow, SendMessage, WM_COPYDATA


          [Send : C#]



          [Source]

              public class MessageHelper
              {
                  [DllImport("User32.dll")]
                  private static extern int RegisterWindowMessage(string lpString);
          
                  [DllImport("User32.dll", EntryPoint = "FindWindow")]
                  public static extern Int32 FindWindow(String lpClassName, String lpWindowName);
          
                  //For use with WM_COPYDATA and COPYDATASTRUCT
                  [DllImport("User32.dll", CharSet = CharSet.Auto, SetLastError = false, EntryPoint = "SendMessage")]
                  public static extern int SendMessage(int hWnd, int Msg, int wParam, ref COPYDATASTRUCT lParam);
          
                  //For use with WM_COPYDATA and COPYDATASTRUCT
                  [DllImport("User32.dll", CharSet = CharSet.Auto, SetLastError = false, EntryPoint = "PostMessage")]
                  public static extern int PostMessage(int hWnd, int Msg, int wParam, ref COPYDATASTRUCT lParam);
          
                  //For use with WM_COPYDATA and COPYDATASTRUCT*
                  [DllImport("user32.dll", CharSet = CharSet.Auto, EntryPoint = "SendMessage")]
                  private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
          
                  [DllImport("User32.dll", CharSet = CharSet.Auto, EntryPoint = "SendMessage")]
                  public static extern int SendMessage(int hWnd, int Msg, int wParam, int lParam);
          
                  [DllImport("User32.dll", CharSet = CharSet.Auto, EntryPoint = "PostMessage")]
                  public static extern int PostMessage(int hWnd, int Msg, int wParam, int lParam);
          
                  [DllImport("User32.dll", EntryPoint = "SetForegroundWindow")]
                  public static extern bool SetForegroundWindow(int hWnd);
          
                  public const int WM_USER = 0x400;
                  public const int WM_SENDER = WM_USER + 4444;
                  public const int WM_COPYDATA = 0x4A;
          
                  //Used for WM_COPYDATA for string messages
                  //[StructLayout(LayoutKind.Sequential)] 
                  public struct COPYDATASTRUCT
                  {
                      public int dwData;
                      public int cbData;
                      //[MarshalAs(UnmanagedType.LPStr)]
                      public IntPtr lpData;
                  }
          
                  public bool BringAppToFront(int hWnd)
                  {
                      return SetForegroundWindow(hWnd);
                  }
          
                  public int SendWindowsStringMessage(int hWnd, int wParam, string command)
                  {
                      int result = 0;
          
                      if (hWnd != 0)
                      {
                          byte[] sarr = System.Text.Encoding.Default.GetBytes(command);
                          int len = sarr.Length;
          
                          COPYDATASTRUCT cds = new COPYDATASTRUCT();
                          //cds.dwData = (IntPtr)100;
                          cds.dwData = 0;
                          cds.cbData = len + 1;
                          //cds.cbData = Marshal.SizeOf(cds);
                          cds.lpData = Marshal.StringToHGlobalAnsi(command);
                          //cds.lpData = Marshal.StringToCoTaskMemAnsi(command);
          
                          result = SendMessage(hWnd, WM_COPYDATA, wParam, ref cds);
                      }
          
                      return result;
                  }
          
                  public int SendWindowsMessage(int hWnd, int Msg, int wParam, int lParam)
                  {
                      int result = 0;
          
                      if (hWnd != 0)
                      {
                          result = SendMessage(hWnd, Msg, wParam, lParam);
                      }
          
                      return result;
                  }
          
                  public int GetWindowID(string className, string windowName)
                  {
                      return FindWindow(className, windowName);
                  }
              }
          





          [Use]


          int hWnd = messageHelper.GetWindowID(null, windowCaption);
          messageHelper.SendWindowsStringMessage(hWnd, 0, String);
          



          [Receive : C++]


          [Source]


          WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
          {  
              switch ( msg )   
              {  
              case WM_COPYDATA:  
                  {  
                      //Used for WM_COPYDATA for string messages  
                      struct COPYDATASTRUCT  
                      {  
                          int dwData;  
                          int cbData;  
                          PVOID lpData;  
                      };  
            
                      COPYDATASTRUCT* cp = (COPYDATASTRUCT*)lParam;  
            
                      if( NULL != cp )  
                      {  
                          String strCommand = "";  
                          char szCommand[256] = {0,};  
                            
                          memcpy( szCommand, cp->lpData, cp->cbData );  
                            
                          if(NULL != szCommand)  
                          {  
          					/// ToDo  
          					/// 여기서 받은 문자열로 할 일 하면 됨.  
          					/// dwData는 여기선 의미가 없긴한데 enum이나 int 그대로 써서  
          					/// switch문 등으로 분기시켜서 여러가지 다양한 처리를 하려고
          					/// 처음 소스 짠사람이 만든 것 같다.  
          					/// 다른 일도 분류해서 처리하려면 사용하자.  
                          }  
                      }  
                  }  
                  break;  
              }  
          }  
          




          [주의]

          WM_COPYDATA 는 PostMessage로 날릴 수 없다고 한다. SendMessage를 사용하자.

          (상대쪽에서 받기 전에 이쪽에서 메모리 해제 되있으면 AV뜨기때문에..)

          참고 링크 : http://lunapiece.net/?mid=Tips&listStyle=webzine&document_srl=3780&sort_index=readed_count&order_type=desc


          P.s. 마음대로 되지 않고 삽질도 많이해서 여기저기 쓰이지 않는 주석이 남아있긴 하지만.. 삽질기념(?) 그냥 냅두기..

                 하도 검색하고 다녀서 참조한 곳을 다 찾기엔 좀 걸리거나 빼먹을 수 도 있을 것 같다. 출처를 찾으러 가야지..



          [참조]

          http://boycook.wordpress.com/2008/07/29/c-win32-messaging-with-sendmessage-and-wm_copydata/

          http://kofmania.tistory.com/45

          http://xarfox.tistory.com/45

          http://jacking.tistory.com/134

          http://www.hoons.kr/board.aspx?Name=qacshap&Mode=2&BoardIdx=10465&Key=&Value=

          http://lunapiece.net/?mid=Tips&listStyle=webzine&document_srl=3780&sort_index=readed_count&order_type=desc

          - 그 외 못 적은 곳은.. 죄송합니다..;;



          반응형
          Posted by blueasa
          , |


          링크 : http://www.thisisgame.com/board/list.php?category=4001&subcategory=25

          반응형

          '한글' 카테고리의 다른 글

          쉬운 맞춤법 공부  (0) 2012.10.23
          율/률(열/렬)  (0) 2012.06.03
          설레임 / 설렘  (0) 2012.06.03
          역할? 역활?  (0) 2012.05.08
          감쇠 와 감쇄  (0) 2012.04.27
          Posted by blueasa
          , |

          역할? 역활?

          한글 / 2012. 5. 8. 21:42

          역할

          위키백과, 우리 모두의 백과사전.

          역할(役割) 또는 사회적 역할(社會的役割)은 사회적 상황에서 배우에 의해 개념화되는 행동권리의무가 연결된 것이다. 주어진 각 사회적 지위와 사회적 위치 안에서 대개 예외 행위로 정의된다. 대한민국에서 일반인들이 자주 사용하고 있는 형태인 "역활"은 사전에 없는 낱말이며, "역할"의 잘못이다.



          반응형

          '한글' 카테고리의 다른 글

          쉬운 맞춤법 공부  (0) 2012.10.23
          율/률(열/렬)  (0) 2012.06.03
          설레임 / 설렘  (0) 2012.06.03
          이것이 우리말(TIG와 함께하는 바르고, 고운 우리말!)  (0) 2012.05.08
          감쇠 와 감쇄  (0) 2012.04.27
          Posted by blueasa
          , |