창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 이수호2003-01-30 01:58:06, Hit : 6066
아아아~
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=freeboard&no=448
윈도우 리모트 네트워크 소스인데 ㅡ.ㅡ;; 여기서 창조에 쓸만한거 없을까요?
MS 공식 소스인데...



/******************************************************************************
Copyright (c) 1995-2000 Microsoft Corporation.  All rights reserved.

remnet.c : Remote networking

******************************************************************************/

#include <windows.h>
#include <windowsx.h>
#include <tchar.h>
#include "string.h"
#include "memory.h"
#include "commctrl.h"
#include "wcommctl.h"
//#include "shlobj.h"
//#include "wceshell.h"
//#include "aygshell.h"
#ifdef USE_SIP
#        include <sipapi.h>
#endif

#include "resource.h"
#include "remnet.h"

#ifdef DEBUG
DBGPARAM dpCurSettings = {
    TEXT("RemoteNet"), {
        TEXT("Unused"),TEXT("Unused"),TEXT("Unused"),TEXT("Unused"),
        TEXT("Unused"),TEXT("Unused"),TEXT("Unused"),TEXT("Unused"),
        TEXT("Unused"),TEXT("Unused"),TEXT("Unused"),TEXT("Misc"),
        TEXT("Alloc"),TEXT("Function"),TEXT("Warning"),TEXT("Error") },
    0x0000C000
    //0xFFFF
};
#endif        // DEBUG

ITEMINFO        EditItem;
HINSTANCE        v_hInst;
HWND                v_hMainWnd;
HWND                v_hListWnd;
HWND                v_hCmdBar;
HWND                v_hDialogWnd;
HFONT                v_hfont;
RECT                v_ClientRect;
RECT                v_ListRect;
DWORD                v_WizDialog;
DWORD       v_PrevWizDialog;
BOOL                v_fInRename;
BOOL                v_fPortrait;

#ifdef USE_SIP
LPFNSIP                  g_pSipGetInfo, g_pSipSetInfo;
LPFNSIPSTATUS g_pSipStatus;
HINSTANCE          g_hSipLib;
#endif

extern DWORD v_EnteredAsAWizard;

DWORD                v_DialogPages[DLG_NUMDLGS] = {
        IDD_RAS_WIZ_1,
        IDD_RAS_WIZ_2,
        IDD_RAS_WIZ_3,
        IDD_RAS_WIZ_4,
        IDD_RAS_WIZ_5,
        IDD_RAS_TCPIP_GEN,
        IDD_RAS_TCPIP_NAME_SERV
};

const TCHAR szAppName[] = TEXT("RemoteNet");
TCHAR szTitle[36];

const static TBBUTTON tbButton[] = {
        {0,             0,        TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0, -1},
  {STD_DELETE+12,ID_FILE_DELETE,TBSTATE_ENABLED,TBSTYLE_BUTTON,0,0,0,-1},
  {STD_PROPERTIES+12,ID_FILE_PROPERTIES,TBSTATE_ENABLED,TBSTYLE_BUTTON,0,0,0,-1},
  {0, 0,              TBSTATE_ENABLED, TBSTYLE_SEP,               0, 0, 0, -1},
  {VIEW_LARGEICONS, ID_VIEW_LARGEICON,TBSTATE_ENABLED,TBSTYLE_CHECKGROUP,0,0,0,-1},
  {VIEW_SMALLICONS, ID_VIEW_SMALLICON,TBSTATE_ENABLED,TBSTYLE_CHECKGROUP,0,0,0,-1},
  {VIEW_DETAILS, ID_VIEW_DETAILS, TBSTATE_ENABLED, TBSTYLE_CHECKGROUP, 0, 0, 0, -1},
};    

static TBBUTTON tbButtonPortrait[] = {
        {0, 0,        TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0, -1},
        {0,ID_CONN_CONN,TBSTATE_ENABLED,TBSTYLE_BUTTON,0,0,0,-1},
        {0, 0,        TBSTATE_ENABLED, TBSTYLE_SEP,    0, 0, 0, -1},
//        {0, ID_CONN_NEW,TBSTATE_ENABLED,TBSTYLE_BUTTON,0,0,0,-1},
        {STD_PROPERTIES+12,ID_CONN_EDIT,TBSTATE_ENABLED,TBSTYLE_BUTTON,0,0,0,-1},
        {STD_DELETE+12,ID_CONN_DELETE,TBSTATE_ENABLED,TBSTYLE_BUTTON,0,0,0,-1},
};    

