Saturday, September 29, 2007

OSK board tutorial

The embedded linux tutorial using the ARM starter kit is completed.
the Embedded linux section is updated

for help and other learning materials
visit our site: Bina

Embedded Linux - Loading The Kernel

Now we are ready to operate the board
we want to load the kernel inside the board flash memory and mount the file system in out host computer. this is very useful in the development process because the only thing we should do to download out application/driver to the target is to copy it from one directory to another on the host computer

restart the device and press a key to get u-boot shell
the easiest way to load files from host to target is to use tftp server on the host.
start the tftp server and place the kernel image (uImage.cc) in the server directory

on the target uboot shell:

# setenv serverip [your tftp server ip address]
# tftpboot 0x10000000 uImage.cc
after this you will get a number in hex format - REMEMBER IT

now we should erase the flash memory : (bank 8 to 20)

# erase 1:8-20
# cp.b 0x10000000 0x100000 [the number above]

now set the bootargs variable:

# setenv bootargs console=ttyS0,115200n8 noinitrd ip=${OSK_IP}:
${PC_IP}:${GATEWAY_IP}:${NETMASK}:osk:eth0:off root=
/dev/nfs rw nfsroot=${PC_IP}:/data/rootfs2.6,nolock mem=32M
# saveenv

to test the board restart it or:

# bootm 0x100000

after all the messages , you will get a prompt with the file system on the host

now you can use the toolchain to build applications and drivers, copy the output files to the root filesystem directory and execute/load it from the target


for help and other learning materials
visit our site: Bina

Embedded Linux - Root File System

The next step in to build a root file system.
there are many ways to do that. we are using busybox
busybox creates a single file that implements many tools from the file system
you can download it and configure it using "make menuconfig"
the only thing you should remember is to copy the .so files from the lib directory in your toolchain (usr/local/arm/3.4.1/arm-linux/lib) to the lib directory in the root file system

for already made file system click here

after creating the file system place it in a directory and update the file /etc/exports with access rights :

/opt/osk/rootfs2.6 *(rw,no_root_squash)

restart the nfs server

for help and other learning materials
visit our site: Bina

Friday, September 28, 2007

Embedded Linux - building the kernel

The next step is to build the kernel with our toolchain
you should download the kernel source and a patch

