Search Results

Search found 25606 results on 1025 pages for 'custom errors'.

Page 48/1025 | < Previous Page | 44 45 46 47 48 49 50 51 52 53 54 55  | Next Page >

  • Integrating a Custom Compiler with the Visual Studio IDE

    - by M.A. Hanin
    Background: I want to create a custom VB compiler, extending the "original" compiler, to handle my custom compile-time attributes. Question: after I've created my custom compiler and I've got an executable file capable of compiling VB code via the standard command-line interface, how do I integrate this compiler with the Visual Studio IDE? (such that pressing "compile" or "build" will make use of my compiler instead of the default compiler). EDIT: (Correct me if i'm wrong) From the reactions here, I see this question is a bit shocking, so I shall further explain my needs and background: .NET provides us with a great mechanism called Attributes. As far as I understand, making attributes apply their intended behavior upon the attributed element (assembly, module, class, method, etc.) - attributes must be reflected upon. So the real trick here is reflecting and applying behavior at the right spot. Lets take Serialization for example: We decorate a class with the Serializable attribute. We then pass an instance of the class to the formatter's Serialize method. The formatter reflects upon the instance, checking if it has the Serializable attribute, and acting accordingly. Now, if we examine the Synchronization, Flags, Obsolete and CLSCompliant attributes, then the real question is: who reflects upon them? At least in some cases, it has to be the compiler (and/or IDE). Therefore, it seems that if I wish to create custom attributes that change an element's behavior regardless of any specific consumer, i must extend the compiler to reflect upon them at compilation. Of course, these are not my personal insights: the book "Applied .NET Attributes" provides a complete example of creating a custom attribute and a custom C# compiler to reflect upon that attribute at compilation (the example is used to implement "java-style checked exceptions").

    Read the article

  • Programmatically copying custom content type and columns from one web to another

    - by BeraCim
    Hi all: I'm experiencing a very stubborn problem when copying custom content type and its columns from one web to another within the same site. Basically, this is the code that I have: foreach (SPField field in existingWeb.Fields) { if (!destinationWeb.Fields.ContainsField(field.Title)) { destinationWeb.Fields.AddFieldAsXml(field.SchemaXml); destinationWeb.Update(); } } foreach (SPContentType existingWebCt in destinationWeb.ContentType) { SPContentType newContentType = new SPContentType(existingWebCt.Parent, destinationWeb.ContentTypes, existingWebCt.Name); foreach (SPFieldLink fieldLink in existingWebCt.FieldLinks) { SPField sourceField = existingWebCt.Fields[fieldLink.Id]; if (destinationWeb.Fields.ContainsField(sourceField.Title)) { SPFieldLink destinationWebFieldLink = new SPFieldLink(destinationWeb.Fields[sourceField.Title]); newContentType.FieldLinks.Add(destinationWebFieldLink); } } } existingWeb and destinationWeb are 2 webs within the same site. The code runs fine. But the problem is that in the SITE Content Type screen (under site settings), when I click the custom column link in the custom content type, I got an error saying: Invalid field name {UID}. The UID is the same UID as the custom column in the existing site. I checked with my web settings after completion. I can see the custom list (which I created with an item for testing purpose), but the custom column is gone from the view (though the actual data is still there... just have to check the box to get it to display). But I think that is less important... more of fyi. I've also gotten a variety of different exceptions should I copy things wrongly. Google has failed to help me out on this one. Does anyone know what I'm missing in order to get that link to work again? Thanks.

    Read the article

  • Custom Database integration with MOSS 2007

    - by Bob
    Hopefully someone has been down this road before and can offer some sound advice as far as which direction I should take. I am currently involved in a project in which we will be utilizing a custom database to store data extracted from excel files based on pre-established templates (to maintain consistency). We currently have a process (written in C#.Net 2008) that can extract the necessary data from the spreadsheets and import it into our custom database. What I am primarily interested in is figuring out the best method for integrating that process with our portal. What I would like to do is let SharePoint keep track of the metadata about the spreadsheet itself and let the custom database keep track of the data contained within the spreadsheet. So, one thing I need is a way to link spreadsheets from SharePoint to the custom database and vice versa. As these spreadsheets will be updated periodically, I need tried and true way of ensuring that the data remains synchronized between SharePoint and the custom database. I am also interested in finding out how to use the data from the custom database to create reports within the SharePoint portal. Any and all information will be greatly appreciated.

    Read the article

  • loading custom view using loadNibNamed showing memory leaks

    - by user307550
    I have a number of custom table cells and views that I built using interface builder In interface builder, everything is set up similarly. There is a table cell and a couple other UILabels and a background image Object owner if the nib is NSObject Class for the table cell is the name of the class for my table cell Here is how I create the table cell in my code: SectionedSwitchTableCell *cell = nil; NSArray *nibs = [[NSBundle mainBundle] loadNibNamed:kSectionedSwitchTableCellIdentifier owner:owner options:nil]; for(id currentObject in nibs) { if([currentObject isKindOfClass:[SectionedSwitchTableCell class]]) { cell = (SectionedSwitchTableCell *)currentObject; break; } } return cell; For my custom table headers I have this NSArray *nibs = [[NSBundle mainBundle] loadNibNamed:@"CustomTableHeader" owner:self options:nil]; for(id currentObject in nibs) { if([currentObject isKindOfClass:[CustomTableHeader class]]) { return header } } In my .h and .m files for the custom view, I have IBOutlet, @property set up for everything except for the background image UIImageView. Everything that has the IBOutlet and @property are also @synthesized and released in the .m file. Leaks is showing that I have memory leaks with CALayer when I create these custom view objects. Am I doing something wrong here when I create these custom view objects? I'm kind of tearing my hair out trying to figure out where these leaks are coming from. As a side note, I have a UIImageView background image defined in these custom views but I didn't define properties and IBOutlets in my .h and .m files. Defining them doesn't make a difference when I run it through Leaks but just wanted to confirm if I'm doing the right thing. Any input would be super helpful. Thanks :)

    Read the article

  • SharePoint 2010 Hosting :: SharePoint 2010 Custom Web Template

    - by mbridge
    SharePoint 2010 offers some changes and additions to the SharePoint 2007 approach. Site definitions and publishing providers remain largely the same, but site templates created from the SharePoint UI or SharePoint Designer are now saved to a .WSP file, the same solution deployment packaging file format used for deploying custom SharePoint solutions. Site Templates saved to a .WSP solution file can be imported into Visual Studio for additional customization. Introducing the WebTemplate Feature Element The WebTemplate element, introduced in SharePoint 2010, allows site templates to be defined and deployed as a Feature as part of a solution package. A WebTemplate element feature can be used to deploy site templates in either a Farm or Sandbox solution - without modification. If deployed as a Farm feature and solution, site templates will appear in the site collection provisioning page in Central Administration and can be used to provision new site collections, or within a Site Collection to create sub-sites. If deployed as a Site feature and Sandbox solution, site templates will appear within the site collection to support creating a root site or sub-sites. Creating a new WebTemplate Feature in Visual Studio 2010 In addition to supporting the ability to save and import Site Templates created from the SharePoint UI into Visual Studio for customization, it can also be used to create new site templates from scratch. In the following sample we will walk through how to create a new WebTemplate solution based on  a customized version of the out-of-box Blank Site. 1. Create a new Empty SharePoint Project in Visual Studio 2010. 2. Add a new Empty Element to the project. we like to create folders for each type of element in our solution, so in our sample, we have created a Web Templates folder, and then added the BLANKENT element. NOTE: The Elements folder MUST share the same name as the WebTemplate name property. 3. Open the empty Elements.xml and add the <WebTemplate /> element block. 4. Copy the default.aspx and ONET.XML files from the STS site definition location at 14\TEMPLATES\Site Templates\STS. We will customize the ONET.XML in the next section. Open the properties for each file and set the Deployment Type to ElementFile. This ensures the files are deployed with the Element when included in a Feature. 5. By default a new feature is added to the solution for you automatically when a new element is added to the solution. Rename and edit the feature as appropriate. Select Farm for the scope to deploy the WebTemplate to the entire farm, or Site for a sandboxed solution. Customize the ONET.XML At this point, you have a working WebTemplate solution that will deploy the identical site to the out-of-box Blank Site, however the ONET.XML supporting the STS site definition contains 3 configurations – essentially 3 separate site templates and can be simplified before customizing. In the following sample, we have trimmed the ONET.XML to the essentials for a single Site Template, and added references to the <SiteFeatures /> and <WebFeatures /> elements to include the SharePoint Standard and Enterprise features. We have left the top-level navigation bar, and the default page module intact, but removed all other extraneous markup.

    Read the article

  • Fragmented Log files could be slowing down your database

    - by Fatherjack
    Something that is sometimes forgotten by a lot of DBAs is the fact that database log files get fragmented in the same way that you get fragmentation in a data file. The cause is very different but the effect is the same – too much effort reading and writing data. Data files get fragmented as data is changed through normal system activity, INSERTs, UPDATEs and DELETEs cause fragmentation and most experienced DBAs are monitoring their indexes for fragmentation and dealing with it accordingly. However, you don’t hear about so many working on their log files. How can a log file get fragmented? I’m glad you asked. When you create a database there are at least two files created on the disk storage; an mdf for the data and an ldf for the log file (you can also have ndf files for extra data storage but that’s off topic for now). It is wholly possible to have more than one log file but in most cases there is little point in creating more than one as the log file is written to in a ‘wrap-around’ method (more on that later). When a log file is created at the time that a database is created the file is actually sub divided into a number of virtual log files (VLFs). The number and size of these VLFs depends on the size chosen for the log file. VLFs are also created in the space added to a log file when a log file growth event takes place. Do you have your log files set to auto grow? Then you have potentially been introducing many VLFs into your log file. Let’s get to see how many VLFs we have in a brand new database. USE master GO CREATE DATABASE VLF_Test ON ( NAME = VLF_Test, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.ROCK_2008\MSSQL\DATA\VLF_Test.mdf', SIZE = 100, MAXSIZE = 500, FILEGROWTH = 50 ) LOG ON ( NAME = VLF_Test_Log, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.ROCK_2008\MSSQL\DATA\VLF_Test_log.ldf', SIZE = 5MB, MAXSIZE = 250MB, FILEGROWTH = 5MB ); go USE VLF_Test go DBCC LOGINFO; The results of this are firstly a new database is created with specified files sizes and the the DBCC LOGINFO results are returned to the script editor. The DBCC LOGINFO results have plenty of interesting information in them but lets first note there are 4 rows of information, this relates to the fact that 4 VLFs have been created in the log file. The values in the FileSize column are the sizes of each VLF in bytes, you will see that the last one to be created is slightly larger than the others. So, a 5MB log file has 4 VLFs of roughly 1.25 MB. Lets alter the CREATE DATABASE script to create a log file that’s a bit bigger and see what happens. Alter the code above so that the log file details are replaced by LOG ON ( NAME = VLF_Test_Log, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.ROCK_2008\MSSQL\DATA\VLF_Test_log.ldf', SIZE = 1GB, MAXSIZE = 25GB, FILEGROWTH = 1GB ); With a bigger log file specified we get more VLFs What if we make it bigger again? LOG ON ( NAME = VLF_Test_Log, FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.ROCK_2008\MSSQL\DATA\VLF_Test_log.ldf', SIZE = 5GB, MAXSIZE = 250GB, FILEGROWTH = 5GB ); This time we see more VLFs are created within our log file. We now have our 5GB log file comprised of 16 files of 320MB each. In fact these sizes fall into all the ranges that control the VLF creation criteria – what a coincidence! The rules that are followed when a log file is created or has it’s size increased are pretty basic. If the file growth is lower than 64MB then 4 VLFs are created If the growth is between 64MB and 1GB then 8 VLFs are created If the growth is greater than 1GB then 16 VLFs are created. Now the potential for chaos comes if the default values and settings for log file growth are used. By default a database log file gets a 1MB log file with unlimited growth in steps of 10%. The database we just created is 6 MB, let’s add some data and see what happens. USE vlf_test go -- we need somewhere to put the data so, a table is in order IF OBJECT_ID('A_Table') IS NOT NULL DROP TABLE A_Table go CREATE TABLE A_Table ( Col_A int IDENTITY, Col_B CHAR(8000) ) GO -- Let's check the state of the log file -- 4 VLFs found EXECUTE ('DBCC LOGINFO'); go -- We can go ahead and insert some data and then check the state of the log file again INSERT A_Table (col_b) SELECT TOP 500 REPLICATE('a',2000) FROM sys.columns AS sc, sys.columns AS sc2 GO -- insert 500 rows and we get 22 VLFs EXECUTE ('DBCC LOGINFO'); go -- Let's insert more rows INSERT A_Table (col_b) SELECT TOP 2000 REPLICATE('a',2000) FROM sys.columns AS sc, sys.columns AS sc2 GO 10 -- insert 2000 rows, in 10 batches and we suddenly have 107 VLFs EXECUTE ('DBCC LOGINFO'); Well, that escalated quickly! Our log file is split, internally, into 107 fragments after a few thousand inserts. The same happens with any logged transactions, I just chose to illustrate this with INSERTs. Having too many VLFs can cause performance degradation at times of database start up, log backup and log restore operations so it’s well worth keeping a check on this property. How do we prevent excessive VLF creation? Creating the database with larger files and also with larger growth steps and actively choosing to grow your databases rather than leaving it to the Auto Grow event can make sure that the growths are made with a size that is optimal. How do we resolve a situation of a database with too many VLFs? This process needs to be done when the database is under little or no stress so that you don’t affect system users. The steps are: BACKUP LOG YourDBName TO YourBackupDestinationOfChoice Shrink the log file to its smallest possible size DBCC SHRINKFILE(FileNameOfTLogHere, TRUNCATEONLY) * Re-size the log file to the size you want it to, taking in to account your expected needs for the coming months or year. ALTER DATABASE YourDBName MODIFY FILE ( NAME = FileNameOfTLogHere, SIZE = TheSizeYouWantItToBeIn_MB) * – If you don’t know the file name of your log file then run sp_helpfile while you are connected to the database that you want to work on and you will get the details you need. The resize step can take quite a while This is already detailed far better than I can explain it by Kimberley Tripp in her blog 8-Steps-to-better-Transaction-Log-throughput.aspx. The result of this will be a log file with a VLF count according to the bullet list above. Knowing when VLFs are being created By complete coincidence while I have been writing this blog (it’s been quite some time from it’s inception to going live) Jonathan Kehayias from SQLSkills.com has written a great article on how to track database file growth using Event Notifications and Service Broker. I strongly recommend taking a look at it as this is going to catch any sneaky auto grows that take place and let you know about them right away. Hassle free monitoring of VLFs If you are lucky or wise enough to be using SQL Monitor or another monitoring tool that let’s you write your own custom metrics then you can keep an eye on this very easily. There is a custom metric for VLFs (written by Stuart Ainsworth) already on the site and there are some others there are very useful so take a moment or two to look around while you are there. Resources MSDN – http://msdn.microsoft.com/en-us/library/ms179355(v=sql.105).aspx Kimberly Tripp from SQLSkills.com – http://www.sqlskills.com/BLOGS/KIMBERLY/post/8-Steps-to-better-Transaction-Log-throughput.aspx Thomas LaRock at Simple-Talk.com – http://www.simple-talk.com/sql/database-administration/monitoring-sql-server-virtual-log-file-fragmentation/ Disclosure I am a Friend of Red Gate. This means that I am more than likely to say good things about Red Gate DBA and Developer tools. No matter how awesome I make them sound, take the time to compare them with other products before you contact the Red Gate sales team to make your order.

    Read the article

  • AI to move custom-shaped spaceships (shape affecting movement behaviour)

    - by kaoD
    I'm designing a networked turn based 3D-6DOF space fleet combat strategy game which relies heavily on ship customization. Let me explain the game a bit, since you need to know a bit about it to set the question. What I aim for is the ability to create your own fleet of ships with custom shapes and attached modules (propellers, tractor beams...) which would give advantages and disadvantages to each ship, so you have lots of different fleet distributions. E.g., long ship with two propellers at the side would let the ship spin around that plane easily, bigger ships would move slowly unless you place lots of propellers at the back (therefore spending more "construction" points and energy when moving, and it will only move fast towards that direction.) I plan to balance all the game around this feature. The game would revolve around two phases: orders and combat phase. During the orders phase, you command the different ships. When all players finish the order phase, the combat phase begins and the ship orders get resolved in real-time for some time, then the action pauses and there's a new orders phase. The problem comes when I think about player input. To move a ship, you need to turn on or off different propellers if you want to steer, travel forward, brake, rotate in place... These propellers don't have to work at their whole power, so you can achieve more movement combinations with less propellers. I think this approach is a bit boring. The player doesn't want to fiddle with motors or anything, you just want to MOVE and KILL. The way I intend the player to give orders to these ships is by a destination and a rotation, and then the AI would calculate the correct propeller power to achive that movement and rotation. Propulsion doesn't have to be the same throught the entire turn calculation (after the orders have been given) so it would be cool if the ships reacted as they move, adjusting the power of the propellers for their needs dynamically, but it may be too hard to implement and it's not really needed for the game to work. In both cases, how would that AI decide which propellers to activate for the best (or at least not worst) trajectory to be achieved? I though about some approaches: Learning AI: The ship types would learn about their movement by trial and error, adjusting their behaviour with more uses, and finally becoming "smart". I don't want to get involved THAT far in AI coding, and I think it can be frustrating for the player (even if you can let it learn without playing.) Pre-calculated timestep movement: Upon ship creation, ALL possible movements are calculated for each propeller configuration and power for a given delta-time. Memory intensive, ugly, bad. Pre-calculated trajectories: The same as above but not for each delta-time but the whole trajectory, which would then be fitted as much as possible. Requires a fixed propeller configuration for the whole combat phase and is still memory intensive, ugly and bad. Continuous brute forcing: The AI continously checks ALL possible propeller configurations throughout the entire combat phase, precalculates a few time steps and decides which is the best one based on that. Con: what's good now might not be that good later, and it's too CPU intensive, ugly, and bad too. Single brute forcing: Same as above, but only brute forcing at the beginning of the simulation, so it needs constant propeller configuration throughout the entire combat phase. Coninuous angle check: This is not a full movement method, but maybe a way to discard "stupid" propeller configurations. Given the current propeller's normal vector and the final one, you can approximate the power needed for the propeller based on the angle. You must do this continuously throughout the whole combat phase. I figured this one out recently so I didn't put in too much thought. A priori, it has the "what's good now might not be that good later" drawback too, and it doesn't care about the other propellers which may act together to make a better propelling configuration. I'm really stuck here. Any ideas?

    Read the article

  • Admin Panel like Custom Framework

    - by bhuvin
    I want to Create a Framework , like Admin panel , which can rule almost all the aspects of what is shown on the frontend. For an (most basic) example: If suppose the links which are to be shown in a navigation area is passed from the server, with the order and the url , etc. The whole aim is to save the time on the tedious tasks. You can just start creating menus and start assigning pages to it. Give a url, actual files which are to be rendered (in case of static files.), in case of dynamic files, giving the file accordingly. And all this is fully server side manageable using different portlets, sort of things. So basic Roadmap is having : Areas like: Header Area - Which can contain logos, links etc. Navigation Area - Which can contains links and submenus. Content Area - Now this is where the tricky part is that that it has zones like: left, center & right. It contains Order in which it has to be displayed. So, when someday we want to change the way the articles appear on the page, we can do so easily, without any deployments. Now these zones can have n number of internal elements, like the word cloud, or the advertisement area. Footer Area: Again similar as Header Area. Currently there is a preexisting custom framework, which uses XSLT files for pulling out data from the server side. And it has the above capabilities. For example: If there's a grid it will be having a <table> tag embedded in the XSLT file. Now whatever might be the source of the data, we serialize this as XML and give it to the XSLT file and the html is derived from this and is appended to the layer in a page. The problem with this approach is: The XSLT conversion is occurring on the server side, so the server is responsible for getting the data, running XSLT transform, and append the html generated to the layer div. So, according to me, firstly this isn't the server's concern to do so. Secondly for larger applications this might be slower. Debugging isn't possible for XSLT transformation. So, whenever we face problems with data its always a bit of a trial & error method. Maintaining it is a bit of an eerie job i.e. styling changes, and other stuff. Adding dynamic values. Like JavaScript can't actually be very easily used in this. Secondly, we can't use JQuery or any other libraries with this since this is all occurring on the server. For now what I have thought about is using Templating - Javascript - JSON combination in place of XSLT, this will be offloaded to the client and the rendering will take place accordingly. This could solve the above problems and also could add mobile support for the same. Only problem which I could think of is that: It is much work and adding new portlets on the go needs to be looked into. What could be the alternatives for this? What kind of problems are there with the JavaScript approach? What are the different ways to implement the same? Are there any existing frameworks for similar usage?

    Read the article

  • Run custom javascript when page loads

    - by Husain Dalal
    Ran into a neat way to load and run custom javascript when an ADF page loads:         <af:resource type="javascript">         function onLoad() {       alert("I am running ! ");           }           //Script block           if (window.addEventListener) {             window.addEventListener("load", onLoad, false)           } else if (window.attachEvent) {              window.detachEvent("onload", onLoad)              window.attachEvent("onload", onLoad)           } else {             window.onload=onLoad           }         </af:resource>  Reference: http://docs.oracle.com/cd/E23943_01/webcenter.1111/e10148/jpsdg_pagelet.htm#BABGHCBF 

    Read the article

  • Create Custom Speech Bubbles in Silverlight.

    - by mbcrump
    I had a reader email me the following question: “How do you create Speech Bubbles in Silverlight/WPF without adding any extra .dlls? Right off the bat, I know at least two ways to create the speech bubbles that look just like the ones in comic books. Using the Callout Shapes included with Blend 4. Using the free 3rd party control named FreeBubbles (I used this before Blend 4). Unfortunately, we cannot use either of these as they will both add extra .dll’s to the project. So why wouldn’t you want to use one of those? I can think of a few reasons: You do not want to increase the size of your .XAP by including extra .dll’s. You do not have Expression Blend or the license to the use the .dll’s. You want a custom Speech Bubble that is not included in the four “Callout” Controls with Blend. Instead of using one of these methods, we will create a Speech Bubble in Blend 4 using Path element and a TextBlock. Before we get started, lets look at the Callout Shapes included with Blend 4. Using Blend 4 you can simply drag/drop these controls onto your Silverlight application and you are ready to go. We can create all of these Speech Bubbles and even some of the modern bubbles used in recent comic books. Lets get started. Start up Expression Blend 4 and select the Pen Tool. On the Art Board, start connecting the dots like I did below. You can add a color if you wish. …keep going …complete Let’s go ahead and add some text to the Speech Bubble. Drag a TextBlock from the Panel and put it directly inside the Speech Bubble. Go ahead and set the TextAlignment to Center for the TextBlock. and give it some text. At this point, you could go ahead and create a user control if you want to reuse the Speech Bubble you created. Select both the Path and the TextBlock by clicking then while holding down CTRL and then Right Click them. Select Make Into User Control. Give it a name and then Build your project. Lets create another one using the Ellipse for the older comic book style of Speech Bubbles. Drag an Ellipse to the Artboard and give it a color. Now, grab the Pen and drag a triangle like I did below. Simply drag it over a corner of the Ellipse. Select Combine then Unite and you will have a Path. At this point, you can go ahead and add a TextBlock like we did earlier. Lets go ahead and create a rounded rectangle one by adding a Rectangle to the Artboard. Go ahead and set the RadiuX and RadiusY to 25 to give it rounded edges. Let’s create another path and drag it right on top of our rounded rectangle like we did earlier. …looking good Select Combine then Unite and you will have a Path. At this point, you can go ahead and add a TextBlock like we did earlier. So let’s look at what we’ve created today using the path element and TextBlock. As you can tell, it required more work but meets the requirements. This was actually fun to do and I encourage anyone that visits my blog to send in request like this.  Subscribe to my feed

    Read the article

  • Junos custom-attack signature pattern syntax

    - by James Hawkwind
    I am stuck at a point with the configuration of a custom-attack signature in Junos. According to the Junos Custom Attack Definition documentation page, I can set up a custom attack based upon a signature in the packet. In the documentation you can specify a "pattern" to match, but it fails to describe what the pattern syntax should be. Particularly, I want to match the HEX values of 8C 00 13 00 in the first four bytes of the TCP data payload. Does anyone know how to accomplish this correctly?

    Read the article

  • CentOS - PHP - Yum Install with Custom ./configure params

    - by Mike Purcell
    I have successfully configured and compiled php on my dev server, and works great, but after talking to a sysadmin buddy, he informed that custom compiles of the latest builds are not recommended for production (or even development) systems. He noted a situation where they custom configured and compiled PHP 5.3.6, only to find that there was some issue with a low-level Postgres driver, so they had to revert back to 5.3.3. So I am considering going back to yum to install PHP, however I have several custom configuration settings and was wondering if it's possible to pass or configure how PHP will be compiled through YUM? My current configure line: Configure Command => './configure' '--with-libdir=lib64' '--prefix=/usr/local/_custom/app/php' '--with-config-file-path=/usr/local/_custom/app/php/etc' '--with-config-file-scan-dir=/usr/local/_custom/app/php/etc/modules' '--disable-all' '--with-apxs2=/usr/sbin/apxs' '--with-curl=/usr/sbin/curl' '--with-gd' '--with-iconv' '--with-jpeg-dir=/usr/lib' '--with-mcrypt=/usr/bin' '--with-pcre-regex' '--with-pdo-mysql=mysqlnd' '--with-png-dir=/usr/lib' '--with-zlib' '--enable-ctype' '--enable-dom' '--enable-hash' '--enable-json' '--enable-libxml' '--enable-mbstring' '--enable-mbregex' '--enable-pdo' '--enable-session' '--enable-simplexml' '--enable-xml' '--enable-xmlreader' '--enable-xmlwriter'

    Read the article

  • Custom Button in Google Chrome?

    - by Rev
    Is there a way to add a custom button in Google Chrome? I hate all the "Send to Instapaper" extensions in the web store, and love how the bookmarklet works, but I can't stand not having a favicon. Ideally, I'd just add a custom button next to the spanner in the top right, but I can't figure out how to do this. Even installing a custom extension would be fine, so if someone can point me in the right direction for that, that'd be great. Here's the closest thing I've found (it's for Firefox, not Chrome): http://www.readwriteweb.com/archives/how-to-turn-a-bookmarklet-into-a-nice-firefox-button.php

    Read the article

  • Applocker custom extension (Java, CPL, MSC etc.)

    - by test1839
    We have a Terminal server and want to prevent users from running inappropriate software. Previously we used Software Restriction Policies for this purpose. Now, Microsoft seems to recommend Applocker instead. However we found no possibilities to add custom extensions like JAR, CPL, MSC etc. which was possible in Software Restriction Policies. Do you know how to add custom extensions to the Applocker policies in Windows 2008? Or how can we block custom script interpreters like Perl etc.?

    Read the article

  • RHN Satellite / Spacewalk custom channels, best practice?

    - by tore-
    Hi, I'm currently setting up RHN Satellite, and all works well. I'm in the process of creating custom channels, since we have certain software which should be available for all nodes of satellite, e.g. puppet, facter, subversion, php (newer version than present in base). I've tried to find documentation on best practices on this. How should they be set up, how to handle different arch, how to handle noarch packages. How to sync updates to dependencies when updating a custom package in a custom channel (e.g. php is updated, how to fetch all updated dependencies). The channel management documentation from RHEL (http://www.redhat.com/docs/en-US/Red_Hat_Network_Satellite/5.3/Channel_Management_Guide/html/Channel_Management_Guide-Custom_Channel_and_Package_Management.html) doesn't provide me with enough information on how to solve any of theese issues. All tips, tricks and information regarding this would be great!

    Read the article

  • Finding Missing UDP Frames Using Wireshark + Custom Dissector (for CQS)

    - by John Dibling
    How do you use Wireshark to identify missing UDP frames? I have written a custom dissector for the CQS feed (reference page). One of our servers gaps when receiving this feed. According to Wireshark, some UDP frames are never received. I know that the frames were sent because all of our other servers are gap-free. A CQS frame consists of multiple messages, each having its own sequence number. My custom dissector provides the following data to Wireshark: cqs.frame_gaps - the number of gaps within a UDP frame (always zero) cqs.frame_first_seq - the first sequence number in a UDP frame cqs.frame_expected_seq - the first sequence number expected in the next UDP frame cqs.frame_msg_count - the number of messages in this UDP frame And I am displaying each of these values in custom columns, as shown in this screenshot: A typical CQS log will consist of millions of rows, so I can't just eyeball it. Is there any way I can get Wireshark to tell me which frames are missing?

    Read the article

  • Creating a custom view for windows log based on a "Contains {text}" rule

    - by jussinen
    I have a server running Windows Server 2008. I'm using Windows Server Auditing to check when and by which user a folder is modified to determine who is modifying it as the modifications are causing problems. I can see the log of the audit when a change is made in the System log. How do I create a Custom View that will return all events from System log where a certain text (which is the folder name) is present? The create custom view doesn't seem to have that option. I'm not sure whether it's possible via custom xml query or whether I'll need to export the system log to csv and search in Excel. John

    Read the article

  • Adding A Custom Dropdown in RCDC for Forefront Identity Manager 2010

    - by Daniel Lackey
    My latest exploration has been FIM 2010 for Identity Management. The following is a post of how to add a custom dropdown for the FIM Portal. I have decided to document this as I cannot find documentation on how to do this anywhere else. I hope that it finds useful to others.   For starters, this was to me not an easy task to figure out. I really would like to know why it is so cumbersome to do something that seems like a lot of people would need to do, but that’s for another day J   The dropdown I wanted to add was for ‘Account Status’ which would display if the account is ‘Enabled’ or ‘Disabled’ in the data source Active Directory. This option would also allow helpdesk users or admins to administer the userAccountControl attribute in AD from the FIM Portal interface.   The first thing I had to do was create the attribute itself. This is done by going to Administration à Schema Management from the FIM 2010 portal. Once here, you click on All Attributes. What is listed here are all attributes and their associated Resource Types in FIM. To create the ‘AccountStatus’ attribute, click on New. As shown below, enter ‘AccountStatus’ with no spaces for the System Name and ‘Account Status’ for the Display Name. The Data Type is going to be ‘Indexed String’. Click Next.           Leave everything on the Localization tab default and click Next.   On the Validation tab as shown below, we will enter the regex expression ^(Enabled|Disabled)?$ with our two desired string values ‘Enabled’ and ‘Disabled’. Click on Finish and then and Submit to complete adding the attribute.       The next step involves associating the attribute with a resource type. This is called ‘Binding’ the attribute. From the Schema Management page, click on All Bindings. From the page that comes up, click on New. As shown below, enter ‘User’ for the Resource Type and ‘Account Status’ for the Attribute Type. This is essentially binding the Account Status attribute to the ‘User’ Resource Type. Click Next.    On the ‘Attribute Override’ tab, type in ‘Account Status’ for the Display Name field. Click Next.   On the ‘Localization’ tab, click Next.   On the ‘Validation’ tab, enter the regex expression ^(Enabled|Disabled)?$ we entered previously for the attribute. Click Finish and then Submit to complete.   Now that the Attribute and the Binding are complete, you have to give users permission to see the attribute on the User Edit page. Go to Administration à Management Policy Rules. Look for the rule named Administration: Administrators can read and update Users and click on it. Once it opens, click on the ‘Target Resources’ tab and look at the section named Resource Attributes. Type in at the end the ‘Account Status’ attribute and check it with the validator. Once done click on OK to save the changes.         Lastly, we need to add the actual dropdown control to the RCDC (Resource Control Display Configuration) for User Editing. Go to Administration à Resource Control Display Configuration. From here navigate until you find the RCDC named Configuration for User Editing RCDC and click on it. The following is what you will see:       First step is to export the Configuration Data file. Click on the Export configuration link and save the file to your desktop of other folder.   Find the file you just exported and open the file in your XML editor of choice. I use notepad but anything will work. Since we are adding a dropdown control, first find another control in the existing file that is already a dropdown in FIM. I used EmployeeType as my example. Copy the control from the beginning tag named <my:Control… to the ending tag </my:Control>. Now take what you copied and paste it in whatever location you desire within the form between two other controls. I chose to place the ‘Account Status’ field after the ‘Account Name’ field. After you paste the control you will need to modify so it looks like this:       Notice where you specify what attribute you are dealing with where it has AccountStatus in the XML. Once you are complete with modifying this, save the file and make sure it is a .xml file.   Now go back to the Configuration for User Editing screen and look at the section named ‘Configuration Data’. Click the ‘Browse’ button and find the XML file you just modified and choose it. Click OK on the bottom of the window and you are done!   Now when you click on a user’s name in the FIM Portal, you should see the newly added dropdown box as below:       Later I will post more about this drop down, specifically on how to automate actually ‘Disabling’ the account in the data source through the FIM Workflows and MAs.   <my:Control my:Name="AccountStatus" my:TypeName="UocDropDownList" my:Caption="{Binding Source=schema, Path=AccountStatus.DisplayName}" my:Description="{Binding Source=schema, Path=AccountStatus.Description}" my:RightsLevel="{Binding Source=rights, Path=AccountStatus}"> <my:Properties> <my:Property my:Name="ValuePath" my:Value="Value"/> <my:Property my:Name="CaptionPath" my:Value="Caption"/> <my:Property my:Name="HintPath" my:Value="Hint"/> <my:Property my:Name="ItemSource" my:Value="{Binding Source=schema, Path=AccountStatus.LocalizedAllowedValues}"/> <my:Property my:Name="SelectedValue" my:Value="{Binding Source=object, Path=AccountStatus, Mode=TwoWay}"/> </my:Properties> </my:Control>

    Read the article

  • hall.dll errors

    - by Robert Elliott
    I am getting frequent BSoDs, mostly with hall.dll errors. I have Dell Inspiron laptop running Windows 7 SP1. The following file, werfault, is shown below. Can anyone help me work out what is wrong? Version=1 EventType=BlueScreen EventTime=129987824768810026 ReportType=4 Consent=1 ReportIdentifier=1c3e1c58-3b30-11e2-9074-002219f61870 IntegratorReportIdentifier=113012-32557-01 Response.type=4 DynamicSig[1].Name=OS Version DynamicSig[1].Value=6.1.7601.2.1.0.768.3 DynamicSig[2].Name=Locale ID DynamicSig[2].Value=2057 UI[2]=C:\Windows\system32\wer.dll UI[3]=Windows has recovered from an unexpected shutdown UI[4]=Windows can check online for a solution to the problem. UI[5]=&Check for solution UI[6]=&Check later UI[7]=Cancel UI[8]=Windows has recovered from an unexpected shutdown UI[9]=A problem caused Windows to stop working correctly. Windows will notify you if a solution is available. UI[10]=Close Sec[0].Key=BCCode Sec[0].Value=a Sec[1].Key=BCP1 Sec[1].Value=0000000000000000 Sec[2].Key=BCP2 Sec[2].Value=0000000000000002 Sec[3].Key=BCP3 Sec[3].Value=0000000000000000 Sec[4].Key=BCP4 Sec[4].Value=FFFFF80002C0E477 Sec[5].Key=OS Version Sec[5].Value=6_1_7601 Sec[6].Key=Service Pack Sec[6].Value=1_0 Sec[7].Key=Product Sec[7].Value=768_1 File[0].CabName=113012-32557-01.dmp File[0].Path=113012-32557-01.dmp File[0].Flags=589826 File[0].Type=2 File[0].Original.Path=C:\Windows\Minidump\113012-32557-01.dmp File[1].CabName=sysdata.xml File[1].Path=WER-75941-0.sysdata.xml File[1].Flags=589826 File[1].Type=5 File[1].Original.Path=C:\Users\Robert\AppData\Local\Temp\WER-75941-0.sysdata.xml File[2].CabName=Report.cab File[2].Path=Report.cab File[2].Flags=196608 File[2].Type=7 File[2].Original.Path=Report.cab FriendlyEventName=Shut down unexpectedly ConsentKey=BlueScreen AppName=Windows AppPath=C:\Windows\System32\WerFault.exe *********From the minidump file**** RAX = fffff88002f22150 RBX = fffffa80074141f0 RCX = 000000000000000a RDX = 0000000000000000 RSI = fffffa8007278180 RDI = 0000000000000001 R9 = 0000000000000000 R10 = fffff80002c0e477 R11 = 0000000000000000 R12 = fffffa800523e7a0 R13 = 0000000000001000 R14 = 0000000000000028 R15 = fffffa80074141f0 RBP = fffff88002f22210 RIP = fffff80002cd3fc0 RSP = fffff88002f22048 SS = 0000 GS = 002b FS = 0053 ES = 002b DS = 002b CS = 0010 Flags = 00200286 fffff800`02e99ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99ad0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99af0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99b10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99b30 00 00 00 00 00 00 00 00 00 00 00 00 04 00 00 00 ................ fffff800`02e99b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e99b50 00 00 00 00 00 00 00 00 00 00 00 00 ............ fffff800`02e81928 00 00 00 00 .... fffff800`02e81924 00 00 00 00 .... fffff800`02e0a880 37 36 30 31 2E 31 37 39 34 34 2E 61 6D 64 36 34 7601.17944.amd64 fffff800`02e0a890 66 72 65 2E 77 69 6E 37 73 70 31 5F 67 64 72 2E fre.win7sp1_gdr. fffff800`02e0a8a0 31 32 30 38 33 30 2D 30 33 33 33 00 00 00 00 00 120830-0333..... fffff800`02e0a8b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a8d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a8f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a910 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a930 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a950 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ fffff800`02e0a960 35 36 65 38 62 61 31 33 2D 37 30 32 39 2D 34 37 56e8ba13-7029-47 fffff800`02e0a970 32 38 2D 61 35 30 36 2D 32 64 64 62 34 61 30 63 28-a506-2ddb4a0c fffff800`02c0e000 C5 0F 85 79 02 00 00 8B 9C 24 90 00 00 00 E9 A5 ...y.....$...... fffff800`02c0e010 00 00 00 44 2B C3 45 33 C9 E8 5E 14 00 00 49 3B ...D+.E3..^...I; fffff800`02c0e020 C5 74 2B 44 8B 8C 24 90 00 00 00 48 8B C8 41 8D .t+D..$....H..A. fffff800`02c0e030 51 FF 41 3B D5 76 0D 44 8B C2 49 83 E8 01 48 8B Q.A;.v.D..I...H. fffff800`02c0e040 49 08 75 F6 48 89 79 08 41 03 D9 48 8B F8 3B DD I.u.H.y.A..H..;. fffff800`02c0e050 75 08 48 8B C7 E9 26 02 00 00 48 8B 96 98 00 00 u.H...&...H..... fffff800`02c0e060 00 48 8D 84 24 90 00 00 00 44 8B C5 48 89 44 24 .H..$....D..H.D$ fffff800`02c0e070 28 44 2B C3 45 33 C9 48 8B CE 44 88 6C 24 20 E8 (D+.E3.H..D.l$ . fffff800`02c0e080 CC 14 00 00 49 3B C5 74 2B 44 8B 8C 24 90 00 00 ....I;.t+D..$... fffff800`02c0e090 00 48 8B C8 41 8D 51 FF 41 3B D5 76 0D 44 8B C2 .H..A.Q.A;.v.D.. fffff800`02c0e0a0 49 83 E8 01 48 8B 49 08 75 F6 48 89 79 08 41 03 I...H.I.u.H.y.A. fffff800`02c0e0b0 D9 48 8B F8 3B DD 74 9A 44 38 AE 28 01 00 00 0F .H..;.t.D8.(.... fffff800`02c0e0c0 85 DF 00 00 00 48 8D 44 24 30 4C 8D 8C 24 A0 00 .....H.D$0L..$.. fffff800`02c0e0d0 00 00 4C 8D 84 24 A8 00 00 00 8B D5 48 8B CE 48 ..L..$......H..H fffff800`02c0e0e0 89 44 24 20 E8 F7 1F 00 00 8B F8 89 84 24 90 00 .D$ .........$.. fffff800`02c0e0f0 00 00 41 3B C5 0F 84 83 01 00 00 4C 8B A4 24 A8 ..A;.......L..$. fffff800`02c0e100 00 00 00 44 8B 84 24 A0 00 00 00 48 8B 8E 98 00 ...D..$....H.... fffff800`02c0e110 00 00 49 8B D4 44 8B C8 E8 DB 1B 00 00 49 3B C5 ..I..D.......I;. fffff800`02c0e120 74 35 48 8B 96 98 00 00 00 48 8D 84 24 90 00 00 t5H......H..$... fffff800`02c0e130 00 41 B1 01 48 89 44 24 28 44 8B C5 48 8B CE 44 .A..H.D$(D..H..D fffff800`02c0e140 88 6C 24 20 E8 43 12 00 00 49 3B C5 0F 84 2C 01 .l$ .C...I;...,. fffff800`02c0e150 00 00 E9 29 01 00 00 48 8B 5C 24 30 49 3B DD 74 ...)...H.\$0I;.t fffff800`02c0e160 2A 4D 3B E5 74 0C 48 8B D3 49 8B CC FF 15 AE CE *M;.t.H..I...... fffff800`02c0e170 01 00 48 8B CB FF 15 95 CF 01 00 33 D2 48 8B CB ..H........3.H.. fffff800`02c0e180 FF 15 AA CE 01 00 E9 F3 00 00 00 C1 E7 0C 41 B8 ..............A. fffff800`02c0e190 01 00 00 00 49 8B CC 8B D7 FF 15 99 CE 01 00 E9 ....I........... fffff800`02c0e1a0 DA 00 00 00 2B EB 33 C9 41 B8 48 61 6C 20 8B D5 ....+.3.A.Hal .. fffff800`02c0e1b0 44 8B FD 48 C1 E2 03 FF 15 33 D4 01 00 4C 8B F0 D..H.....3...L.. fffff800`02c0e1c0 49 3B C5 0F 84 8F 00 00 00 45 8B E5 41 3B ED 76 I;.......E..A;.v fffff800`02c0e1d0 3F 4C 8B E8 BA 00 10 00 00 B9 04 00 00 00 41 B8 ?L............A. fffff800`02c0e1e0 48 61 6C 20 FF 15 06 D4 01 00 49 89 45 00 48 85 Hal ......I.E.H. fffff800`02c0e1f0 C0 74 39 48 8B C8 FF 15 BC CE 01 00 48 C1 E8 20 .t9H........H.. fffff800`02c0e200 85 C0 75 28 41 FF C4 49 83 C5 08 44 3B E5 72 C4 ..u(A..I...D;.r. fffff800`02c0e210 48 8B 8E 98 00 00 00 44 8B C5 BA 01 00 00 00 E8 H......D........ fffff800`02c0e220 58 19 00 00 4C 8B E8 48 85 C0 75 6C 45 33 ED 45 X...L..H..ulE3.E fffff800`02c0e230 3B E5 76 19 49 8B EE 48 8B 4D 00 33 D2 FF 15 ED ;.v.I..H.M.3.... fffff800`02c0e240 CD 01 00 48 83 C5 08 49 83 EC 01 75 EA 33 D2 49 ...H...I...u.3.I fffff800`02c0e250 8B CE FF 15 D8 CD 01 00 41 3B DD 76 21 8B EB 48 ........A;.v!..H fffff800`02c0e260 8B 96 98 00 00 00 48 8B 5F 08 4C 8B C7 48 8B CE ......H._.L..H.. fffff800`02c0e270 E8 2B 15 00 00 48 83 ED 01 48 8B FB 75 E1 33 C0 .+...H...H..u.3. fffff800`02c0e280 48 8B 9C 24 98 00 00 00 48 83 C4 50 41 5F 41 5E H..$....H..PA_A^ fffff800`02c0e290 41 5D 41 5C 5F 5E 5D C3 8D 4D FF 85 C9 74 0C 8B A]A\_^]..M...t.. fffff800`02c0e2a0 D1 48 83 EA 01 48 8B 40 08 75 F6 48 89 78 08 49 [email protected] fffff800`02c0e2b0 8B FD 85 ED 74 29 49 8B DE 48 8B 0B FF 15 F6 CD ....t)I..H...... fffff800`02c0e2c0 01 00 41 89 45 00 48 8B 03 48 83 C3 08 48 83 C8 ..A.E.H..H...H.. fffff800`02c0e2d0 0F 49 83 EF 01 49 89 45 10 4D 8B 6D 08 75 DA 48 .I...I.E.M.m.u.H fffff800`02c0e2e0 8B 8E 98 00 00 00 48 8D 54 24 38 48 83 C1 78 FF ......H.T$8H..x. fffff800`02c0e2f0 15 83 CD 01 00 4C 8B 9E 98 00 00 00 48 8D 4C 24 .....L......H.L$ fffff800`02c0e300 38 41 01 AB D0 00 00 00 FF 15 3A CD 01 00 33 D2 8A........:...3. fffff800`02c0e310 49 8B CE FF 15 17 CD 01 00 E9 34 FD FF FF 90 90 I.........4..... fffff800`02c0e320 90 90 90 90 45 85 C0 74 43 48 89 5C 24 08 48 89 ....E..tCH.\$.H. fffff800`02c0e330 74 24 10 57 48 83 EC 20 48 8B F1 41 8B F8 48 8B t$.WH.. H..A..H. fffff800`02c0e340 5A 08 4C 8B C2 48 8B 96 98 00 00 00 48 8B CE E8 Z.L..H......H... fffff800`02c0e350 4C 14 00 00 48 83 EF 01 48 8B D3 75 E1 48 8B 5C L...H...H..u.H.\ fffff800`02c0e360 24 30 48 8B 74 24 38 48 83 C4 20 5F C3 90 90 90 $0H.t$8H.. _.... fffff800`02c0e370 90 90 90 90 48 8B C4 48 89 58 08 48 89 68 10 48 ....H..H.X.H.h.H fffff800`02c0e380 89 70 18 48 89 78 20 41 54 41 55 4C 8B D9 4D 8B .p.H.x ATAUL..M. fffff800`02c0e390 E0 48 8B F2 B9 FF 0F 00 00 4D 85 DB 75 08 4C 8B .H.......M..u.L. fffff800`02c0e3a0 D1 40 32 FF EB 12 4D 8B 93 88 00 00 00 41 8A BB [email protected].. fffff800`02c0e3b0 91 00 00 00 49 C1 EA 0C 44 8B 44 24 38 41 8B C1 ....I...D.D$8A.. fffff800`02c0e3c0 4C 2B 4E 20 23 C1 49 C1 E9 0C 41 BD 00 10 00 00 L+N #.I...A..... fffff800`02c0e3d0 41 8B D5 41 8B E9 2B D0 8B CA 4C 39 54 EE 30 76 A..A..+...L9T.0v fffff800`02c0e3e0 04 33 C9 EB 4F 41 3B D0 73 43 4C 8D 4C EE 38 4D .3..OA;.sCL.L.8M fffff800`02c0e3f0 39 11 77 39 49 8B 59 F8 48 8D 43 01 49 3B 01 75 9.w9I.Y.H.C.I;.u fffff800`02c0e400 2C 48 8B C3 49 33 01 48 A9 00 00 F0 FF 75 1E 40 ,H..I3.H.....u.@ fffff800`02c0e410 80 FF 01 74 0C 49 33 19 48 F7 C3 F0 FF FF FF 75 ...t.I3.H......u fffff800`02c0e420 0C 41 03 CD 49 83 C1 08 41 3B C8 72 C2 41 3B C8 .A..I...A;.r.A;. fffff800`02c0e430 41 0F 47 C8 4D 85 DB 0F 84 92 00 00 00 41 80 BB A.G.M........A.. fffff800`02c0e440 28 01 00 00 00 0F 84 84 00 00 00 4C 39 54 EE 30 (..........L9T.0 fffff800`02c0e450 76 7D 8B CA 48 8D 44 EE 38 41 3B D0 73 11 4C 39 v}..H.D.8A;.s.L9 fffff800`02c0e460 10 76 0C 41 03 CD 48 83 C0 08 41 3B C8 72 EF 49 .v.A..H...A;.r.I fffff800`02c0e470 8B 44 24 18 41 3B C8 44 8B 08 4C 8B 50 08 41 0F .D$.A;.D..L.P.A. fffff800`02c0e480 47 C8 41 C1 E9 0C EB 3A 45 8B 02 41 8D 41 01 41 G.A....:E..A.A.A fffff800`02c0e490 C1 E8 0C 44 3B C0 75 2E 41 8B C0 41 33 C1 A9 00 ...D;.u.A..A3... fffff800`02c0e4a0 00 F0 FF 75 21 40 80 FF 01 74 0D 41 8B C0 41 33 [email protected] fffff800`02c0e4b0 C1 A9 F0 FF FF FF 75 0E 4D 8B 52 08 45 8B C8 41 ......u.M.R.E..A fffff800`02c0e4c0 03 D5 3B D1 72 C2 3B D1 0F 47 D1 8B C2 EB 02 8B ..;.r.;..G...... fffff800`02c0e4d0 C1 48 8B 5C 24 18 48 8B 6C 24 20 48 8B 74 24 28 .H.\$.H.l$ H.t$( fffff800`02c0e4e0 48 8B 7C 24 30 41 5D 41 5C C3 90 90 90 90 90 90 H.|$0A]A\....... fffff800`02c0e4f0 48 89 5C 24 08 48 89 6C 24 10 48 89 74 24 18 57 H.\$.H.l$.H.t$.W fffff800`02c0e500 41 54 41 55 48 83 EC 30 48 8B 5C 24 70 4D 8B E1 ATAUH..0H.\$pM.. fffff800`02c0e510 49 8B F0 8B 03 4C 8B EA 48 8B E9 89 44 24 20 E8 I....L..H...D$ . fffff800`02c0e520 50 FE FF FF 49 8B CC 89 03 49 2B 4D 20 8B F8 48 P...I....I+M ..H fffff800`02c0e530 C1 E9 0C 8B C9 49 8B 54 CD 30 49 8B CC 48 C1 E2 .....I.T.0I..H.. fffff800`02c0e540 0C 81 E1 FF 0F 00 00 48 03 D1 48 85 F6 74 72 48 .......H..H..trH fffff800`02c0e550 39 95 88 00 00 00 73 69 4C 8B 4E 18 48 8B 84 24 9.....siL.N.H..$ fffff800`02c0e560 80 00 00 00 41 8B DC 41 8B 09 81 E3 FF 0F 00 00 ....A..A........ fffff800`02c0e570 03 CB 80 7C 24 78 01 48 89 08 75 17 4D 8B C4 49 ...|$x.H..u.M..I fffff800`02c0e580 8B D5 48 8B CD C6 44 24 28 01 89 7C 24 20 E8 C5 ..H...D$(..|$ .. fffff800`02c0e590 06 00 00 8B C7 C1 EF 0C 25 FF 0F 00 00 8D 8C 18 ........%....... fffff800`02c0e5a0 FF 0F 00 00 48 8B 46 18 C1 E9 0C 03 CF 74 0C 8B ....H.F......t.. fffff800`02c0e5b0 D1 48 83 EA 01 48 8B 40 08 75 F6 48 89 46 18 EB [email protected].. fffff800`02c0e5c0 0B 48 8B 84 24 80 00 00 00 48 89 10 48 8B 5C 24 .H..$....H..H.\$ fffff800`02c0e5d0 50 48 8B 6C 24 58 48 8B 74 24 60 48 83 C4 30 41 PH.l$XH.t$`H..0A fffff800`02c0e5e0 5D 41 5C 5F C3 90 90 90 90 90 90 90 4D 85 C0 0F ]A\_........M... fffff800`02c0e5f0 84 09 01 00 00 48 8B C4 48 89 58 08 48 89 68 10 .....H..H.X.H.h. fffff800`02c0e600 48 89 70 18 48 89 78 20 41 54 41 55 41 56 48 83 H.p.H.x ATAUAVH. fffff800`02c0e610 EC 30 44 8A 64 24 78 49 8B D8 49 8B F1 4C 8B EA .0D.d$xI..I..L.. fffff800`02c0e620 4C 8B F1 49 89 58 18 41 80 FC 01 0F 84 AF 00 00 L..I.X.A........ fffff800`02c0e630 00 8B 7C 24 70 85 FF 0F 84 9F 00 00 00 4C 8B CE ..|$p........L.. fffff800`02c0e640 4C 8B C3 49 8B D5 49 8B CE 89 7C 24 20 E8 22 FD L..I..I...|$ .". fffff800`02c0e650 FF FF 48 8B CE 49 2B 4D 20 8B E8 48 C1 E9 0C 8B ..H..I+M ..H.... fffff800`02c0e660 C9 49 8B 54 CD 30 48 8B CE 48 C1 E2 0C 81 E1 FF .I.T.0H..H...... fffff800`02c0e670 0F 00 00 48 03 D1 49 39 96 88 00 00 00 73 52 4C ...H..I9.....sRL fffff800`02c0e680 8B 4B 18 4C 8B C6 49 8B D5 49 8B CE 44 88 64 24 .K.L..I..I..D.d$ fffff800`02c0e690 28 89 6C 24 20 E8 BE 05 00 00 8B C5 44 8B DE 25 (.l$ .......D..% fffff800`02c0e6a0 FF 0F 00 00 41 81 E3 FF 0F 00 00 41 8D 8C 03 FF ....A......A.... fffff800`02c0e6b0 0F 00 00 8B C5 C1 E8 0C C1 E9 0C 03 C8 48 8B 43 .............H.C fffff800`02c0e6c0 18 74 0A 48 83 E9 01 48 8B 40 08 75 F6 48 89 43 [email protected] fffff800`02c0e6d0 18 48 03 F5 2B FD 0F 85 61 FF FF FF 48 89 5B 18 .H..+...a...H.[. fffff800`02c0e6e0 48 8B 5C 24 50 48 8B 6C 24 58 48 8B 74 24 60 48 H.\$PH.l$XH.t$`H fffff800`02c0e6f0 8B 7C 24 68 48 83 C4 30 41 5E 41 5D 41 5C C3 90 .|$hH..0A^A]A\.. fffff800`02c0e700 90 90 90 90 90 90 90 90 48 89 54 24 10 53 55 56 ........H.T$.SUV fffff800`02c0e710 57 41 54 41 55 41 56 41 57 48 83 EC 58 48 8B F2 WATAUAVAWH..XH.. fffff800`02c0e720 48 8B D9 48 8D 54 24 30 48 8D 0D B9 67 02 00 45 H..H.T$0H...g..E fffff800`02c0e730 8B E1 49 8B F8 4C 89 84 24 B0 00 00 00 FF 15 35 ..I..L..$......5 fffff800`02c0e740 C9 01 00 4C 8B 2D 86 67 02 00 4C 8B 35 77 67 02 ...L.-.g..L.5wg. fffff800`02c0e750 00 48 8B C6 44 8B C6 48 2B 43 20 41 81 E0 FF 0F .H..D..H+C A.... fffff800`02c0e760 00 00 BD 00 10 00 00 48 C1 E8 0C 45 89 45 2C 8B .......H...E.E,. fffff800`02c0e770 CD 8B C0 41 2B C8 41 89 4D 28 4C 8D 4C C3 30 48 ...A+.A.M(L.L.0H fffff800`02c0e780 8B C6 48 25 00 F0 FF FF 49 89 45 20 49 89 46 20 ..H%....I.E I.F fffff800`02c0e790 45 89 46 2C 41 89 4E 28 44 89 84 24 B8 00 00 00 E.F,A.N(D..$.... fffff800`02c0e7a0 4C 89 8C 24 A0 00 00 00 45 85 E4 0F 84 90 01 00 L..$....E....... fffff800`02c0e7b0 00 48 8B 5F 10 48 81 E3 00 F0 FF FF 75 3C 8B 07 .H._.H......u<.. fffff800`02c0e7c0 48 8B 0D 49 67 02 00 44 8D 4B 01 48 C1 E8 0C 4D H..Ig..D.K.H...M fffff800`02c0e7d0 8B C6 BA 48 61 6C 20 49 89 46 30 FF 15 DF C8 01 ...Hal I.F0..... fffff800`02c0e7e0 00 48 8B D8 48 85 C0 0F 84 36 01 00 00 4C 8B 8C .H..H....6...L.. fffff800`02c0e7f0 24 A0 00 00 00 41 B7 01 EB 09 41 8B C0 48 03 D8 $....A....A..H.. fffff800`02c0e800 45 32 FF 49 8B 01 33 FF 49 89 45 30 48 8B 0D C5 E2.I..3.I.E0H... fffff800`02c0e810 66 02 00 44 8B CF 4D 8B C5 BA 48 61 6C 20 FF 15 f..D..M...Hal .. fffff800`02c0e820 9C C8 01 00 48 8B F0 48 85 C0 75 24 FF C7 83 FF ....H..H..u$.... fffff800`02c0e830 06 7C D9 48 21 44 24 20 45 33 C9 41 B8 01 EF 00 .|.H!D$ E3.A.... fffff800`02c0e840 00 48 8B D5 B9 AC 00 00 00 FF 15 A1 CA 01 00 CC .H.............. fffff800`02c0e850 8B FD 2B BC 24 B8 00 00 00 44 3B E7 41 0F 42 FC ..+.$....D;.A.B. fffff800`02c0e860 80 BC 24 C0 00 00 00 01 8B EF 44 8B C7 75 0E 48 ..$.......D..u.H fffff800`02c0e870 8B D0 48 8B CB FF 15 AD 33 02 00 EB 0B 48 8B D3 ..H.....3....H.. fffff800`02c0e880 48 8B C8 E8 C8 A6 01 00 4D 8B C5 BA 48 61 6C 20 H.......M...Hal fffff800`02c0e890 48 8B CE FF 15 47 C8 01 00 41 80 FF 01 75 11 4D H....G...A...u.M fffff800`02c0e8a0 8B C6 BA 48 61 6C 20 48 8B CB FF 15 30 C8 01 00 ...Hal H....0... fffff800`02c0e8b0 48 8B 84 24 A8 00 00 00 4C 8B 8C 24 A0 00 00 00 H..$....L..$.... fffff800`02c0e8c0 44 2B E7 48 8B BC 24 B0 00 00 00 48 03 C5 BD 00 D+.H..$....H.... fffff800`02c0e8d0 10 00 00 48 8B 7F 08 49 83 C1 08 45 33 C0 44 3B ...H..I...E3.D; fffff800`02c0e8e0 E5 48 8B C8 41 8B D4 0F 47 D5 48 81 E1 00 F0 FF .H..A...G.H..... fffff800`02c0e8f0 FF 48 89 84 24 A8 00 00 00 49 89 4D 20 41 89 55 .H..$....I.M A.U fffff800`02c0e900 28 25 FF 0F 00 00 41 89 45 2C 49 89 4E 20 41 89 (%....A.E,I.N A. fffff800`02c0e910 46 2C 41 89 56 28 48 89 BC 24 B0 00 00 00 E9 75 F,A.V(H..$.....u fffff800`02c0e920 FE FF FF 48 83 64 24 20 00 45 33 C9 41 B8 00 EF ...H.d$ .E3.A... fffff800`02c0e930 00 00 48 8B D5 B9 AC 00 00 00 FF 15 B0 C9 01 00 ..H............. fffff800`02c0e940 CC 48 8D 4C 24 30 FF 15 FC C6 01 00 48 83 C4 58 .H.L$0......H..X fffff800`02c0e950 41 5F 41 5E 41 5D 41 5C 5F 5E 5D 5B C3 90 90 90 A_A^A]A\_^][.... fffff800`02c0e960 90 90 90 90 48 89 5C 24 08 48 89 6C 24 10 48 89 ....H.\$.H.l$.H. fffff800`02c0e970 74 24 18 57 41 54 41 55 48 83 EC 50 33 C0 49 8B t$.WATAUH..P3.I. fffff800`02c0e980 F9 41 8B F0 4C 8B E2 48 8B CA 49 C7 C3 00 F0 FF .A..L..H..I..... fffff800`02c0e990 FF 45 85 C0 74 10 4C 85 59 10 74 0A 48 8B 49 08 .E..t.L.Y.t.H.I. fffff800`02c0e9a0 FF C0 3B C6 72 F0 3B C6 75 09 49 83 21 00 E9 FB ..;.r.;.u.I.!... fffff800`02c0e9b0 00 00 00 65 48 8B 04 25 20 00 00 00 33 C9 44 8B ...eH..% ...3.D. fffff800`02c0e9c0 50 24 48 8B 05 F7 64 02 00 4A 8B 2C D0 4C 8D 4D P$H...d..J.,.L.M fffff800`02c0e9d0 30 45 85 C0 74 22 4C 8B C6 4C 85 5A 10 75 0F 8B 0E..t"L..L.Z.u.. fffff800`02c0e9e0 02 FF C1 48 C1 E8 0C 49 89 01 49 83 C1 08 49 83 ...H...I..I...I. fffff800`02c0e9f0 E8 01 48 8B 52 08 75 E1 33 DB C1 E1 0C 41 B5 01 ..H.R.u.3....A.. fffff800`02c0ea00 48 21 5D 20 21 5D 2C 89 4D 28 44 38 2D 07 65 02 H!] !],.M(D8-.e. fffff800`02c0ea10 00 75 10 48 8B 05 C6 64 02 00 4A 8B 1C D0 E9 29 .u.H...d..J....) fffff800`02c0ea20 01 00 00 48 8D 0D D6 64 02 00 FF 15 50 C6 01 00 ...H...d....P... fffff800`02c0ea30 48 85 C0 0F 85 F9 00 00 00 44 8D 40 01 45 33 C9 [email protected]. fffff800`02c0ea40 33 D2 48 8B CD C7 44 24 28 20 00 00 00 21 5C 24 3.H...D$( ...!\$ fffff800`02c0ea50 20 FF 15 71 C6 01 00 4C 8B D8 48 85 C0 74 69 45 ..q...L..H..tiE fffff800`02c0ea60 32 ED 49 8B D3 85 F6 74 36 48 8B CE 49 F7 44 24 2.I....t6H..I.D$ fffff800`02c0ea70 10 00 F0 FF FF 75 1D 41 8B 44 24 10 25 EF 0F 00 .....u.A.D$.%... fffff800`02c0ea80 00 48 0B C2 48 83 C8 10 48 81 C2 00 10 00 00 49 .H..H...H......I fffff800`02c0ea90 89 44 24 10 48 83 E9 01 4D 8B 64 24 08 75 CD 48 .D$.H...M.d$.u.H fffff800`02c0eaa0 89 2F 4C 89 5F 08 48 89 5F 10 44 88 6F 30 4C 8D ./L._.H._.D.o0L. fffff800`02c0eab0 5C 24 50 49 8B 5B 20 49 8B 6B 28 49 8B 73 30 49 \$PI.[ I.k(I.s0I fffff800`02c0eac0 8B E3 41 5D 41 5C 5F C3 48 8D 54 24 30 48 8D 0D ..A]A\_.H.T$0H.. fffff800`02c0ead0 4C 64 02 00 FF 15 66 C5 01 00 48 8B 15 FF 63 02 Ld....f...H...c. fffff800`02c0eae0 00 44 8B 0D 10 64 02 00 48 8B 02 B9 01 00 00 00 .D...d..H....... fffff800`02c0eaf0 44 8B 40 18 44 3B C9 76 1E 48 83 C2 08 48 8B 02 [email protected];.v.H...H.. fffff800`02c0eb00 44 39 40 18 7D 06 44 8B 40 18 8B D9 FF C1 48 83 D9@.}[email protected]. fffff800`02c0eb10 C2 08 41 3B C9 72 E6 48 8D 4C 24 30 FF 15 0E C6 ..A;.r.H.L$0.... fffff800`02c0eb20 01 00 48 8B 05 B7 63 02 00 44 8B DB 4A 8B 1C D8 ..H...c..D..J... fffff800`02c0eb30 EB 07 83 60 1C 00 48 8B D8 F0 83 43 18 01 48 8D ...`..H....C..H. fffff800`02c0eb40 57 18 48 8D 4B 20 FF 15 F4 C4 01 00 48 8B 4B 10 W.H.K ......H.K. fffff800`02c0eb50 41 B9 01 00 00 00 4C 8B C5 BA 48 61 6C 20 FF 15 A.....L...Hal .. fffff800`02c0eb60 5C C5 01 00 4C 8B D8 48 85 C0 0F 85 F2 FE FF FF \...L..H........ fffff800`02c0eb70 48 21 44 24 20 45 33 C9 BA 00 10 00 00 B9 AC 00 H!D$ E3......... fffff800`02c0eb80 00 00 41 B8 02 EF 00 00 FF 15 62 C7 01 00 CC 90 ..A.......b..... fffff800`02c0eb90 90 90 90 90 90 90 90 90 48 89 5C 24 08 48 89 6C ........H.\$.H.l fffff800`02c0eba0 24 18 48 89 74 24 20 57 48 83 EC 20 41 80 78 30 $.H.t$ WH.. A.x0 fffff800`02c0ebb0 00 49 8B F8 8B F2 48 8B D9 BD 01 00 00 00 75 0F .I....H.......u. fffff800`02c0ebc0 49 8B 10 49 8B 48 08 FF 15 53 C4 01 00 EB 4A 4D I..I.H...S....JM fffff800`02c0ebd0 8B 00 48 8B 4F 08 BA 48 61 6C 20 FF 15 FF C4 01 ..H.O..Hal ..... fffff800`02c0ebe0 00 80 3D 30 63 02 00 00 75 2F 48 8D 4F 18 FF 15 ..=0c...u/H.O... fffff800`02c0ebf0 3C C5 01 00 48 8B 57 10 83 C8 FF F0 0F C1 42 18 <...H.W.......B. fffff800`02c0ec00 83 C0 FF 75 14 F0 0F B1 6A 1C 75 0D 48 8D 0D ED ...u....j.u.H... fffff800`02c0ec10 62 02 00 FF 15 4F C4 01 00 85 F6 74 1E 48 8B CE b....O.....t.H.. fffff800`02c0ec20 F6 43 10 10 74 0C 8B 43 10 25 EF 0F 00 00 48 89 .C..t..C.%....H. fffff800`02c0ec30 43 10 48 2B CD 48 8B 5B 08 75 E5 48 8B 5C 24 30 C.H+.H.[.u.H.\$0 fffff800`02c0ec40 48 8B 6C 24 40 48 8B 74 24 48 48 83 C4 20 5F C3 [email protected]$HH.. _. fffff800`02c0ec50 90 90 90 90 90 90 90 90 48 89 5C 24 18 48 89 4C ........H.\$.H.L fffff800`02c0ec60 24 08 55 56 57 41 54 41 55 41 56 41 57 48 83 EC $.UVWATAUAVAWH.. fffff800`02c0ec70 70 4D 8B F1 4D 8B E8 48 8B F2 4C 8B D1 44 0F 20 pM..M..H..L..D. fffff800`02c0ec80 C7 F6 42 0A 05 74 06 48 8B 5A 18 EB 2A 45 33 C9 ..B..t.H.Z..*E3. fffff800`02c0ec90 33 D2 48 8B CE 45 8D 41 01 C7 44 24 28 20 00 00 3.H..E.A..D$( .. fffff800`02c0eca0 00 83 64 24 20 00 FF 15 1C C4 01 00 4C 8B 94 24 ..d$ .......L..$ fffff800`02c0ecb0 B0 00 00 00 48 8B D8 BD 02 00 00 00 48 85 DB 75 ....H.......H..u fffff800`02c0ecc0 4A 40 3A FD 76 1F 48 21 5C 24 20 45 33 C9 BA 00 J@:.v.H!\$ E3... fffff800`02c0ecd0 10 00 00 B9 AC 00 00 00 41 B8 05 EF 00 00 FF 15 ........A....... fffff800`02c0ece0 0C C6 01 00 CC 8A 84 24 D8 00 00 00 44 8B 8C 24 .......$....D..$ fffff800`02c0ecf0 D0 00 00 00 4D 8B C6 49 8B D5 48 8B CE 88 44 24 ....M..I..H...D$ fffff800`02c0ed00 20 E8 02 FA FF FF E9 4D 01 00 00 44 8B BC 24 D0 ......M...D..$. fffff800`02c0ed10 00 00 00 BA FF 0F 00 00 41 8B CD 23 CA 41 8B C7 ........A..#.A.. fffff800`02c0ed20 C6 84 24 B8 00 00 00 00 23 C2 44 8D A4 01 FF 0F ..$.....#.D..... fffff800`02c0ed30 00 00 41 8B C7 41 C1 EC 0C C1 E8 0C 44 03 E0 44 ..A..A......D..D fffff800`02c0ed40 89 64 24 30 40 3A FD 76 41 33 C9 49 8B C6 45 85 .d$0@:.vA3.I..E. fffff800`02c0ed50 E4 74 64 48 F7 40 10 00 F0 FF FF 74 0D 48 8B 40 [email protected].@ fffff800`02c0ed60 08 FF C1 41 3B CC 72 EB EB 4D 48 83 64 24 20 00 ...A;.r..MH.d$ .

    Read the article

  • Team Foundation Server (TFS) Team Build Custom Activity C# Code for Assembly Stamping

    - by Bob Hardister
    For the full context and guidance on how to develop and implement a custom activity in Team Build see the Microsoft Visual Studio Rangers Team Foundation Build Customization Guide V.1 at http://vsarbuildguide.codeplex.com/ There are many ways to stamp or set the version number of your assemblies. This approach is based on the build number.   namespace CustomActivities { using System; using System.Activities; using System.IO; using System.Text.RegularExpressions; using Microsoft.TeamFoundation.Build.Client; [BuildActivity(HostEnvironmentOption.Agent)] public sealed class VersionAssemblies : CodeActivity { /// <summary> /// AssemblyInfoFileMask /// </summary> [RequiredArgument] public InArgument<string> AssemblyInfoFileMask { get; set; } /// <summary> /// SourcesDirectory /// </summary> [RequiredArgument] public InArgument<string> SourcesDirectory { get; set; } /// <summary> /// BuildNumber /// </summary> [RequiredArgument] public InArgument<string> BuildNumber { get; set; } /// <summary> /// BuildDirectory /// </summary> [RequiredArgument] public InArgument<string> BuildDirectory { get; set; } /// <summary> /// Publishes field values to the build report /// </summary> public OutArgument<string> DiagnosticTextOut { get; set; } // If your activity returns a value, derive from CodeActivity<TResult> and return the value from the Execute method. protected override void Execute(CodeActivityContext context) { // Obtain the runtime value of the input arguments string sourcesDirectory = context.GetValue(this.SourcesDirectory); string assemblyInfoFileMask = context.GetValue(this.AssemblyInfoFileMask); string buildNumber = context.GetValue(this.BuildNumber); string buildDirectory = context.GetValue(this.BuildDirectory); // ** Determine the version number values ** // Note: the format used here is: major.secondary.maintenance.build // ----------------------------------------------------------------- // Obtain the build definition name int nameStart = buildDirectory.LastIndexOf(@"\") + 1; string buildDefinitionName = buildDirectory.Substring(nameStart); // Set the primary.secondary.maintenance values // NOTE: these are hard coded in this example, but could be sourced from a file or parsed from a build definition name that includes them string p = "1"; string s = "5"; string m = "2"; // Initialize the build number string b; string na = "0"; // used for Assembly and Product Version instead of build number (see versioning best practices: **TBD reference) // Set qualifying product version information string productInfo = "RC2"; // Obtain the build increment number from the build number // NOTE: this code assumes the default build definition name format int buildIncrementNumberDelimterIndex = buildNumber.LastIndexOf("."); b = buildNumber.Substring(buildIncrementNumberDelimterIndex + 1); // Convert version to integer values int pVer = Convert.ToInt16(p); int sVer = Convert.ToInt16(s); int mVer = Convert.ToInt16(m); int bNum = Convert.ToInt16(b); int naNum = Convert.ToInt16(na); // ** Get all AssemblyInfo files and stamp them ** // Note: the mapping of AssemblyInfo.cs attributes to assembly display properties are as follows: // - AssemblyVersion = Assembly Version - used for the assembly version (does not change unless p, s or m values are changed) // - AssemblyFileVersion = File Version - used for the file version (changes with every build) // - AssemblyInformationalVersion = Product Version - used for the product version (can include additional version information) // ------------------------------------------------------------------------------------------------------------------------------------------------ Version assemblyVersion = new Version(pVer, sVer, mVer, naNum); Version newAssemblyFileVersion = new Version(pVer, sVer, mVer, bNum); Version productVersion = new Version(pVer, sVer, mVer); // Setup diagnostic fields int numberOfReplacements = 0; string addedAssemblyInformationalAttribute = "No"; // Enumerate over the assemblyInfo version attributes foreach (string attribute in new[] { "AssemblyVersion", "AssemblyFileVersion", "AssemblyInformationalVersion" }) { // Define the regular expression to find in each and every Assemblyinfo.cs files (which is for example 'AssemblyVersion("1.0.0.0")' ) Regex regex = new Regex(attribute + @"\(""\d+\.\d+\.\d+\.\d+""\)"); foreach (string file in Directory.EnumerateFiles(sourcesDirectory, assemblyInfoFileMask, SearchOption.AllDirectories)) { string text = File.ReadAllText(file); // Read the text from the AssemblyInfo file // If the AsemblyInformationalVersion attribute is not in the file, add it as the last line of the file // Note: by default the AssemblyInfo.cs files will not contain the AssemblyInformationalVersion attribute if (!text.Contains("[assembly: AssemblyInformationalVersion(\"")) { string lastLine = Environment.NewLine + "[assembly: AssemblyInformationalVersion(\"1.0.0.0\")]"; text = text + lastLine; addedAssemblyInformationalAttribute = "Yes"; } // Search for the expression Match match = regex.Match(text); if (match.Success) { // Get file attributes FileAttributes fileAttributes = File.GetAttributes(file); // Set file to read only File.SetAttributes(file, fileAttributes & ~FileAttributes.ReadOnly); // Insert AssemblyInformationalVersion attribute into the file text if does not already exist string newText = string.Empty; if (attribute == "AssemblyVersion") { newText = regex.Replace(text, attribute + "(\"" + assemblyVersion + "\")"); numberOfReplacements++; } if (attribute == "AssemblyFileVersion") { newText = regex.Replace(text, attribute + "(\"" + newAssemblyFileVersion + "\")"); numberOfReplacements++; } if (attribute == "AssemblyInformationalVersion") { newText = regex.Replace(text, attribute + "(\"" + productVersion + " " + productInfo + "\")"); numberOfReplacements++; } // Publish diagnostics to build report (diagnostic verbosity only) context.SetValue(this.DiagnosticTextOut, " Added AssemblyInformational Attribute: " + addedAssemblyInformationalAttribute + " Number of replacements: " + numberOfReplacements + " Build number: " + buildNumber + " Build directory: " + buildDirectory + " Build definition name: " + buildDefinitionName + " Assembly version: " + assemblyVersion + " New file version: " + newAssemblyFileVersion + " Product version: " + productVersion + " AssemblyInfo.cs Text Last Stamped: " + newText); // Write the new text in the AssemblyInfo file File.WriteAllText(file, newText); // restore the file's original attributes File.SetAttributes(file, fileAttributes); } } } } } }

    Read the article

  • Asp.net Custom user control button. How to stop multiple clicks by user.

    - by Laurence Burke
    I am trying to modify an open source Forum called YetAnotherForum.net in the project they have a custom user control called Yaf:ThemeButton. Now its rendered as an anchor with an onclick method in this code ThemeButton.cs using System; using System.Web.UI; using System.Web.UI.WebControls; namespace YAF.Controls { /// <summary> /// The theme button. /// </summary> public class ThemeButton : BaseControl, IPostBackEventHandler { /// <summary> /// The _click event. /// </summary> protected static object _clickEvent = new object(); /// <summary> /// The _command event. /// </summary> protected static object _commandEvent = new object(); /// <summary> /// The _attribute collection. /// </summary> protected AttributeCollection _attributeCollection; /// <summary> /// The _localized label. /// </summary> protected LocalizedLabel _localizedLabel = new LocalizedLabel(); /// <summary> /// The _theme image. /// </summary> protected ThemeImage _themeImage = new ThemeImage(); /// <summary> /// Initializes a new instance of the <see cref="ThemeButton"/> class. /// </summary> public ThemeButton() : base() { Load += new EventHandler(ThemeButton_Load); this._attributeCollection = new AttributeCollection(ViewState); } /// <summary> /// ThemePage for the optional button image /// </summary> public string ImageThemePage { get { return this._themeImage.ThemePage; } set { this._themeImage.ThemePage = value; } } /// <summary> /// ThemeTag for the optional button image /// </summary> public string ImageThemeTag { get { return this._themeImage.ThemeTag; } set { this._themeImage.ThemeTag = value; } } /// <summary> /// Localized Page for the optional button text /// </summary> public string TextLocalizedPage { get { return this._localizedLabel.LocalizedPage; } set { this._localizedLabel.LocalizedPage = value; } } /// <summary> /// Localized Tag for the optional button text /// </summary> public string TextLocalizedTag { get { return this._localizedLabel.LocalizedTag; } set { this._localizedLabel.LocalizedTag = value; } } /// <summary> /// Defaults to "yafcssbutton" /// </summary> public string CssClass { get { return (ViewState["CssClass"] != null) ? ViewState["CssClass"] as string : "yafcssbutton"; } set { ViewState["CssClass"] = value; } } /// <summary> /// Setting the link property will make this control non-postback. /// </summary> public string NavigateUrl { get { return (ViewState["NavigateUrl"] != null) ? ViewState["NavigateUrl"] as string : string.Empty; } set { ViewState["NavigateUrl"] = value; } } /// <summary> /// Localized Page for the optional link description (title) /// </summary> public string TitleLocalizedPage { get { return (ViewState["TitleLocalizedPage"] != null) ? ViewState["TitleLocalizedPage"] as string : "BUTTON"; } set { ViewState["TitleLocalizedPage"] = value; } } /// <summary> /// Localized Tag for the optional link description (title) /// </summary> public string TitleLocalizedTag { get { return (ViewState["TitleLocalizedTag"] != null) ? ViewState["TitleLocalizedTag"] as string : string.Empty; } set { ViewState["TitleLocalizedTag"] = value; } } /// <summary> /// Non-localized Title for optional link description /// </summary> public string TitleNonLocalized { get { return (ViewState["TitleNonLocalized"] != null) ? ViewState["TitleNonLocalized"] as string : string.Empty; } set { ViewState["TitleNonLocalized"] = value; } } /// <summary> /// Gets Attributes. /// </summary> public AttributeCollection Attributes { get { return this._attributeCollection; } } /// <summary> /// Gets or sets CommandName. /// </summary> public string CommandName { get { if (ViewState["commandName"] != null) { return ViewState["commandName"].ToString(); } return null; } set { ViewState["commandName"] = value; } } /// <summary> /// Gets or sets CommandArgument. /// </summary> public string CommandArgument { get { if (ViewState["commandArgument"] != null) { return ViewState["commandArgument"].ToString(); } return null; } set { ViewState["commandArgument"] = value; } } #region IPostBackEventHandler Members /// <summary> /// The i post back event handler. raise post back event. /// </summary> /// <param name="eventArgument"> /// The event argument. /// </param> void IPostBackEventHandler.RaisePostBackEvent(string eventArgument) { OnCommand(new CommandEventArgs(CommandName, CommandArgument)); OnClick(EventArgs.Empty); } #endregion /// <summary> /// Setup the controls before render /// </summary> /// <param name="sender"> /// </param> /// <param name="e"> /// </param> private void ThemeButton_Load(object sender, EventArgs e) { if (!String.IsNullOrEmpty(this._themeImage.ThemeTag)) { // add the theme image... Controls.Add(this._themeImage); } // render the text if available if (!String.IsNullOrEmpty(this._localizedLabel.LocalizedTag)) { Controls.Add(this._localizedLabel); } } /// <summary> /// The render. /// </summary> /// <param name="output"> /// The output. /// </param> protected override void Render(HtmlTextWriter output) { // get the title... string title = GetLocalizedTitle(); output.BeginRender(); output.WriteBeginTag("a"); output.WriteAttribute("id", ClientID); if (!String.IsNullOrEmpty(CssClass)) { output.WriteAttribute("class", CssClass); } if (!String.IsNullOrEmpty(title)) { output.WriteAttribute("title", title); } else if (!String.IsNullOrEmpty(TitleNonLocalized)) { output.WriteAttribute("title", TitleNonLocalized); } if (!String.IsNullOrEmpty(NavigateUrl)) { output.WriteAttribute("href", NavigateUrl.Replace("&", "&amp;")); } else { // string.Format("javascript:__doPostBack('{0}','{1}')",this.ClientID,"")); output.WriteAttribute("href", Page.ClientScript.GetPostBackClientHyperlink(this, string.Empty)); } bool wroteOnClick = false; // handle additional attributes (if any) if (this._attributeCollection.Count > 0) { // add attributes... foreach (string key in this._attributeCollection.Keys) { // get the attribute and write it... if (key.ToLower() == "onclick") { // special handling... add to it... output.WriteAttribute(key, string.Format("{0};{1}", this._attributeCollection[key], "this.blur();this.display='none';")); wroteOnClick = true; } else if (key.ToLower().StartsWith("on") || key.ToLower() == "rel" || key.ToLower() == "target") { // only write javascript attributes -- and a few other attributes... output.WriteAttribute(key, this._attributeCollection[key]); } } } // IE fix if (!wroteOnClick) { output.WriteAttribute("onclick", "this.blur();this.style.display='none';"); } output.Write(HtmlTextWriter.TagRightChar); output.WriteBeginTag("span"); output.Write(HtmlTextWriter.TagRightChar); // render the optional controls (if any) base.Render(output); output.WriteEndTag("span"); output.WriteEndTag("a"); output.EndRender(); } /// <summary> /// The get localized title. /// </summary> /// <returns> /// The get localized title. /// </returns> protected string GetLocalizedTitle() { if (Site != null && Site.DesignMode == true && !String.IsNullOrEmpty(TitleLocalizedTag)) { return String.Format("[TITLE:{0}]", TitleLocalizedTag); } else if (!String.IsNullOrEmpty(TitleLocalizedPage) && !String.IsNullOrEmpty(TitleLocalizedTag)) { return PageContext.Localization.GetText(TitleLocalizedPage, TitleLocalizedTag); } else if (!String.IsNullOrEmpty(TitleLocalizedTag)) { return PageContext.Localization.GetText(TitleLocalizedTag); } return null; } /// <summary> /// The on click. /// </summary> /// <param name="e"> /// The e. /// </param> protected virtual void OnClick(EventArgs e) { var handler = (EventHandler) Events[_clickEvent]; if (handler != null) { handler(this, e); } } /// <summary> /// The on command. /// </summary> /// <param name="e"> /// The e. /// </param> protected virtual void OnCommand(CommandEventArgs e) { var handler = (CommandEventHandler) Events[_commandEvent]; if (handler != null) { handler(this, e); } RaiseBubbleEvent(this, e); } /// <summary> /// The click. /// </summary> public event EventHandler Click { add { Events.AddHandler(_clickEvent, value); } remove { Events.RemoveHandler(_clickEvent, value); } } /// <summary> /// The command. /// </summary> public event CommandEventHandler Command { add { Events.AddHandler(_commandEvent, value); } remove { Events.RemoveHandler(_commandEvent, value); } } } } now that is just cs file its handled like this in the .ascx page of the actual website <YAF:ThemeButton ID="Save" runat="server" CssClass="yafcssbigbutton leftItem" TextLocalizedTag="SAVE" OnClick="Save_Click" /> now it is given an OnClick codebehind function that does some serverside function like this protected void Save_Click(object sender, EventArgs e) { //some serverside code here } now I have a problem with the user being able to click multiple times and firing that serverside function multiple times. I have added in the code as of right now an extra onclick="this.style.display='none'" in the .cs code but that is a ugly fix I was wondering if anyone would have a better idea of disabling the ThemeButton clientside?? pls any feedback if I need to give more examples or further explain the question thanks.

    Read the article

  • Hiding Extended program check errors for Includes in ABAP

    - by Esti
    How can I stop the ABAP extended program check (SLIN) from reporting errors in include libraries that I may not have write access to? I like to leave the extended check with as few errors & warnings as possible, usually when I intentionally use something in a way that may cause a warning, I use the pseudo comments ("#EC * etc) to hide the message. This also tells the next programmer that I at least thought about the possible consequences of using something in a particular way. When these statements are in includes that I have no control over, I would like to hide the messages without changing the offending libraries/includes.

    Read the article

  • Problem showing modelstate errors while using RenderPartialToString

    - by Martin
    Im using the following code: public string RenderPartialToString(ControllerContext context, string partialViewName, ViewDataDictionary viewData, TempDataDictionary tempData) { ViewEngineResult result = ViewEngines.Engines.FindPartialView(context, partialViewName); if (result.View != null) { StringBuilder sb = new StringBuilder(); using (StringWriter sw = new StringWriter(sb)) { using (HtmlTextWriter output = new HtmlTextWriter(sw)) { ViewContext viewContext = new ViewContext(context, result.View, viewData, tempData, output); result.View.Render(viewContext, output); } } return sb.ToString(); } return String.Empty; } To return a partial view and a form through JSON. It works as it should, but as soon as I get modelstate errors my ValidationSummary does not show. The JSON only return the default form but it does not highlight the validation errors or show the validation summary. Am I missing something? This is how I call the RenderPartialToString: string partialView = RenderPartialToString(this.ControllerContext, "~/Areas/User/Views/Account/ChangeAccountDetails.ascx", new ViewDataDictionary(avd), new TempDataDictionary());

    Read the article

  • Using QT to build a WYSIWYG Editor for a Custom Markup Language

    - by Aaron
    I'm new to QT, and am trying to figure out the best means of creating a WYSIWYG editor widget for a custom markup language that displays simple text, images, and links. I need to be able to propagate changes from the WYSIWYG editor to the custom markup representation. As a concrete example of the problem domain, imagine that the custom markup might have a "player" tag which contains a player name and a team name. The markup could look like this: Last week, <player id="1234"><name>Aaron Rodgers</name><team>Packers</team></player> threw a pass. This text would display in the editor as: Last week, Aaron Rodgers of the Packers threw a pass. The player name and the team name would be editable directly within the editor in standard WYSIWYG fashion, so that my users do not have to learn any markup. Also, when the player name is moused-over, a details pop-up will appear about that player, and similarly for the team. With that long introduction, I'm trying to figure out where to start with QT. It seems that the most logical option would be the Rich Text API using a QTextDocument. This approach seems less than ideal given the limitations of a QTextDocument: I can't figure out how to capture navigation events from clicking on links. Following links on click seems to only be enabled when the QTextEdit is readonly. Custom objects that implement QTextObjectInterface are ignored in copy-and-paste operations Any HTML-based markup that is passed to it as Rich Text is retranslated into a series of span tags and lots of other junk, making it extremely difficult to propagate changes from the editor back to the original custom markup. A second option appears to be QWebKit, which allows for live editing of HTML5 markup, so I could specify a two-way translation between the custom markup and HTML5. I'm not clear on how one would propagate changes from the editor back to the original markup in real-time without re-translating the entire document on every text change. The QWebKit solutions looks like awfully bulky to me (Learning WebKit along with QT) to what should be a relatively simple problem. I have also considered implementing the WYSIWYG with a custom class using native QT containers, labels, images, and other widgets manually. This seems like the most flexible approach, and the one most likely not to run into unresolvable problems. However, I'm pretty sure that implementing all the details of a normal text editor (selecting text, font changes, cut-and-paste support, undo/redo, dragging of objects, cursor placement, etc.) will be incredibly time consuming. So, finally, my question: are there any QT gurus out there with some advice on where to start with this sort of project? BTW, I am using QT because the application is a desktop application that needs platform independence.

    Read the article

< Previous Page | 44 45 46 47 48 49 50 51 52 53 54 55  | Next Page >