TCHAR        nonStr[10];
TCHAR        deleteStr[30];
TCHAR        propertiesStr[30];
TCHAR        largeIconStr[30];
TCHAR        smallIconStr[30];
TCHAR        detailsStr[30];

const LPTSTR ToolTipsTbl[] = {
        nonStr,
        deleteStr,
        propertiesStr,
        largeIconStr,
        smallIconStr,
        detailsStr
};

const LPTSTR ToolTipsTblPortrait[] = {
        nonStr,
        largeIconStr,
        smallIconStr,
        propertiesStr,
        deleteStr,
};

// Declare the CommCtrl stuff.
DECLARE_COMMCTRL_TABLE;


void  FAR  PASCAL RegisterIPClass(HINSTANCE);
void  FAR  PASCAL UnregisterIPClass(HINSTANCE);

void PositionSIP(int nSipState)
{
#ifdef USE_SIP
    // Do we have the sip function?
    if (g_pSipGetInfo && g_pSipSetInfo)
    {
            SIPINFO si;

        // See whether the SIP is up or down
        memset(&si, 0, sizeof(SIPINFO));
        si.cbSize = sizeof(SIPINFO);
        if ((*g_pSipGetInfo)(&si))
        {
            // Has the SIP state changed?
            if ((!(si.fdwFlags & SIPF_ON) && SIP_UP == nSipState) ||
                (si.fdwFlags & SIPF_ON && !(SIP_UP == nSipState)))
            {
                si.fdwFlags ^= SIPF_ON;
                        (*g_pSipSetInfo)(&si);
            }
        }
    }
#endif
}

BOOL
CreateShortcut(TCHAR *pEntryName)
{
    TCHAR   szFmtStr[256];
    TCHAR   szPath[256];
    TCHAR   szFile[256];
    char    szAnsiTarget[128];
        HANDLE  hFile;
    int     nLinks = 1;
    int     Len;
        
        LoadString(v_hInst, IDS_DESKTOP_PATH, szFmtStr,
                           sizeof(szFmtStr)/sizeof(TCHAR));
    
    wsprintf(szPath, szFmtStr, pEntryName);
    
        hFile = CreateFile(szPath, GENERIC_WRITE, 0, NULL, CREATE_NEW,
                                           FILE_ATTRIBUTE_NORMAL, NULL);

    while (hFile == INVALID_HANDLE_VALUE)
    {
        if (nLinks++ > 20)
            return FALSE;

                LoadString(v_hInst, IDS_DESKTOP_PATH2, szFmtStr,
                                   sizeof(szFmtStr)/sizeof(TCHAR));
    
        wsprintf(szPath, szFmtStr,
                 pEntryName, nLinks);

        hFile = CreateFile(szPath, GENERIC_WRITE, 0, NULL, CREATE_NEW,
                           FILE_ATTRIBUTE_NORMAL, NULL);        
    }

    
        LoadString(v_hInst, IDS_SHORTCUT_STRING, szFmtStr,
                           sizeof(szFmtStr)/sizeof(TCHAR));
    
    wsprintf(szFile, szFmtStr, pEntryName);

    Len = _tcslen(szFile);

    wsprintf(szPath, TEXT("%d#%s"), Len, szFile);
    
    Len = WideCharToMultiByte(CP_ACP, 0, szPath, -1, szAnsiTarget, 128, NULL, NULL);

    WriteFile(hFile, szAnsiTarget, Len, &Len, NULL);

    CloseHandle(hFile);
    
    return TRUE;
}
VOID
UpdateView (DWORD        What)
{
        HMENU        hMenu;
        
        hMenu = CallCommCtrlFunc(CommandBar_GetMenu)(v_hCmdBar, 0);

    if (ID_VIEW_LARGEICON == What)
         CheckMenuRadioItem(hMenu, ID_VIEW_LARGEICON,
                                   ID_VIEW_DETAILS,
                                   ID_VIEW_LARGEICON,
                                   MF_BYCOMMAND);
    if (ID_VIEW_SMALLICON == What)
         CheckMenuRadioItem(hMenu, ID_VIEW_LARGEICON,
                                   ID_VIEW_DETAILS,
                                   ID_VIEW_SMALLICON,
                                   MF_BYCOMMAND);
    if (ID_VIEW_DETAILS == What)
         CheckMenuRadioItem(hMenu, ID_VIEW_LARGEICON,
                                   ID_VIEW_DETAILS,
                                   ID_VIEW_DETAILS,
                                   MF_BYCOMMAND);

        SendMessage (v_hCmdBar, TB_CHECKBUTTON, ID_VIEW_LARGEICON,
                                 MAKELONG((ID_VIEW_LARGEICON == What) ? TRUE : FALSE, 0));
        SendMessage (v_hCmdBar, TB_CHECKBUTTON, ID_VIEW_SMALLICON,
                                 MAKELONG((ID_VIEW_SMALLICON == What) ? TRUE : FALSE, 0));
        SendMessage (v_hCmdBar, TB_CHECKBUTTON, ID_VIEW_DETAILS,
                                 MAKELONG((ID_VIEW_DETAILS == What) ? TRUE : FALSE, 0));
}