download kernel 2.6.20 (from http://www.kernel.org/)
download the board kernel patch

now follow this:

# tar -xjvf ${DOWLOADDIR}/linux-${VERSION}.tar.bz2
# cp ${DOWLOADDIR}/patch-${VERSION}-omap1.bz2 .
# bunzip2 patch-${VERSION}-omap1.bz2
# cd linux-${VERSION}/
# cat ../patch-${VERSION}-omap1 | patch -p1

# make clean
# make omap_osk_5912_defconfig

make sure that the following options are set:
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y


# make

now the kernel image is ready but we have to convert it to U-BOOT format

# arm-linux-objcopy -O binary -R .note -R .comment S
arch/arm/boot/compressed/vmlinux linux.bin
# gzip -9 linux.bin
# ${U-BOOTDIR}/tools/mkimage -A arm -O linux -T kernel -C gzip -a 0x10c08000 -e 0x10c08000 -n Linux Kernel Image -d linux.bin.gz uImage.cc

uImage.cc is ready

for already made uImage.cc click here


for help and other learning materials
visit our site: Bina

Embedded Linux - boot loader

The next step in our osk system is to build and set the boot loader
the OSK board comes with already installed U-BOOT,
we can replace it but we don't need
we do need a tool: mkimage to convert the kernel image to U_BOOT format
to build the tool download U-BOOT source

do the following:

# tar -xjvf ${DOWLOADDIR}/u-boot-1.1.2.tar.bz2
# cd u-boot-1.1.2
# make distclean
# make omap5912osk_config
# make tools

you can also run make to create the binary image of u-boot boot loader so you can replace it on the board but we don't need it (future post)

if you look inside the tools directory you will find the tool mkimage



for help and other learning materials
visit our site: Bina

Wednesday, September 26, 2007

Embedded Linux - Toolchain

The next step for our OSK system is to find or create a toolchain
we need a toolchain for ARM processor

Building a new toolchain can be complicated mission
in general you should download:
then configure and build a binary image of your toolschain (future post)
for our purpose we can use an already made toolchain from here

extract the archive:

# tar -xjvf ${DOWLOADDIR}/arm-linux-gcc-3.4.1.tar.bz2

look at the path: ${EXTRACTEDDIR}/usr/local/arm/3.4.1/bin
(all the binary tools to compile, link and debug an ARM code)

add the above path to your PATH environment variable :

# export PATH=/usr/local/arm/3.4.1/bin/:$PATH

now we can build everything with this toolchain

for help and other learning materials
visit our site: Bina

Wednesday, September 19, 2007

Connect to SQL 2005 by the JDBC Provider


In order to connect to the SQL 2005 by the JDBC provider - in addition to the connection string,

you have to configure the service to a static ip/port :


for help and other learning materials
visit our site: Bina

Monday, September 17, 2007

Stumbleupon

Great toolbar - Discover new sites
go to the site: http://www.stumbleupon.com/
download and install the toolbar
choose your interesting areas
each time you click the stumble button on the toolbar it will take you to somewhere
many sites that cant be found easily with google

for help and other learning materials
visit our site: Bina

Timers problem on Windows 2003 server

In a SOA solution sometimes we need to set a timer on a web service to manage some tasks.
for example if we have cached data and want to flush it to a database each 30 seconds we can create a timer for this task
the problem is that the timer runs on anonimous identity and cant access the database
the problem exist only on Windows 2003 server, on XP pro it runs with ASPNET user identity
to solve it, create a thread that do that job and sleep for a 30 seconds
Another problem with the thread - it access database or other resource with network service identity and its a very weak account - so if the resource is located on other computer change the application pool identity to other domain user

for help and other learning materials
visit our site: Bina

Marshaling structures over TCP/IP

[this post came from our old blog]
To create a distributed application you can use TCP/IP, Remoting, Web Services, WSE etc.
There are 2 benefits with TCP/IP:
Performance Connecting .net application to legacy applicationsWhen you use for example a TCP server written in C on of the problems is to marshal structures.
.NET socket class provides a Receive method that fills a byte buffer.
The only problem is to convert it to the structure

Some ways I know:

Option 1: Using MemoryStream and BinaryReader (field by field)
C struct:
struct Demo{
int x;
int y;
};

C#
class Demo
{
public int x;
public int y;
}

Socket s = tcpl.AcceptSocket();
byte[] buf = new byte [100];

int bytesReceived = s.Receive(buf);
Demo d = new Demo();
MemoryStream m = new MemoryStream(buf);
BinaryReader br = new BinaryReader(m);
d.x = br.ReadInt32();
d.y = br.ReadInt32();


Option 2: using unsafe code (field by field)
You have to compile with /unsafe option and your code is not secured but its faster

unsafe
{
fixed (byte * p1 = buf)
{
int* p = (int *)p1;
d.x = *p;
d.y = *(p + 1);
}
}

Option 3: using Marshal class (all at once)
Its easy because you Marshal the structure at one time but its very inefficient (marshaling to the unmanaged heap and back to the managed heap)

[StructLayout(LayoutKind.Sequential)]
class Demo
{
public int x;
public int y;
}
......

Socket s = tcpl.AcceptSocket();
byte[] buf = new byte [100];

int bytesReceived = s.Receive(buf);
Demo d = new Demo();
IntPtr p1 = Marshal.AllocCoTaskMem( Marshal.SizeOf(typeof(Demo)));
Marshal.Copy(buf, 0, p1, Marshal.SizeOf(typeof(Demo)));
Marshal.PtrToStructure(p1, d);
Marshal.FreeCoTaskMem(p1);

option 4: using struct

if you declare it as struct (with all its constrains)
unsafe {
fixed (byte* p1 = buf) {
Demo* p = (Demo *)p1;
d = *p;
}
}

for help and other learning materials
visit our site: Bina

Starting a service and WMI

[this post came from our old blog]
One of my students asked me how to start/stop a service from .net application. The simple way to do it is using the ServiceController class:

ServiceController sc = new ServiceController();
sc.ServiceName = "Dnscache";
sc.Stop();

Another way is to use WMI
2 ways to do it:
A. Using classes from System.Management namespace
B. Generate .NET proxy class to access WMI class:

Example(B)

1. Using visual studio command prompt type :

C:\demo>mgmtclassgen win32_Service

Microsoft (R) .NET Framework Version 2.0.50727.42
Copyright (C) Microsoft Corporation. All rights reserved.
Generating Code for WMI Class win32_Service ...
Code Generated Successfully!!!!

2. Add the generated file to your project
3. Add reference to system.management.dll
4. Use the class

Service s = new Service(new ManagementPath("\\\\localhost\\root\\cimv2:Win32_Service.Name='Dnscache'"));

s.StartService();
//…….
s.StopService();

WMI helps in many management tasks like installing software, monitoring events etc.
Note that within windows 2003 Server Microsoft added many methods to WMI classes. Using the above tool in windows 2003 server usually generate a bigger class file

for help and other learning materials
visit our site: Bina

Out of resource - TCP ports

In A SOA solution we want to create a client that loads the server with many requests
we wrote too clients :
  • java client - runs on linux with AXIS toolkit
  • c# client - runs on windows using .net FCL and WSE 3.0

both clients crashed after a while with the error : "too many open files" of "out of resources"
the problem is the use of many TCP ports without release (that managed automatically by OS)
The OS allow you to use limited number of port concurrently and free the unused ports once in a while - if you want more ports in the interval it will fail

2 solutions

  • Set HTTP keep-alive both on client and server that means that you use the same port for each request (this can be problem if using built in load balancing feature)
  • Raise the port number limit

To raise the port number:

On Windows Registry: set the following
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"TCPTimedWaitDelay"=dword:0000001e
"MaxUserPort"=dword:0000fffe

On Linux:
open the file etc/security/limits.conf and set nofiles=N

for help and other learning materials
visit our site: Bina

SOA

Course Demo source codes

XML standards -ch3.zip

Building Web Services - ch4.zip

Consuming Web Services - ch5.zip

Message handling - ch7.zip

Application Servers - ch8.zip

Advance topics - ch9.zip

Tools and resources

XML Validator
XSL Viewer
gSoap toolkit
Xerces
Microsoft SOAP Toolkit - MSDN
Microsoft XML Notepad 2007
Notepad++
XML Spy - Altova
Microsoft SQL Server 2005 JDBC Driver
SUN Netbeans
SOA Applications and UML Learning Trails
Java EE Applications Learning Trail
http://www.service-architecture.com/


for help and other learning materials
visit our site: Bina

Sunday, September 16, 2007

Links

Web Services

Zip Distance Calculator WS
Currency Converter WS

.Net Links

http://www.gotdotnet.com/
http://www.c-sharpcorner.com/
http://www.pinvoke.net/
http://www.codeproject.com/
web services index
http://www.csharphelp.com/
http://www.dotgnu.org/
c# examples
many links to .NET sites
Chart control
API Text Viewer
Convert VB.NET to C#
CORBA.NET
Ja.NET - java and .net remoting interop
Microsoft Patterns and practices

.Net Tools

http://www.devexpress.com/
http://www.componentone.com/
reflector
resharper
http://www.codesmithtools.com/
http://www.codeproject.com/csharp/DSWatch.asp
XML Visualizer
Regulator
MSF
MSF for small projects
.NET Profiler
.NET Reflector , addins
XML Notepad
merlin - template generator
ntsd, sos.dll

Security Links

http://www.phrack.org/
bufferoverrun
http://www.secureprogramming.com/
http://project.honeynet.org/
http://planet.nana.co.il/yossiea/
http://packetstormsecurity.org/
http://www.cs.ucsb.edu/~jzhou/security/
http://www.dwheeler.com/secure-programs/
http://pluralsight.com/wiki/default.aspx/Keith.GuideBook.HomePage

Linux/Unix

http://www.cs.cf.ac.uk/Dave/C/ - book
http://www.mono-project.com/Main_Page - .NET for linux
http://www.advancedlinuxprogramming.com/ - free book
http://www.unixguide.net/linux/linuxshortcuts.shtml
http://www.linux.org/docs/online_books.html -many books
http://www.tldp.org/ -linux documentation project
http://www.linuxhq.com/guides/TLK/tlk.html - linux kernel guide
http://www.frozentech.com/content/livecd.php - linux on CD
http://www.codefidence.co.il
http://www.free-electrons.com/

if you have another interesting sites please add a comment

for help and other learning materials
visit our site: Bina

Windows Scripts Examples, Slides, Tools

WMI Scripting -slides
Simple scripts - all kind (vbs,js,wsf,wsc -com)
Using components
Active Directory scripts
Administrative scripts
More Administrative scripts
Database scripts
WMI examples
Script repository

Script encoder

for help and other learning materials
visit our site: Bina

Visual Studio 6 Examples ...

WIN32 Slides

Intro
Simple UI


WIN32 Examples

Firsthello
Hello2
Hello3
Dialogbox
Keyboard
Menus
Menus and shortcut
Msgbox
Mouse
Mouse2
Timer
Mailslot client
Mailslot server
Memory mapped Files
Use mapped file
Multithreading example 1
Multithreading example 2
Multithreading example 3
Multithreading and Critical section
TCP server
TCP client
Virtual memory and SEH
Random numbers
Salted Hash
DPAPI
RPC server
RPC client
File Security
Registry Security
Pipe Security

COM Examples

First design - interface and implementation
IUnknown
Reference Counting
First COM Server - no ATL
First COM Client
Simple example - no ATL
Client for simple example
Container - no ATL
Aggregation - no ATL
Simple ATL
Simple ATL(dual)
COM that use ADO
Use ADO COM from vb
COM event with MFC client
Poligon ActiveX control
VC client for VB COM
ADO Example
Multithreaded Component
Property Example
COM and VB types
Activex control - step by step example


MFC Slides

Intro
Simple Applications
Menus
Dialog Boxes
Windows and messages
Mouse and keyboard
Controls
DDX/DDV
Document View

MFC Examples

The first example-hello world
Hello world ver. 2
Menus Example
Dialog Boxes Example
Creating Windows
Creating windows 2
Controling the mouse
The Paint Example
X-MIX-DRIX
Controls example 1
Controls example 2
Controls example 3
Using Fonts
Document view


Visual Basic 6 Examples

Basic
Buttons
Activex
Activex Controls
ADO
API
Calculator
Common Dialog
Classes
Class example
Winsock
Clock
Copy design
Data Access
Focus
Inputbox
Jet
Languages
Listgrades
Lucky7
Marking
MDI
Minicalc
Mouse
Multiselect
OLE
Picasso
List to file
Systray
Textbox
Textpad
Weekdays
XMix
Picasso ex.
XMix ex.


for help and other learning materials
visit our site: Bina

C/C++ Slides, Examples and documents

C Slides

Introduction to computers
Intoduction to C
Problem solving

C Examples

Introduction

Flow of control
Functions
Simple IO
Arrays
Algorithms
Complexity
Pointers and Strings
Dynamic Allocation of memory
Recursion
Structures
Data structures
Files IO
Mouse control (DOS)


C++ Slides

Introduction to C++

C++ as a better C
OOP overview
Classes and objects
Operator overloading
Inheritance
Dynamic Bind
RTTI and Templates
More on templates
Exceptions and Multiple inheritance
STL and IO
Design Patterns introduction
Creational Patterns
Structural Patterns
Behavioral Patterns

C++ Examples

Classes

Operators
Complex number example
Full classes examples
Inheritance 1
Inheritance 2
Multiple Inheritance
Generic List template
String class example
Files IO
Design patterns
Instructions for C++ programs

for help and other learning materials
visit our site: Bina

Assembly Slides and Examples

Assembly Slides (x86)

Introduction To Assembly

The CPU Registers
Basic Instructions
Conditions And Loops
Inline Assembly
Programs
Jump and Stack
32 bit
floating point

Assembly Examples (x86)

Inline Assembly - Adding 2 values
Inline Assembly - Setting array values
Inline Assembly - counting chars in array
Inline Assembly - check if array is sorted
Hello World Example
Display String by char
Display integer number
Input/Output of integer numbers
Find max number in array
Using The Stack
Procedures Example
Project Example ,
other file


X86 overview - document
Lab

Computers overview

Hardware

Networking
Software

Computer networks

Introduction to networking
TCP/IP
Windows NT/2000


for help and other learning materials
visit our site: Bina

Internet Programming Examples

HTML Examples

Background Color
Background Image
Text Format
Links
Tables
Forms
Frames
Sound
Bullets & Numbers
Pointer
Refresh
Pre Tag
Video
Iso-Visual Hebrew
Windows Hebrew

DHTML Examples

Using SPAN
More styles
STYLE Tag
Headers
Using CSS file ,
samp.css
Classes
Free Class
DIV
DIV With Style
Background image to text
Padding and Margin

Frames

Exact Position

Z-Index

Menu Example 1
Links
Movement
Filters
Transitions

Java Script Examples

Simple Example
Simple Event
Functions
Functions and events
Changing value of vars
Basic Arithmetic operations
String concatenation
Basic Conditions
Another Example for If-else
For Loop
Nesting Loops
While Loop
Basic Events
Basic Function
Functions And Arguments
Returning values
Simple Array Example
Arrays And Functions
2 Dimensional Array
Example
Document Objects
Links
Page Update
Location
Location Object
Title
Images
Form name
Radio
BGColor
Frames
Window Object
Window With Properties
Window control
Dynamic Creation of page
Navigator Object
Animated Button
Fast load pictures
Slide Show
Slide Show 2
Password
History Object
String Object
Date Object
Math Object
Built In Functions
User Interaction
Timeout
SetInterval
Using JS file , sc.js
Cookies
Status bar
Scrolling StatusBar
Mail Submit
Menu Example
Simple Bind
Using external file
Table paging
XML DOM
XMLHTTP
Sorting Array of objects
Class
Static members
Private members
Inheritance
Inheritance using prototype
Adding members
Inheritance - generic
Using base class hidden members
Multiple Inheritance
Inclusion Polymorphism
Simple behavior
Simple HTC
Attach events
Adding properties
Set/Get Properties
Methods
Custom Events
Custom Tags

for help and other learning materials
visit our site: Bina

Database Examples, Slides and Documents

Data Modelling

Overview -slides
Data Modeling - slides
Queries - slides
Exercises
Data Dictionary
Final ex.
Class ex.
DSD example
ERD example
Solution 1
Solution 2
Solution 3
Solution 4
Solution 5
Hotel ex.
Football Ex.
Students Ex

Microsoft SQL Server

TSQL -slides
Stored Procedure -slides
Functions And Triggers - slides
Indexes - slides
Views
Stored Procedures
Functions
Triggers
Cursors
libMDB
Class Ex.
Views exercise
Stored Procedures exercise
Functions and Triggers exercise
DB Objects exercise
Cursor and Admin exercise


Oracle

Overview
Intro
SQL*Plus
SQL
Multiple Tables
Tables and constraints
Database Objects
PL/SQL Blocks
Control stuctures
Cursors
Exceptions
Collections
Procedures and functions
Packages
Triggers
Oracle PSP

Oracle Labs
Database script
Database schema
Lab1
Lab1 Solution
Lab2
Lab2 Solution
Lab3
Lab3 Solution
Lab4
Lab4 Solution
Lab5
Lab5 Solution
Lab6
Lab6 Solution
Lab7
Lab7 Solution
Lab8
Lab8 Solution
Lab9
Lab9 Solution
Lab10
Lab10 Solution
Lab11
Lab11 Solution
Lab12
Lab12 Solution
Lab14
Lab14 Solution
Oracle Application Server



for help and other learning materials
visit our site: Bina

Hardware - Slides and Examples

Slides

Intro

Numbers
Logic circuits
Combinatorial components
Synchronous components
Single data-path CPU arch.
Pipelined CPU
Memory
PC Arch

Hardware Design Examples

Simple example for MAX II CPLD
LCD Example for MAX II

more VHDL and hardware design examples will be added shortly...

for help and other learning materials
visit our site: Bina

Learning 8051 and embedded systems

One easy way to learn 8051 microcontroller and Embedded systems basic is to use an evaluation board. One option that we use in our courses is DSM-3090
you can buy all the kit directly from http://www.ses.co.il
the board contains some hardware devices including leds and switches. It also contains hardware expansion area and allow you easily add your devices
you can download compiler and tools from the site and find some working examples in our site under Microcontrollers section

for help and other learning materials
visit our site: Bina

Saturday, September 15, 2007

Microcontrollers - Examples

8051 Examples (using evaluation board DSM-3090)

Echo example
Counter using leds
Running leds
Serial demo
Another serial demo
Yet another serial example
Inline assembly
LCD example (need hardware extension)
Timer example
User Guide for DSM 3090

ARM - using keil tools (http://www.keil.com/)

Basic Examples - Find at installation folder ([Keil install]\ARM\Examples)
Interrupts
Software Interrupts
RT kernel - task management
RT kernel - multiple task and C++
RT kernel - events
RT kernel - events and interrupts
RT kernel - semaphores
RT kernel - mailboxes

for help and other learning materials
visit our site: Bina

VxWorks Examples

Slides

Slides - programming with VxWorks

Step by step labs using tornado (Hebrew)

Installing Tornado/VxWorks
VxWorks Lab1 - Shell process
VxWorks Lab2 - timing
VxWorks Lab3 - tasks
VxWorks Lab4 - semaphores
VxWorks Lab5 - message queues
VxWorks Lab6 - round robin
VxWorks Lab7 - watchdogs

for help and other learning materials
visit our site: Bina

Embedded Linux - Examples, Slides ...

Slides

Introduction to Embedded Linux

OSK 5912 board tutorial

The starter kit
Setting up the host
Connecting to the device
Toolchain
Boot loader
Building the kernel
Root file system
Loading the kernel and starting the system

Some userspace examples:

priority ceiling example
threads with attributes
timer
signals example 1
signals example 2
named pipes
posix queues
sysV queues example 1
sysV queues example 2
h file for sysV queues examples
shared memory
mmap example
limit stack size
Using fork,execve,wait,signal System Calls in Linux
Using pipe , dup , read write system calls
Using POSIX Threads
Using the POSIX scheduling Policies
Using POSIX semaphores and mutexes
Using the UNIX's Socket System Calls

Some kernelsapce examples

kernel linked list
using kernel lists
proc file example
char driver example
using the char driver from userspace
simple interrupt
interrupt using tasklet
interrupt using workqueue

Slides from operating systems course with Linux

Introduction to Operating Systems

Process Management
Inter-process Communication
File System
File System2
Threads
Scheduling
Scheduling2
Process Synchronization
Process Synchronization2
Memory Management
Memory Management2
Distributed Communication
Security problems

Unix/Linux General Slides

UNIX intro
UNIX Arch.
UNIX Arch. cont.
UNIX shell scripts 1
UNIX shell scripts 2
Class ex.


for help and other learning materials
visit our site: Bina

Wednesday, September 12, 2007

Real time - general course

Slides

Real Time systems

Real Time Programming
Software Design
Fault Tolerance
Computer hardware
Low level programming
Interrupts
Networking
RS232
Real Time Operating Systems
RTOS Programming

Examples

Low level programming - DOS
RTOS implementation in WIN32
Microthread - simple OS implementation


for help and other learning materials
visit our site: Bina

JAVA Examples, Slides ...

Standard Edition Files

Intro - Slides
Java language - Slides
OOP - Slides
ADT - Slides
Exceptions - Slides
Applets - Slides
Multithreading - Slides
AWT - Slides
Intro - Lesson Examples
OOP - Lesson Examples
Exceptions - Lesson Examples
Applet - Lesson Examples
Threads - Lesson Examples
Network - Lesson Examples
More Applets
AWT with ex.
More AWT
AWT - Solution
Calculator
IO
Menu
Threads ex.
Threads sol
Balls Applet
JDBC
SWING examples
More Applets
AWT Applets
MetaData
Linked list
Input Example
Run process
Random
SSL
DSA
RSA
Rect class
Classes Example
Students List
Inheritance Example
Students with Inheritance

Some Exercises with Solutions
Ex. 0
Ex. 1
Solution for ex1.
Ex. 2
Solution for ex2.
Ex 3
Ex 4
Solution for ex4.
Ex 5.
Ex 6.
Java vs. C++
Java.Util example
More Exercises
Applets
Sun Examples
Exceptions
Iterator

Enterprise Edition and SAP

Intro
Java and XML
SAP Netweaver
SAX parser1
SAX parser2
SAX parser3
Xml file for the examples
Build XML file
XML file
Servlets
J2EE Examples
Web Service client and DOM parser
SAP java connector - no params.
SAP java connector
Web Dynpro Lab1
Web Dynpro Lab2
Web Dynpro Lab3
Web Dynpro Lab4
Web Dynpro Lab5
Web Dynpro Lab6
Value Sets and JCO
CMPProducthome
SAP .NET connector
SAP .NET connector
FRC in minisap 6.2
.NET Web service for sap data


for help and other learning materials
visit our site: Bina

Tuesday, September 11, 2007

.NET Slides, Examples etc...

C# programming

students - example of collection class
sorting using Icomparable - sorting user define type (IComparable)
breaking cycle dependency using interface - design problem
dll example with interfaces - interface dependency
using the dll - the client
abstract class example 1
abstract class example 2
operator overloading
class Object members - overriding Object members
reflection simple example - GetType example
indexer example - custom collections
delegate example
dll with delegate
using the delegate dll
IEnumarable eaxmple
linked list simple example

.NET Framewok

Collections - examples from System.Collections Namespace
configuration file
crystal reports
code generation
simple serialization
simple deserialization
custom serialization
WMI example
Object Pooling - using GC
MSMQ

ADO.NET

Command1.zip - Command Example
CommandSP.zip - Stored Procedure with command
DataSet1.zip - using dataset
ADONET.zip - more examples
accessing Datasets - using dataset
datagrid - binding data in datagrid
stored procedure example - using stored procedures and parameters
xml data example - simple xml example
command example
datareader example

datagrid combobox


ASP.NET

Trace Demo and Validations
ASP.Net + ADO.Net
ASPState
Cache
Security.zip
datalist example
forms security
web handler
web server control
web threat example
windows security
datagrid advance(VB)
DataList/repeater(VB)
Validation
Datagrid
Ashx file


ASP.NET 2.0

Data Access
Ajax
Localization
Master pages
New Controls
Overview Demos
Simple Profiles
Using Profiles
Profiles and users
Themes
Web Parts

Web Services
Demo1
UseWoodgrove
bitmap web service
Soap Trace Extension
Using UDDI SDK Examples
stateful web service - with windows form client
Using Perf Counters and Listeners
SOAP Encryption
Scrape
Slides - web services
slides - WSE

Enterprise Services (COM+)
JIT & Synchronize
Security
CRMDemo
LCE.zip
QueuDemo.zip

.NET Security





Intro - slides
Web Security - slides
SQL Injection -slides
Manage Assemblies -slides
code access security
evidence
simple example
isolated storage
reflection
security files
publisher policy
simple hashed password
hashing - all types
certificate and password enc/dec
Passwords in sql server using hashing
simple role based
Role Based Security(VB)
Role Based(CS)
Copy DACL using WMI
Sql Injection demo
XSS example , demo
Buffer overrun(basic idea)
Demo in C for BO
Dynamic invoke using reflection
code signing
Binary Data in sql server
Symetric Enc/Dec
Asymetric Enc/Dec
multi file assembly
DPAPI

Remoting

simple remoting example
remoting using interface
marshaling example
CAO Factory
Custom Sink
Custom Channel


XML

XML Schema Slides
xml generator
xml control(ASP.NET)
xml and dso(ASP.NET)
MSXML parser 4.0
XSL Examples
XSL Viewer
XSLT for xml transform
XML DSO example1
XML DSO example2
DSO Table Paging
DOM
DOM and XSLT
XMLHTTP
Client DSO and .NET
XML Reader simple example
XML DOM simple example
XML Schema Validator

Design Patterns


OOD - slides
UML - slides
Creational Patterns - slides
Structural Patterns - slides
Behavioral Patterns - slides
Abstract Factory
Adapter
Bridge
Builder
Chain of responsibility
Command
Composite
Decorator
Observer using delegates
Iterator using IEnumerator
Facade
Factory Method
Flyweight
Interperter
Iterator
Mediator
Memento
Observer
Prototype
Proxy
Singleton
State
Strategy
Template Method
Visitor

Interop


Overview and performance - slides
pinvoke
pinvoke using reflection
union example
unsafe example
using c++ dll (MC++ and C#)
using c++ dll (PInvoke)
hebrew/english keyboard
ActiveDir
Buffers
CreateObject
Errors
FindFile
GCHandle
Handleref
MsgBox
Openfiledlg
OSinfo
printf
Systime
Pinvokelib.h
Pinvokelib.cpp
Arrays
Callback
ClassMethods
OutArrayofStructs
Strings
Structs
Unions
Void

Multithreading

form invoke
async examples
Asynchronous filestream
Interupt And Abort
join example
Managing Threads
priority example
Thread Safety 1
Thread Safety 2
wait example
Attribute example
lock example
monitor example
race condition
Dataslot example

UI design


win forms example - forms and controls
panel and listbox - dynamic creation of controls
listbox example - using listbox as object container
using controls - more controls
toolbar example 1 - prototype of main window with menu and toolbar
toolbar example 2 - using tag as a delegate variable
context menu and notify icon
validating user input - using textbox validation and errorprovider
chat - simulation with delegates
windows observer - exercise
Custom Control
Composite Control
shaped form
simple shaped form
file license
registry license
user controls
web chart example 1
web chart example 2
web chart example 3
Right To left treeview
typeconverter
Drag and Drop

Networking

http example
tcpip
http example (bank israel)
Soap example



for help and other learning materials
visit our site: Bina