Search Results

Search found 137 results on 6 pages for 'sergey gavruk'.

Page 1/6 | 1 2 3 4 5 6  | Next Page >

  • Apache/passenger/ree doesn't interpret .rb files

    - by Sergey
    I'm trying to get apache + passenger + ree to work. I think I did everything (except for setting up rails env - for now I wanna run just pure ruby) described here: http://rvm.beginrescueend.com/integration/passenger/ But when I try to go to localhost/test.rb it doesn't interpret that file and just download it. I don't know where should I look for mistakes, so here are a few files I think could be relevant: /var/log/apache2/error.log (these 2 lines are repeating) [Mon May 31 23:12:47 2010] [notice] Graceful restart requested, doing restart [Mon May 31 23:12:48 2010] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.2 with Suhosin-Patch Phusion_Passenger/2.2.11 configured -- resuming normal operations /etc/apache2/httpd.conf LoadModule passenger_module /home/sergey/.rvm/gems/ree-1.8.7-2010.01/gems/passenger-2.2.11/ext/apache2/mod_passenger.so PassengerRoot /home/sergey/.rvm/gems/ree-1.8.7-2010.01/gems/passenger-2.2.11 PassengerRuby /home/sergey/.rvm/bin/passenger_ruby /var/www/test.rb puts "test"

    Read the article

  • Apache/passenger/ree doesn't interpret .rb files

    - by Sergey
    I'm trying to get apache + passenger + ree to work. I think I did everything (except for setting up rails env - for now I wanna run just pure ruby) described here: http://rvm.beginrescueend.com/integration/passenger/ But when I try to go to localhost/test.rb it doesn't interpret that file and just download it. I don't know where should I look for mistakes, so here are a few files I think could be relevant: /var/log/apache2/error.log (these 2 lines are repeating) [Mon May 31 23:12:47 2010] [notice] Graceful restart requested, doing restart [Mon May 31 23:12:48 2010] [notice] Apache/2.2.14 (Ubuntu) PHP/5.3.2-1ubuntu4.2 with Suhosin-Patch Phusion_Passenger/2.2.11 configured -- resuming normal operations /etc/apache2/httpd.conf LoadModule passenger_module /home/sergey/.rvm/gems/ree-1.8.7-2010.01/gems/passenger-2.2.11/ext/apache2/mod_passenger.so PassengerRoot /home/sergey/.rvm/gems/ree-1.8.7-2010.01/gems/passenger-2.2.11 PassengerRuby /home/sergey/.rvm/bin/passenger_ruby /var/www/test.rb puts "test"

    Read the article

  • Silverlight Cream for January 16, 2011 -- #1029

    - by Dave Campbell
    In this Issue: Michael Washington, Jesse Liberty, Deborah Kurata(-2-, -3-, -4-), Sergey Barskiy(-2-), Miroslav Nedyalkov, Jeff Prosise, and Matthias Shapiro(-2-). Above the Fold: Silverlight: "Building a Multi-Page Silverlight LOB Application" Deborah Kurata WP7: "Windows Phone 7 [Controls] Project" Sergey Barskiy Sketchflow: "Sketchflow To Final" Michael Washington From SilverlightCream.com: Sketchflow To Final Check out this post by Michael Washington detailing the Sketchflow he did of his app, and how the final result tracks amazingly well. Windows Phone From Scratch #19 – MVVM Light Toolkit Soup To Nuts #4 Continuing to try to catch up to Jesse Liberty is this post, number 19 in the Windows Phone series and the 4th in that series about MVVMLight, and discussing binding a collection in the ViewModel to a ListBox in the view. Building a Multi-Page Silverlight LOB Application Deborah Kurata has the first 4 parts up (in 2 days) in a 6-part tutorial series she's doing on building a Silverlight LOB app. The first post was an intro and link to the rest as they become available. This 2nd post is getting the app newed up and making sure you've got your head wrapped around multiple pages. Theming a Silverlight Application using Existing Themes Deborah Kurata's next part is about getting started with themes in your app using the themes provided in the toolkit specifically. Theming a Silverlight Application using Custom Themes Deborah Kurata's next tutorial in the series is also about themes, but this time it's about custom themes... or rather customized from a 'standard' one in this case. Adding a New Page to a Multi-Page Silverlight Application Deborah Kurata's last available post in the tutorial series is this one on adding a new page to the app. Windows Phone 7 Project Sergey Barskiy has a pair of posts up about a calendar control that he is building and has out on CodePlex... nice-looking control too! Windows Phone 7 Controls Project Update Sergey Barskiy's second post is an update to the calendar... the biggest update being the ability to use the Toolkit context menu. How to Create Ad Rotator with Telerik TransitionControl and CoverFlow control for Silverlight Miroslav Nedyalkov uses the Telerik TransitionControl and CoverFlow controls to produce a great-looking ad rotator using any ContentControl or ListBox... very nice demo on the page.... Building Touch Interfaces for Windows Phones, Part 2 Jeff Prosise has part 2 of his tutorial series on WP7 Touch Interfaces up... and he's processing touch events directly in this one. Fixing the ListPicker / ScrollViewer Problem in Windows Phone 7 Matthias Shapiro has a couple of posts out that I've missed... this one is on an issue with ListPickers in a ScrollViewer where the listpicker gets hit rather than the scroll, and of course he has a work-around... but you'll need the source for the ListPicker to do it. Embedding a Sound File in Windows Phone 7 app (Silverlight) The next post by Matthias Shapiro is an explanation of embedding a sound file in a WP7 app with 2 conditions: 1) it downloads with your app, and 2) it plays no matter what. Stay in the 'Light! Twitter SilverlightNews | Twitter WynApse | WynApse.com | Tagged Posts | SilverlightCream Join me @ SilverlightCream | Phoenix Silverlight User Group Technorati Tags: Silverlight    Silverlight 3    Silverlight 4    Windows Phone MIX10

    Read the article

  • Microsoft VirtualPC installation

    - by Sergey Osypchuk
    I am trying to run old win16 application. I am running windows 7 x64 SP1. I downloaded VirtualPC from http://www.microsoft.com/windows/virtual-pc/download.aspx Step 2 and Step 3. During installation of Windows Virtual PC i am having error in event log: {Cannot install widnows update because of error} 2149842967 "" (Command Line: ""C:\Windows\system32\wusa.exe" "C:\Users\Sergey\Downloads\Windows6.1-KB958559-x64-RefreshPkg (1).msu" Text in { } is approximate translation from russian to english. When i try to run "Windows XP Mode", it says: Cannot launch main process Windows Virutual PC When i click "Windows Virtual PC" it shows empty folder. Any ideas?

    Read the article

  • How to deploy asp.net web application multiple times on the same server?

    - by Sergey
    Hello, I have a ASP.NET 3.5 web application and I would like to allow users to install this web application multiple times on the same server. Each web app will work with it's own database: Server1 -------- WebApp1 - database1 WebApp2 - database2 WebApp3 - database3 Firstly I tried to use web-deployment-project, but it allows me to install my web application only once. How I should implement deployment of web app multiple times on the same server? Should I develop my own winforms application? Thanks, Sergey

    Read the article

  • Vista/7 UAC: how to lower process privileges

    - by Sergey
    Hi all, Is it possible for a process to lower itself from elevated UAC permission back to standard user? If not can the elevated process launch its copy with standard user token and then kill itself? Any code examples (C# preferred)? Details: Problem: - user installs my product (written in C#) - the installer elevates its UAC permission to admin - at the end the installer launches my exe - the exe inherits elevated permissions from admin - the exe mounts network drives which become invisible in Windows Explorer (that runs with regular permissions) Options I considered: 1) break installer into outer exe and inner exe, that runs with elevated permission. The install consists of 1000+ lines of NSIS code and I don't know anything about NSIS 2) mounting drives with lower permissions. If I do it Win Explorer can see the drives but my exe cannot 3) setting EnableLinkedConnection registry option to 1. This is a no-go because it requires PC reboot during the installation. Please help! Sergey

    Read the article

  • Is Transport security a bad practice for the WCF service over the Internet?

    - by Sergey
    Hello, I have a WCF service accessible over the Internet. It has wsHttpBinding binding and message security mode with username credentials to authenticate clients. The msdn says that we should use message security for the Internet scenarios, because it provides end-to-end security instead of point-to-point security as Transport security has. What if i use transport security for the wcf service over the Internet? Is it a bad practice? Could my data be seen by malicious users? Thanks, Sergey

    Read the article

  • Unknown error in the memory in C

    - by Sergey Gavruk
    I have a 2D dynamic array. I enter a line of 0's after line which has a biggest number: void InsertZero(int **a, int pos){ int i, j; a = (int**)realloc(a, n * sizeof(*a)); a[n-1] = (int*)calloc(n, sizeof(**a)); d = 0; for(i = n-1; i > pos; i--){ for(j = 0; j < n; j++){ a[i][j] = a[i-1][j]; printf("%d ", a[i][j]); } } for(i = 0; i < n; i++){ a[pos][i] = 0; } } If i make a size of array 3, 5, 7, 9, ... it works correctly. But if a number of lines is 2, 4, 6, ... , it is an access violation error, when i try to print my array: void Print(void){ int i, j; for(i = 0; i < (n-d); i++){ for(j = 0; j < n; j++){ printf("%d\t", arr[i][j]); } printf("\n"); } } code: http://codepad.org/JcUis6W4

    Read the article

  • puts() a pointer in C

    - by Sergey Gavruk
    I have a function: char *make_text(void) { char txt[MAXLEN]; //make something return txt; } Thats my main program: int main(void) { char *s = make_text(); puts(s); getch(); return 0; } puts(s) returns 0 and its nothing printed. Whats happened?

    Read the article

  • Unknown symbols when I read file

    - by Sergey Gavruk
    I read file, but in the end of file i get unknown symbols: int main() { char *buffer, ch; int i = 0, size; FILE *fp = fopen("file.txt", "r"); if(!fp){ printf("File not found!\n"); exit(1); } fseek(fp, 0, SEEK_END); size = ftell(fp); printf("%d\n", size); fseek(fp, 0, SEEK_SET); buffer = malloc(size * sizeof(*buffer)); while(((ch = fgetc(fp)) != NULL) && (i <= size)){ buffer[i++] = ch; } printf(buffer); fclose(fp); free(buffer); getch(); return 0; }

    Read the article

  • Is it possible to store ObjectContext on the client when using WCF and Entity Framework?

    - by Sergey
    Hello, I have a WCF service which performs CRUD operation on my data model: Add, Get, Update and Delete. And I'm using Entity Framework for my data model. On the other side there is a client application which calls methods of the WCF service. For example I have a Customer class: [DataContract] public class Customer { public Guid CustomerId {get; set;} public string CustomerName {get; set;} } and WCF service defines this method: public void AddCustomer(Customer c) { MyEntities _entities = new MyEntities(); _entities.AddToCustomers(c); _entities.SaveChanges(); } and the client application passes objects to the WCF service: var customer = new Customer(){CustomerId = Guid.NewGuid, CustomerName="SomeName"}; MyService svc = new MyService(); svc.Add(customer); // or svc.Update(customer) for example But when I need to pass a great amount of objects to the WCF it could be a perfomance issue because of I need to create ObjectContext each time when I'm doing Add(), Update(), Get() or Delete(). What I'm thinking on is to keep ObjectContext on the client and pass ObjectContext to the wcf methods as additional parameter. Is it possible to create and keep ObjectContext on the client and don't recreate it for each operation? If it is not, how could speed up the passing of huge amount of data to the wcf service? Sergey

    Read the article

  • How do I measure performance of a virtual server?

    - by Sergey
    I've got a VPS running Ubuntu. Being a virtual server, I understand that it shares resources with unknown number of other servers, and I'm noticing that it's considerably slower than my desktop machine. Is there some tool to measure the performance of the virtual machine? I'd be curious to see some approximate measure similar to bogomips, possibly for CPU (operations/sec), memory and disk read/write speed. I'd like to be able to compare those numbers to my desktop machine. I'm not interested in the specs of the actual physical machine my VPS is running on - by doing cat /proc/cpuinfo I can see that it's a nice quad-core Xeon machine, but it doesn't matter to me. I'm basically interested in how fast a program would run in my VPS - how many CPU operations it can make in a second, how many bytes to write to RAM or to disk. I only have ssh access to the machine so the tool need to be command-line. I could write a script which, say, does some calculations in a loop for a second and counts how many loops it was able to do, or something similar to measure disk and RAM performance. But I'm sure something like this already exists.

    Read the article

  • PDF thumbnails don't work

    - by Sergey
    For a reason I don't know my ubuntu doesn't show thumbnails for pdf. in gconf-editor -- /desktop/gnome/thumbnailers: application@pdf/command = "evince-thumbnailer -s %s %u %o" application@pdf/enable = "True" from console evince-thumbnailer file.pdf out.png works perfectly What can be wrong?? when I installed gnome3 thumbnails worked but everything else didnt. when returned to gnome2.3 - no thumbnails.

    Read the article

  • How to go automatically from Suspend into Hibernate?

    - by Sergey Stadnik
    Is it possible to make Ubuntu go into Hibernate state from Suspend, aka "Suspend Sedation"? For example, my laptop is set up to go into a Suspend once I close the lid. If then I don't use it for entire day, the battery goes flat, because even in suspend mode the hardware still consumes a small amount of power, and the battery eventually discharges. What I want is to be able to tell Ubuntu that even if it is suspended, it still needs to go into Hibernate after some hours of inactivity. Windows can do that. Ubuntu can be programmed to go into Standby or Hibernate on timer, but not both. Update: I guess I need to be more specific. What I am looking for is this: When I close the lid, the laptop is put into Suspend. Then, after a pre-determined time (even if the battery is going strong) if I still don't use it, it should put itself into a Hibernate to save battery power.

    Read the article

  • 11.10 suddenly became 2d

    - by Sergey Kravchenya
    After today's update ubuntu became 2d despite the fact that I logged in under "ubuntu" not "ubuntu 2d". Also some other issues appeared (e.g. my shortcuts rolled back, num pad doesn't work, caps lock key don't have any effect on case, when I'm typing in dash - it doubles every letter - 'n' -- 'nn' ) Here is update log: Setting up google-chrome-stable (17.0.963.83-r127885) ... Setting up libavutil51 (4:0.8.1-1~ppa1) ... Setting up libpostproc52 (4:0.8.1-1~ppa1) ... Setting up libswscale2 (4:0.8.1-1~ppa1) ... Setting up libavcodec53 (4:0.8.1-1~ppa1) ... Setting up libavformat53 (4:0.8.1-1~ppa1) ... Setting up libbluray1 (1:0.2.2-1~ppa1) ... Setting up libmp3lame0 (3.99.5+repack1-3~ppa1) ... Setting up libx264-120 (2:0.120.2171+git01f7a33-3~ppa1) ... Setting up libxvidcore4 (2:1.3.2-9~ppa1) ... Setting up thunderbird (11.0+build1-0ubuntu0.11.10.1) ... Installing new version of config file /etc/apport/blacklist.d/thunderbird ... Setting up thunderbird-globalmenu (11.0+build1-0ubuntu0.11.10.1) ... Setting up thunderbird-gnome-support (11.0+build1-0ubuntu0.11.10.1) ... Setting up thunderbird-locale-en (1:11.0+build1-0ubuntu0.11.10.1) ... Setting up thunderbird-locale-en-gb (1:11.0+build1-0ubuntu0.11.10.1) ... Setting up thunderbird-locale-en-us (1:11.0+build1-0ubuntu0.11.10.1) ... Setting up thunderbird-locale-ru (1:11.0+build1-0ubuntu0.11.10.1) ... Setting up ubuntu-tweak (0.6.2-1~oneiric1) ... Setting up xul-ext-calendar-timezones (1.3+build1-0ubuntu0.11.10.1) ... Setting up xul-ext-lightning (1.3+build1-0ubuntu0.11.10.1) ... Setting up xul-ext-gdata-provider (1.3+build1-0ubuntu0.11.10.1) ... What can I do to find what cause of this problem? What additional information should I provide to help you help me?

    Read the article

  • Additional useful skill?

    - by Sergey
    Almost each language has some additional technology or skill or whatever which can work in a pair with it but still be something fresh. For example, Java + Flex. It's a good pair - those who learn Java and want something both useful and new may try Flex. What are "pairs" for the most popular languages(Java, C#, C++, etc.)? PS: Most people advise learning functional programming as an additional skill but this is very fuzzy. They talk about such abstract things as wide programming perspective and other things, but you can hardly say whether these functional skills will be really needed. Yeah, maybe some basics of it can be useful, but serious learning of LISP seems not perspective.

    Read the article

  • Import images from camera in KDE with particular directory structure

    - by Sergey
    I have been using f-spot for a few years to manage my photo archive, which is about 50K images at the moment. With the development of f-spot slowing down in the recent years and me switching to KDE, I'm looking at using DigiKam, which seems to be very nice and packed with features beyond my wildest hopes :) One thing I'm missing though is the way f-spot was importing the images: it was creating subdirectories based on the image's shooting date: $HOME/Photos/2011/11/12/IMG_1234.jpg $HOME/Photos/2011/11/13/IMG_1235.jpg $HOME/Photos/2011/11/13/IMG_1236.jpg I don't seem to be able to find a way to make DigiKam to behave like this - although it has some settings to change the image filename according to some mask which may include shooting date, I see now way to tell it to create sub-directories. Is there a way to make DigiKam to behave like this? Or, alternatively, what is a good program to import images from a camera and save them on disk in subdirectories according to their shooting date?

    Read the article

  • Usb Live No hardisk

    - by sergey simeonov
    Ok so i own a toshiba laptop , and the thing is my hdd went bad,but i had a usb flash drive with i live cd Ubuntu on it. Now i dont have and hdd plugged in my laptop im only with a flashdrive. My question is how much memory does this live cd support cause my flash drive is 32 gigs and after about 1.5 gigs of downloads a screen shows up and tells me that i dont have enough space left. the other thing is i dont have money to get a hdd right now so i wanna use this flash drive for now but can i somehow customize the cd thru the live edition so i could have programs that i need after restarts i tried with Customization Live Cd but when i run it , it stops and in my terminal it says could not execute not enough space. So if anyone can tell me what can i do with this problem im having with space on my live Usb ubuntu.

    Read the article

  • Java ExecutorService java heap space ptoblems

    - by Sergey Aganezov jr
    I have a little bit of a problem in a multitasking java department. I have a class, called public class ThreadWorker implements Runnable { //some code in here public void run(){ // invokes some recursion method in the ThreadWorker itself, // which will stop eventually { } all in all, pretty simple "worker" that can work on it's on. To work with threads I'm using public static int THREAD_NUMBER = 4; public static ExecutorServide es = Executors.newFixedThreadPool(THREAD_NUMBER); adding instances of ThreadWroker class happens here: public void recursiveMethod(Arraylist<Integers> elements, MyClass data){ if (elements.size() == 0 && data.qualifies()){ ThreadWorker tw = new ThreadWorker(data); es.execute(tw); return; } for (int i=0; i< elements.size(); i++){ // some code to prevent my problem MyClass data1 = new MyClass(data); MyClass data2 = new MyClass(data); ArrayList<Integer> newElements = (ArrayList<Integer>)elements.clone(); data1.update(elements.get(i)); data2.update(-1 * elements.get(i)); newElements.remove(i); recursiveMethod(newElements, data1); recursiveMethod(newElements, data2); { } and the problem is that the depth of the recursion tree is quite big, so as it's width, so a lot of ThreadWorkers are added to the ExecutorService, so after some time on the big input a get Exception in thread "pool-1-thread-2" java.lang.OutOfMemoryError: Java heap space which is caused, as I think because of a ginormous number of ThreadWorkers i'm adding to ExecutorSirvice to be executed, so it runs out of memory. Every ThreadWorker takes about 40 Mb of RAM for all it needs. Is there a method to get how many threads (instances of classes implementing runnable interface) have been added to ExecutorService? So I can add it in the shown above code (int the " // some code to prevent my problem"), as while ("number of threads in the ExecutorService" > 10){ Thread.sleep(10000); } so I won't go to deep or to broad with my recursion and prevent those exception-throwing situations. Sincerely, Sergey Aganezov jr.

    Read the article

  • Java Spotlight Episode 35: JVM Performance and Quality

    - by Roger Brinkley
    Tweet Interview with Vladimir Ivanov, Ivan Krylov, Sergey Kuksenko on the JDK 7 Java Virtual Machine performance and quality. Joining us this week on the Java All Star Developer Panel are Dalibor Topic, Java Free and Open Source Software Ambassador, and Alexis Moussine-Pouchkine, Java EE Developer Advocate. Right-click or Control-click to download this MP3 file. You can also subscribe to the Java Spotlight Podcast Feed to get the latest podcast automatically. If you use iTunes you can open iTunes and subscribe with this link: Java Spotlight Podcast in iTunes. Show Notes News Java 7 Launch Event GlassFish 3.1.1 re-planning done, first RC on July 7th, lots of component updates following customer and community feedback Mojarra 2.1.2 is here, just a little ahead of the GlassFish 3.1.1 release. In other JSF-related news, JSF 2.0 has a first expert draft New OpenJDK Project proposed: JDK 7 Update Events June 20-23 JAX, San Jose, CA June 21 Java + MySQL Webinar at 9:00 AM PDT June 21-23 JaZoon, Zurich, Switzerland June 22nd and 28th GlassFish Webinars (one in Portuguese) June 29-July 2 12th Forum Internatioal Software Livre, Porto Alegre, Brazil July 3, Sao Jose do Rio Preto, Brazil July 5, Brasilia, Brazil (DFJUG) July 6, Goiania, Brazil (GOJava) July 6-10 The Developers Conference, Sao Paulo, Brazil July 7 Java 7 Launch Event live in Redwood Shores, CA; Sao Paulo, BR; London, England. July 9, Joao Pessoa, Brazil (PBJUG) July 11, Natal, Brazil (JavaRN) July 14, Fortaleza, Brazil (CEJUG) July 16, Salvador, Brazil (JavaBahia) July 19, Toledo, Brazil (UNIPAR) July 21, Maringa, Brazil (RedFoot) Feature interview This weeks feature interview is with Vladimir Ivanov, HotSpot JVM Quality Engingeer;  Ivan Krylov, Licensee Engineering;  and Sergey Kuksenko, Java SE Performance Team on the JDK 7 Java Virtual Machine peformance and quality. What's Cool Ongoing OpenJDK Bylaws ratification results Show Transcripts Transcript for this show is available here when available

    Read the article

  • Silverlight Cream for May 01, 2010 -- #853

    - by Dave Campbell
    In this Issue: Damian Schenkelman, Rob Eisenberg, Sergey Barskiy, Victor Gaudioso, CorrinaB, Mike Snow, and Adam Kinney. From SilverlightCream.com: Prism’s future: Trying to summarize things Damian Schenkelman collected links to the latest Prism information to provide a reference post, including discussing WP7. MVVM Study - Interlude Rob Eisenberg discusses MVVM - it's beginnings and links out to all the major players old and new. Windows Phone 7 Database Here we go... Sergey Barskiy converted his Silverlight database project to WP7, and it's available on CodePlex... cool! New Silverlight Video Tutorial: How to Save an Image in Your Silverlight Applications Victor Gaudioso has a new video tutorial up... demonstrating saving an image from Silverlight to your hard disk. He also has the source files for download. Enforce Design Guidelines With Styles And Behaviors CorrinaB has a post up discussing attaching behaviors in styles. She has a couple good examples and a sample project to download. Silverlight Tip of the Day #9 – Obtaining Your clients IP Address Mike Snow has Tip number 9 up and he's explaining how to find the client IP address even though it's not natively available from Silverlight or jscript. Expression Blend 4 for Windows Phone in 90 seconds Adam Kinney talks about the release of a new version of the Expression Blend add-in for WP7. He's got links and instructions for removing and upgrading. Stay in the 'Light! Twitter SilverlightNews | Twitter WynApse | WynApse.com | Tagged Posts | SilverlightCream Join me @ SilverlightCream | Phoenix Silverlight User Group Technorati Tags: Silverlight    Silverlight 3    Silverlight 4    Windows Phone MIX10

    Read the article

  • InternalsVisibleTo attribute and security vulnerability

    - by Sergey Litvinov
    I found one issue with InternalsVisibleTo attribute usage. The idea of InternalsVisibleTo attribute to allow some other assemblies to use internal classes\methods of this assembly. To make it work you need sign your assemblies. So, if other assemblies isn't specified in main assembly and if they have incorrect public key, then they can't use Internal members. But the issue in Reflection Emit type generation. For example, we have CorpLibrary1 assembly and it has such class: public class TestApi { internal virtual void DoSomething() { Console.WriteLine("Base DoSomething"); } public void DoApiTest() { // some internal logic // ... // call internal method DoSomething(); } } This assembly is marked with such attribute to allow another CorpLibrary2 to make inheritor for that TestAPI and override behaviour of DoSomething method. [assembly: InternalsVisibleTo("CorpLibrary2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100434D9C5E1F9055BF7970B0C106AAA447271ECE0F8FC56F6AF3A906353F0B848A8346DC13C42A6530B4ED2E6CB8A1E56278E664E61C0D633A6F58643A7B8448CB0B15E31218FB8FE17F63906D3BF7E20B9D1A9F7B1C8CD11877C0AF079D454C21F24D5A85A8765395E5CC5252F0BE85CFEB65896EC69FCC75201E09795AAA07D0")] The issue is that I'm able to override this internal DoSomething method and break class logic. My steps to do it: Generate new assembly in runtime via AssemblyBuilder Get AssemblyName from CorpLibrary1 and copy PublikKey to new assembly Generate new assembly that will inherit TestApi class As PublicKey and name of generated assembly is the same as in InternalsVisibleTo, then we can generate new DoSomething method that will override internal method in TestAPI assembly Then we have another assembly that isn't related to this CorpLibrary1 and can't use internal members. We have such test code in it: class Program { static void Main(string[] args) { var builder = new FakeBuilder(InjectBadCode, "DoSomething", true); TestApi fakeType = builder.CreateFake(); fakeType.DoApiTest(); // it will display: // Inject bad code // Base DoSomething Console.ReadLine(); } public static void InjectBadCode() { Console.WriteLine("Inject bad code"); } } And this FakeBuilder class has such code: /// /// Builder that will generate inheritor for specified assembly and will overload specified internal virtual method /// /// Target type public class FakeBuilder { private readonly Action _callback; private readonly Type _targetType; private readonly string _targetMethodName; private readonly string _slotName; private readonly bool _callBaseMethod; public FakeBuilder(Action callback, string targetMethodName, bool callBaseMethod) { int randomId = new Random((int)DateTime.Now.Ticks).Next(); _slotName = string.Format("FakeSlot_{0}", randomId); _callback = callback; _targetType = typeof(TFakeType); _targetMethodName = targetMethodName; _callBaseMethod = callBaseMethod; } public TFakeType CreateFake() { // as CorpLibrary1 can't use code from unreferences assemblies, we need to store this Action somewhere. // And Thread is not bad place for that. It's not the best place as it won't work in multithread application, but it's just a sample LocalDataStoreSlot slot = Thread.AllocateNamedDataSlot(_slotName); Thread.SetData(slot, _callback); // then we generate new assembly with the same nameand public key as target assembly trusts by InternalsVisibleTo attribute var newTypeName = _targetType.Name + "Fake"; var targetAssembly = Assembly.GetAssembly(_targetType); AssemblyName an = new AssemblyName(); an.Name = GetFakeAssemblyName(targetAssembly); // copying public key to new generated assembly var assemblyName = targetAssembly.GetName(); an.SetPublicKey(assemblyName.GetPublicKey()); an.SetPublicKeyToken(assemblyName.GetPublicKeyToken()); AssemblyBuilder assemblyBuilder = Thread.GetDomain().DefineDynamicAssembly(an, AssemblyBuilderAccess.RunAndSave); ModuleBuilder moduleBuilder = assemblyBuilder.DefineDynamicModule(assemblyBuilder.GetName().Name, true); // create inheritor for specified type TypeBuilder typeBuilder = moduleBuilder.DefineType(newTypeName, TypeAttributes.Public | TypeAttributes.Class, _targetType); // LambdaExpression.CompileToMethod can be used only with static methods, so we need to create another method that will call our Inject method // we can do the same via ILGenerator, but expression trees are more easy to use MethodInfo methodInfo = CreateMethodInfo(moduleBuilder); MethodBuilder methodBuilder = typeBuilder.DefineMethod(_targetMethodName, MethodAttributes.Public | MethodAttributes.Virtual); ILGenerator ilGenerator = methodBuilder.GetILGenerator(); // call our static method that will call inject method ilGenerator.EmitCall(OpCodes.Call, methodInfo, null); // in case if we need, then we put call to base method if (_callBaseMethod) { var baseMethodInfo = _targetType.GetMethod(_targetMethodName, BindingFlags.NonPublic | BindingFlags.Instance); // place this to stack ilGenerator.Emit(OpCodes.Ldarg_0); // call the base method ilGenerator.EmitCall(OpCodes.Call, baseMethodInfo, new Type[0]); // return ilGenerator.Emit(OpCodes.Ret); } // generate type, create it and return to caller Type cheatType = typeBuilder.CreateType(); object type = Activator.CreateInstance(cheatType); return (TFakeType)type; } /// /// Get name of assembly from InternalsVisibleTo AssemblyName /// private static string GetFakeAssemblyName(Assembly assembly) { var internalsVisibleAttr = assembly.GetCustomAttributes(typeof(InternalsVisibleToAttribute), true).FirstOrDefault() as InternalsVisibleToAttribute; if (internalsVisibleAttr == null) { throw new InvalidOperationException("Assembly hasn't InternalVisibleTo attribute"); } var ind = internalsVisibleAttr.AssemblyName.IndexOf(","); var name = internalsVisibleAttr.AssemblyName.Substring(0, ind); return name; } /// /// Generate such code: /// ((Action)Thread.GetData(Thread.GetNamedDataSlot(_slotName))).Invoke(); /// private LambdaExpression MakeStaticExpressionMethod() { var allocateMethod = typeof(Thread).GetMethod("GetNamedDataSlot", BindingFlags.Static | BindingFlags.Public); var getDataMethod = typeof(Thread).GetMethod("GetData", BindingFlags.Static | BindingFlags.Public); var call = Expression.Call(allocateMethod, Expression.Constant(_slotName)); var getCall = Expression.Call(getDataMethod, call); var convCall = Expression.Convert(getCall, typeof(Action)); var invokExpr = Expression.Invoke(convCall); var lambda = Expression.Lambda(invokExpr); return lambda; } /// /// Generate static class with one static function that will execute Action from Thread NamedDataSlot /// private MethodInfo CreateMethodInfo(ModuleBuilder moduleBuilder) { var methodName = "_StaticTestMethod_" + _slotName; var className = "_StaticClass_" + _slotName; TypeBuilder typeBuilder = moduleBuilder.DefineType(className, TypeAttributes.Public | TypeAttributes.Class); MethodBuilder methodBuilder = typeBuilder.DefineMethod(methodName, MethodAttributes.Static | MethodAttributes.Public); LambdaExpression expression = MakeStaticExpressionMethod(); expression.CompileToMethod(methodBuilder); var type = typeBuilder.CreateType(); return type.GetMethod(methodName, BindingFlags.Static | BindingFlags.Public); } } remarks about sample: as we need to execute code from another assembly, CorpLibrary1 hasn't access to it, so we need to store this delegate somewhere. Just for testing I stored it in Thread NamedDataSlot. It won't work in multithreaded applications, but it's just a sample. I know that we use Reflection to get private\internal members of any class, but within reflection we can't override them. But this issue is allows anyone to override internal class\method if that assembly has InternalsVisibleTo attribute. I tested it on .Net 3.5\4 and it works for both of them. How does it possible to just copy PublicKey without private key and use it in runtime? The whole sample can be found there - https://github.com/sergey-litvinov/Tests_InternalsVisibleTo UPDATE1: That test code in Program and FakeBuilder classes hasn't access to key.sn file and that library isn't signed, so it hasn't public key at all. It just copying it from CorpLibrary1 by using Reflection.Emit

    Read the article

  • How to change contact picture in Windows 8 People app for linked contacts?

    - by Sergey
    I link contacts together in people app. Very usefull feature for me. But how can I change picture of contact? For example I link together Skype, Facebook and Gmail accounts of somebody and People app show me picture for example from Facebook for this contact. But I want set picture from Skype or Gmail. Or remove picture completely for example. Is it possible? I easily can do it on my Windows Phone 7.5, in same People app. Does Microsoft forget about this functional in windows 8?

    Read the article

1 2 3 4 5 6  | Next Page >