VOID
SetMenu()
{
        HMENU        hMenu;
        DWORD                    cb;
        LV_ITEM                    lvi;
    MENUITEMINFO    MenuItemInfo;
        TCHAR                    szTemp[128];
        
        cb = ListView_GetSelectedCount (v_hListWnd);
        lvi.iItem = ListView_GetNextItem(v_hListWnd, -1, LVNI_SELECTED);
        hMenu = CallCommCtrlFunc(CommandBar_GetMenu)(v_hCmdBar, 0);
        // Set the File->Connect/Create menu to connect
        MenuItemInfo.cbSize = sizeof(MENUITEMINFO);
        MenuItemInfo.fMask = MIIM_TYPE;
        MenuItemInfo.dwTypeData = szTemp;
        MenuItemInfo.cch = sizeof(szTemp)/sizeof(TCHAR);

        GetMenuItemInfo(hMenu, ID_FILE_CONNECTCREATE, FALSE,
                                        &MenuItemInfo);
        MenuItemInfo.fMask = MIIM_TYPE;                        
        MenuItemInfo.cch = LoadString(v_hInst, IDS_CONNECT,
                                                                  MenuItemInfo.dwTypeData,
                                                                  sizeof(szTemp)/sizeof(TCHAR));
        SetMenuItemInfo(hMenu, ID_FILE_CONNECTCREATE, FALSE,
                                        &MenuItemInfo);

        EnableMenuItem (hMenu, ID_FILE_CONNECTCREATE, MF_GRAYED);
        EnableMenuItem (hMenu, ID_FILE_CREATESHORTCUT, MF_GRAYED);
        EnableMenuItem (hMenu, ID_FILE_DELETE, MF_GRAYED);
        EnableMenuItem (hMenu, ID_FILE_RENAME, MF_GRAYED);
        EnableMenuItem (hMenu, ID_FILE_PROPERTIES, MF_GRAYED);
        EnableMenuItem (hMenu, ID_EDIT_CREATECOPY, MF_GRAYED);

        // Portrait mode menu
        EnableMenuItem (hMenu, ID_CONN_CONN, MF_GRAYED);
        EnableMenuItem (hMenu, ID_CONN_EDIT, MF_GRAYED);
        EnableMenuItem (hMenu, ID_CONN_DELETE, MF_GRAYED);
        EnableMenuItem (hMenu, ID_CONN_RENAME, MF_GRAYED);

        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_EDIT,
                                 MAKELONG(FALSE, 0));
        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_CONN,
                                 MAKELONG(FALSE, 0));
        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_DELETE,
                                 MAKELONG(FALSE, 0));
        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_FILE_DELETE,
                                 MAKELONG(FALSE, 0));
        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_FILE_PROPERTIES,
                                 MAKELONG(FALSE, 0));

        if (cb == 1) {
                if (lvi.iItem == 0) {
                        // Make new connection

                        // Set File->Connect/Create menu to create and enable
                        MenuItemInfo.fMask = MIIM_TYPE;                        
                        MenuItemInfo.cch = LoadString(v_hInst, IDS_CREATE,
                                                                                  MenuItemInfo.dwTypeData,
                                                                                  sizeof(szTemp)/sizeof(TCHAR));
                        SetMenuItemInfo(hMenu, ID_FILE_CONNECTCREATE, FALSE,
                                                        &MenuItemInfo);
                        EnableMenuItem (hMenu, ID_FILE_CONNECTCREATE,
                                                        MF_ENABLED);
                } else {
                        EnableMenuItem (hMenu, ID_FILE_CONNECTCREATE,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_FILE_CREATESHORTCUT,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_FILE_DELETE,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_FILE_RENAME,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_FILE_PROPERTIES,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_EDIT_CREATECOPY,
                                                        MF_ENABLED);

                        EnableMenuItem (hMenu, ID_CONN_CONN, MF_ENABLED);
                        EnableMenuItem (hMenu, ID_CONN_EDIT, MF_ENABLED);
                        EnableMenuItem (hMenu, ID_CONN_DELETE, MF_ENABLED);
                        EnableMenuItem (hMenu, ID_CONN_RENAME, MF_ENABLED);

                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_EDIT,
                                                 MAKELONG(TRUE, 0));
                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_CONN,
                                                 MAKELONG(TRUE, 0));
                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_DELETE,
                                                 MAKELONG(TRUE, 0));

                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_FILE_DELETE,
                                                 MAKELONG(TRUE, 0));
                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON,
                                                 ID_FILE_PROPERTIES,
                                                 MAKELONG(TRUE, 0));
                }
        } else {
                if (cb != 0) {
                        // allow shortcuts for multiple items
                        if (lvi.iItem > 0) {
                                EnableMenuItem (hMenu, ID_EDIT_CREATECOPY,
                                                                MF_ENABLED);
                        }
                        EnableMenuItem (hMenu, ID_FILE_CONNECTCREATE,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_FILE_CREATESHORTCUT,
                                                        MF_ENABLED);
                        EnableMenuItem (hMenu, ID_FILE_DELETE,
                                                        MF_ENABLED);
                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_CONN,
                                                 MAKELONG(TRUE, 0));
                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_CONN_DELETE,
                                                 MAKELONG(TRUE, 0));
                        SendMessage (v_hCmdBar, TB_ENABLEBUTTON, ID_FILE_DELETE,
                                                 MAKELONG(TRUE, 0));

                        EnableMenuItem (hMenu, ID_CONN_DELETE, MF_ENABLED);
                }
        }
}

