int main () { PutString("Testing filesystem syscalls!\n"); int id = UserCreateFile("/test/file/simple"); id = UserOpenFile("/test/file/simple"); char *buf = "abracadabra"; UserWriteFile(id, buf, 12); UserCloseFile(id); id = UserOpenFile("/test/file/simple"); char bu[12]; UserReadFile(id, bu, 12); UserCloseFile(id); PutString(bu); return 0; }
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) /* handle the messages */ { case WM_COMMAND: switch(LOWORD(wParam)) { case ID_OPEN: UserOpenFile(); ShowHideAll(0); break; case ID_SAVE: ShowHideAll( selSaveTab() ); UserSaveFile(); break; case ID_QUIT: PostMessage(hwnd, WM_CLOSE, 0, 0); break; case ID_MINFY: ShowHideAll(2); Call_Minify(); break; case ID_PREOKW: requireMinified(); ShowHideAll(4); Call_PrepKeywords(); break; case ID_OBFSC: requirePrepKW(); ShowHideAll(5); Call_Obfuscate(); break; case ID_ABOUT: MessageBox(hwnd, AboutTxt, "About", MB_OK); break; } break; case WM_TIMER: switch (wParam) { case IDT_TIMER1: // process 1/5 second timer DispLineNo(); break; } case WM_NOTIFY: if( wParam == ID_KWDGRID) return GridNotify( wParam, lParam ); switch (HIWORD(wParam)) { case 0: // menu command processing case TCN_SELCHANGE: { /* Display fields according to tab selected */ ShowHideAll( TabCtrl_GetCurSel(hwTab) ); } break; } case WM_SIZE: AdjSize(hwTab,0,0); AdjSize(hwSrcEdit,10,80); AdjSize(hwMResEdit,10,80); AdjSize(hwKwGrid,10,100); AdjSize(hwOResEdit,10,80); GetClientRect(hwnd, &hwrect); break; case WM_CLOSE: DestroyWindow(hwnd); break; case WM_DESTROY: PostQuitMessage (0); /* send a WM_QUIT to the message queue */ break; default: /* for messages that we don't deal with */ return DefWindowProc (hwnd, message, wParam, lParam); } return 0; }