// ----------------------------------------------------------------
//
// NotifyHandler ()
//
// Handle Notification events for the ListView
//
// ----------------------------------------------------------------

LRESULT
NotifyHandler (HWND hWnd, NM_LISTVIEW *pnm, LV_DISPINFO *plvdi)
{
        LV_ITEM                    lvi;
        PITEMINFO                pItemInfo;
        HWND                        hwndEdit;
        DWORD                    dwTemp;
    int             nFormatId;
        TCHAR                    szTemp[128];
        TCHAR                        szFmtStr[128];

        DEBUGMSG (ZONE_MISC, (TEXT("Got WM_NOTIFY hdr.code=%d\r\n"),
                                                  pnm->hdr.code));

        switch (pnm->hdr.code) {
        case LVN_DELETEALLITEMS :
                DEBUGMSG (ZONE_MISC, (TEXT("Got LVN_DELETEALLITEMS\r\n")));
                return FALSE;
        case LVN_DELETEITEM :
                if (0 != pnm->iItem) {
                        DEBUGMSG (ZONE_MISC, (TEXT("Got LVN_DELETEITEM %d\r\n"), pnm->iItem));
                        LocalFree ((HLOCAL)pnm->lParam);
                }
                break;
        case LVN_GETDISPINFO :
                DEBUGMSG (ZONE_MISC, (TEXT("LVN_GETDISPINFO\r\n")));
                if (!(plvdi->item.mask & LVIF_TEXT)) {
                        DEBUGMSG (ZONE_MISC, (TEXT("LVN_GETDISPINFO: Not Text? Mask=0x%X\r\n"),
                                                                  plvdi->item.mask));
                        break;
                }
                SetMenu();

                if (0 == plvdi->item.iItem) {
                        if (0 == plvdi->item.iSubItem) {
                                LoadString(v_hInst, IDS_MAKE_NEW,
                                                   plvdi->item.pszText,
                                                   plvdi->item.cchTextMax);
                        }
                        break;
                }
                pItemInfo = (PITEMINFO)plvdi->item.lParam;
                switch (plvdi->item.iSubItem) {
                case 0 :
                        _tcsncpy (plvdi->item.pszText,
                                          pItemInfo->EntryName,
                                          plvdi->item.cchTextMax);
                        break;
                case 1 :
                        _tcsncpy (plvdi->item.pszText,
                                          pItemInfo->szPhone,
                                          plvdi->item.cchTextMax);
                        break;
                case 2 :
                        _tcsncpy (plvdi->item.pszText,
                                          ((PITEMINFO)plvdi->item.lParam)->Entry.szDeviceName,
                                          plvdi->item.cchTextMax);
                        break;
                }
                DEBUGMSG (ZONE_MISC, (TEXT("LVN_GETDISPINFO: Returning string '%s'\r\n"),
                                                          plvdi->item.pszText));
                break;
        case LVN_COLUMNCLICK:
                
                break;

        case LVN_BEGINLABELEDIT:
                DEBUGMSG (ZONE_MISC, (TEXT("BeginEdit\r\n")));

                if (plvdi->item.iItem == 0) {
                        DEBUGMSG (ZONE_MISC, (TEXT("Can't edit the 'Make New' icon\r\n")));
                        return TRUE; // Can't edit the Make New icon
                }
                v_fInRename = TRUE;
                PositionSIP(SIP_UP);
                ListView_EnsureVisible(v_hListWnd, plvdi->item.iItem, FALSE);
                if (hwndEdit = ListView_GetEditControl(v_hListWnd)) {
                        SendMessage(hwndEdit, EM_LIMITTEXT,
                                                RAS_MaxEntryName, 0);
                }
                return FALSE; // Return FALSE to let the user edit

        case LVN_ENDLABELEDIT:
                v_fInRename = FALSE;
                PositionSIP(SIP_DOWN);
                if (plvdi->item.pszText == NULL) {
                        DEBUGMSG (ZONE_MISC|ZONE_ERROR,
                                          (TEXT("ENDLABELEIDT: Text is NULL\r\n")));
                        break;
                }

                // if it's the same as before then it's a no-op.
                if (!_tcsicmp (plvdi->item.pszText, ((PITEMINFO)plvdi->item.lParam)->EntryName)) {
                }

                if (dwTemp = RasValidateEntryName(NULL, plvdi->item.pszText)) {
                        if (dwTemp == ERROR_ALREADY_EXISTS) {
                                nFormatId = IDS_ALREADY_EXISTS;
                        } else if (*(plvdi->item.pszText)) {
                                nFormatId = IDS_BADNAME;
                        } else {
                                nFormatId = IDS_NULLNAME;
                        }
                        LoadString(v_hInst, nFormatId, szFmtStr, sizeof(szFmtStr)/sizeof(TCHAR));
                        LoadString(v_hInst, (v_fPortrait) ? IDS_CONNECTIONS : IDS_REMNET,
                                           szTemp, sizeof(szTemp)/sizeof(TCHAR));
                        MessageBox (hWnd, szFmtStr, szTemp, MB_OK | MB_ICONWARNING);
                        PostMessage (v_hListWnd, LVM_EDITLABEL,
                                                 (WPARAM)(int)plvdi->item.iItem, 0);
                        break;
                }

                RasRenameEntry(NULL, ((PITEMINFO)plvdi->item.lParam)->EntryName,
                                           plvdi->item.pszText);
                dwTemp = plvdi->item.iItem;
                InitListViewItems(v_hListWnd);
                ListView_SetItemState (v_hListWnd, 0, 0, LVIS_SELECTED);
                ListView_SetItemState (v_hListWnd, dwTemp,
                                                           LVIS_SELECTED | LVIS_FOCUSED,
                                                           LVIS_SELECTED | LVIS_FOCUSED);
                SetFocus (v_hListWnd);
                break;
        case NM_RCLICK:
                PostMessage(v_hMainWnd, WM_COMMAND, ID_SHORTCUT, 0);
                break;
        case NM_CLICK:
                if (GetKeyState(VK_MENU) < 0) {
                        PostMessage(v_hMainWnd, WM_COMMAND, ID_SHORTCUT, 0);
                }

                break;
        case NM_DBLCLK:
                if (GetKeyState(VK_MENU) < 0) {
                        PostMessage(v_hMainWnd, WM_COMMAND, ID_SHORTCUT, 0);
                        break;
                }

                lvi.mask  = LVIF_PARAM;
                lvi.iSubItem = 0;
                lvi.iItem = pnm->iItem;


                if (lvi.iItem == 0) {
                        // Allow them to make a new item.
                        PostMessage(v_hMainWnd, WM_COMMAND,
                                                ID_CONNECTIONS_MAKENEWCONNECTION, 0);
                } else if (lvi.iItem != -1) {
                        ListView_SetItemState (v_hListWnd, lvi.iItem,
                                                                   LVIS_SELECTED, LVIS_SELECTED);

                        // They want to connect.
                        SendMessage(v_hMainWnd, WM_COMMAND,
                                                ID_FILE_CONNECTCREATE, 0);
                }
                break;

        case LVN_KEYDOWN:
                switch (((LV_KEYDOWN *) plvdi)->wVKey) {
                case VK_RETURN :
                        lvi.iItem = ListView_GetNextItem(v_hListWnd, -1,
                                                                                         LVNI_SELECTED);
                        if (lvi.iItem == 0) {
                                PostMessage(v_hMainWnd, WM_COMMAND,
                                                        ID_CONNECTIONS_MAKENEWCONNECTION, 0);
                        } else if (lvi.iItem != -1) {
                                ListView_SetItemState (v_hListWnd, lvi.iItem,
                                                                           LVIS_SELECTED, LVIS_SELECTED);

                                // They want to connect.
                                SendMessage(v_hMainWnd, WM_COMMAND,
                                                        ID_FILE_CONNECTCREATE, 0);
                        }
                        break;
                case VK_CONTROL :
                        if (GetAsyncKeyState(VK_MENU)) {
                                PostMessage(v_hMainWnd, WM_COMMAND,
                     &nbs

구루™   2003-01-30 AM 10:17:01  
원래 창조가 네트워크 기능을 지원하지 않는 것으로 알고 있습니다.

이거는 어려울듯;;
미도르   2003-01-30 AM 11:28:01  
C언어군요;;;;
LIST ALL               GO TO THE TOP


N
C
   Subject
Posted by
Date
H
notice   게시판 용도를 약간 수정했습니다. (프로그램 자료실, 기타 자료실) 지상현 2011/02/01  6674
notice   '창조'의 문제점을 모아봅시다. [3] 지상현 2010/07/02  8130
3896
   지상현님 다자간 채팅 이용해서 야매 웹서버 만들어보려고 하는데.
박재성 2024/05/12  9
3895
   날아라KTX 님은 열심히 프로그래밍중이시고.
박재성 2024/05/12  9
3894
   문자표 횡칸, 글꼴 색상좀 추가해 주시면 안될까요
날아라KTX 2022/09/26  503
3893
   지금 보니까 창조 업그레이드 주기가 10년쯤되더라구요.
박재성 2022/01/09  1013
3892
   안녕하세요.. 또다른 새해를 맞이하고 7일차네요..
권선중 2022/01/07  760
3891
   창조 업그레이드후 3년이 훌쩍넘어 이제 4년차에 접어드는데요.
박재성 2021/12/04  898
3890
   오랜만에 커즈닷컴에 접속했습니다.
신용주 2021/09/21  944
3889
   싸이월드 부활 소식과 함게 또 오랜만에 들려요~~~
권선중 2021/08/19  915
3888
   다들 잘 지내시나요? [6]
지상현 2021/01/14  1429
3887
   창조라는 프로그램을 사용한지 꽤 오랜 시간이 흘렀네요. [2]
신용주 2020/09/02  1983
3886
   안녕하세요~ 오랜만입니다ㅎㅎ
joyfuI 2020/06/15  1791
3885
   2020년 만우절날 오랜만에 접속해봅니다.
신용주 2020/04/01  1773
3884
   2020년 새해를 맞이한지 벌써 10일이 지났습니다. ^^ [1]
권선중 2020/01/10  1906
3883
   복구되었네요~~!! [1]
박재성 2019/09/20  1942
3882
   근황토크라도 해볼까요~? ㅎㅎ [6]
손상진 2019/04/05  2406
3881
   ^^ 잠잠하네요.. [3]
권선중 2019/03/29  2108
3880
   윈도우10에서 manifest 파일 사용 시 주의사항.
바람 2019/02/17  1883
3879
   ^^ 너무 오랜만에 왔다더니 비밀번호를 ㅠㅠ [1]
권선중 2018/12/08  2185
3878
   irc 봇을 만들고 있네요. [1]
박재성 2018/10/24  2286
3877
   얼마전 벗꽃구경한거같은데 벌써 여름이.. [1]
권선중 2018/06/20  2758
3876
   성인e님.. [1]
박재성 2018/03/24  2318
3875
   뒤늦게나마 창조 20주년 짐심 축합니다. [1]
권선중 2018/01/19  2934
3874
   금년 연말이나 내년 연초에 창조 버그 패치 예고 [27]
남상기 2017/12/08  3194
LIST ALL   1 [2][3][4][5][6][7][8][9][10]..[156] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인