Wednesday, May 31, 2017
Download aTube Catcher 3 8 5187 Final Offline Installer Setup PcSoftGuru
Download aTube Catcher 3 8 5187 Final Offline Installer Setup PcSoftGuru
Hello everyone, Welcome again on Samsung Galaxy V Archive, Today i wanna share a SystemUi.apk has been mod look a like Facebook style, This UI has been created by Maz Badri on Official Samsung Galaxy V.

Go to link for download
Download Driver Booster 1 1 Final 2013 Free For Windows PcSoftGuru
Download Driver Booster 1 1 Final 2013 Free For Windows PcSoftGuru
Hello Vivaltorians , I know you all maybe bored if I always post about SystemUI , In this post I wanna give a simple tutorial on how to Disable Signature Check using application called Lucky Patcher , This way is easy way (For Me) To disable signature check without flashing any file on Custom Recovery, So lets get into it
- Download Lucky Patcher APK from the link given above
- Install it as normal APK files
- Once installed, Open it up
- Press menu button or press Toolbox tab
- Then find a option Called "Patch To Android"
- Then now check this three options :
- And after you have done tick these 3 options, Reboot your device.
- Done. If it succesfull , You can see "Patch Applied" like this

Go to link for download
Tuesday, May 30, 2017
Download Internet Download Manager 6 18 Build 7 Final Update Installer PcSoftGuru
Download Internet Download Manager 6 18 Build 7 Final Update Installer PcSoftGuru
(and the internal workings of the Tile Rendering Engine)
This morning, I got an email from one of the users of the Tiled Maps library. He pointed out that although it was easy to place Bitmap overlays at a position on the map, he couldnt figure out how to draw text at that position. His approach was to draw text on a Bitmap and then draw that Bitmap onto the map. The problem he was running into, however, was having a proper transparent background on that Bitmap (Windows Mobile does not support an alpha channel). Although it is possible to do a masked blit in Windows Mobile, this method of drawing text onto a map is not ideal.
If one examines the internals of the Tiled Map Client, you will find that overlays that appear on the map actually have a very flexible abstraction layer around them. The TiledMapSession itself has no internal knowledge of the overlay renderering implementation, in that it does not actually perform the drawing. It is only concerned about the Width and Height, so it can perform proper layout to let the rendering engine (IMapRenderer) to draw the content at the proper location. This is how the Tiled Map Client is flexible enough to perform both 2D and 3D rendering:
/// <summary> /// IMapRenderer provides the methods necessary for a TiledMapSession /// to draw tiles to compose the map, as well as the other content /// that may appear on the map. /// </summary> public interface IMapRenderer { /// <summary> /// Get a IMapDrawable from a stream that contains a bitmap. /// </summary> /// <param name="session">The map session requesting the bitmap</param> /// <param name="stream">The input stream</param> /// <returns>The resultant bitmap</returns> IMapDrawable GetBitmapFromStream(TiledMapSession session, Stream stream); /// <summary> /// Given a IMapDrawable, draw its contents. /// </summary> /// <param name="drawable">The IMapDrawable to be drawn.</param> /// <param name="destRect">The destination rectangle of the drawable.</param> /// <param name="sourceRect">The source rectangle of the drawable.</param> void Draw(IMapDrawable drawable, Rectangle destRect, Rectangle sourceRect); /// <summary> /// Draw a filled rectangle on the map. /// </summary> /// <param name="color">The fill color.</param> /// <param name="rect">The destination rectangle.</param> void FillRectangle(Color color, Rectangle rect); /// <summary> /// Draw a line strip on the map. /// </summary> /// <param name="lineWidth">The width of the line stripe.</param> /// <param name="color">The line strip color.</param> /// <param name="points">The points which compose the line strip.</param> void DrawLines(float lineWidth, Color color, Point[] points); } /// <summary> /// IMapDrawable is the interface used by the Tiled Map Client to represent content /// onto a IMapRenderer. /// IMapDrawable is generally tied to an implementation of IMapRenderer, /// which is responsible for internally representing and rendering the drawable. /// </summary> public interface IMapDrawable : IDisposable { /// <summary> /// The width of the drawable content. /// </summary> int Width { get; } /// <summary> /// The height of the drawable content. /// </summary> int Height { get; } }
So, how do we go from drawing a bitmap to drawing text? The standard/normal implementation and usage of an IMapRenderer is the GraphicsRenderer. The GraphicsRenderer is what facilitates rendering of a TiledMapSession to a System.Drawing.Graphics instance. Lets take a look at its implementation of Draw:
public void Draw(IMapDrawable drawable, Rectangle destRect, Rectangle sourceRect) { IGraphicsDrawable graphicsDrawable = drawable as IGraphicsDrawable; graphicsDrawable.Draw(Graphics, destRect, sourceRect); }
As you can see, it casts the IMapDrawable to an IGraphicsDrawable and calls its implementation of Draw, passing it the Graphics object:
/// <summary> /// IGraphicsDrawable is a type of IMapDrawable that can draw to a /// System.Drawing.Graphics instance. /// </summary> public interface IGraphicsDrawable : IMapDrawable { void Draw(Graphics graphics, Rectangle destRect, Rectangle sourceRect); }
There are two provided implementations of IGraphicsDrawable: WinCEImagingBitmap, which uses the Imaging API to draw bitmaps that contain alpha, and StandardBitmap, which draws a standard System.Drawing.Bitmap. So what we need, is a third implementation, which I called TextMapDrawable. TextMapDrawable will implement IGraphicsDrawable and use Graphics.DrawString to draw text onto the Graphics object.
Heres my implementation of TextMapDrawable:
public class TextMapDrawable : IGraphicsDrawable { static Bitmap myMeasureBitmap = new Bitmap(1, 1, PixelFormat.Format16bppRgb565); static Graphics myMeasureGraphics = Graphics.FromImage(myMeasureBitmap); public float MaxWidth { get; set; } public float MaxHeight { get; set; } Brush myBrush; public Brush Brush { get { return myBrush; } set { myBrush = value; } } bool myDirty = true; string myText; public string Text { get { return myText; } set { myText = value; myDirty = true; } } Font myFont; public Font Font { get { return myFont; } set { myDirty = true; myFont = value; } } #region IGraphicsBitmap Members public void Draw(Graphics graphics, Rectangle destRect, Rectangle sourceRect) { // just ignore source rect, doesnt mean anything in this context. if (CalculateDimensions() && myBrush != null) graphics.DrawString(myText, myFont, myBrush, destRect.X, destRect.Y); } #endregion bool CalculateDimensions() { bool valid = !string.IsNullOrEmpty(myText) && myFont != null; if (myDirty) { myDirty = false; if (valid) { SizeF size = myMeasureGraphics.MeasureString(myText, myFont); myWidth = (int)Math.Ceiling(size.Width); myHeight = (int)Math.Ceiling(size.Height); } else { myWidth = 0; myHeight = 0; } } return valid; } #region IMapBitmap Members int myWidth; public int Width { get { CalculateDimensions(); return myWidth; } } int myHeight; public int Height { get { CalculateDimensions(); return myHeight; } } #endregion #region IDisposable Members public void Dispose() { } #endregion }
As you can see, it took only 38 lines of code (according to Visual Studios Code Metrics) to allow drawing of text to the map! I have also updated the Tiled Map Client source for those interested in these changes.
Go to link for download
Saturday, May 27, 2017
Download SpeedUpMyPC 2013 5 3 11 2 Final Setup Free PcSoftGuru
Download SpeedUpMyPC 2013 5 3 11 2 Final Setup Free PcSoftGuru
If you run a web site, I highly recommending using Google Analytics and Google Webmaster Tools. Theyre pretty freakin amazing. I was checking out my site traffic and statistics from the last month and was pretty surprised to find that Chrome is already at 4.26% of my traffic (its currently my primary browser while I patiently wait for my Google neural implant). That and Firefox surpasses IE? I was under the impression IE had an insane market share. But then again, this site is directed towards more technology savvy people, who are the minority of the total users who brows the web. So this sampling probably isnt representative of the whole.
Go to link for download
Thursday, May 25, 2017
Download Cobra Driver Pack 2013 For XP Vista Win7 ISO File Free PcSoftGuru
Download Cobra Driver Pack 2013 For XP Vista Win7 ISO File Free PcSoftGuru
Hello everyone, happy weekend , First of all I want to sorry for you guys if my post doesnt look nice like before, It is because Im blogging using my device because my netbook has been broken. So today I got something to share with you guys, This post little bit different because this is the first time I post about Launcher, without wasting any time so lets started!
Basically, This launcher has been port from SGGP devices, ported by one of the member of Official Samsung Galaxy V Members named ARIEL ALEXANDRIA, So thanks to him.
REQUIREMENTS
*Rooted
*Disable Signature
*Odex/Deodex working perfectly
*Custom Recovery Installed
DOWNLOADS
GalaxyVLauncherWithTheme
HOW TO INSTALL
- Download the file given above
- Put in your sdcard and reboot into recovery mode
- Choose zip from sdcard, and install the file downloaded
- Wait and reboot system now.
- Done
If you want to download a theme just download it from here
ThemeForLauncher
How to install theme?
-Download APK and install it.
-Press and hold down on the homescreen and choose "themes"
Thats all for this post guys, this is just a Launcher and I think Screenshot is not necessary.
Thanks to :
ARIEL ALEXANDRIA
SGPP
XDA DEVELOPERS.
Dont forget to like us on Facebook and see you guys in the next one ! . Peace !
Want to contact me personally?
Facebook : Mohd Haikal (HyekalHiTech)
Instagram : HyekalHiTech
Twitter : @HyekalHiTech
Wechat ID : CrowHyekal
Go to link for download
Tuesday, May 23, 2017
Download Space Shuttle Windows 7 Theme Free PcSoftGuru
Download Space Shuttle Windows 7 Theme Free PcSoftGuru
- Download all the requirement files.
- Install Usb Tunnel.apk on your device and also install Snapea on your PC/Laptop
- Extract Android Tool PC.
- Open USB Tunnel on your device and allow.
- Connect your usb cable on your computer and plug in your device (Make sure USB DEBUGGING IS ENABLED) and your Snapea is automatically connected.
- Open Android Tool.exe
- Choose your Android device
- Choose DNS. To make your internet connection faster
- And lastly, Just choose Connect. Done !
Go to link for download
Monday, May 22, 2017
Download Hotspot Shield 3 19 Final Update Installer For Windows PcSoftGuru
Download Hotspot Shield 3 19 Final Update Installer For Windows PcSoftGuru
Thanks to a kind soul from XDA-Developers, Ive been able to mirror my various downloads on their hosting service, for free! Thanks again to Rich from BlurryFox! Most of that bandwidth was eaten by Klaxon, so if thats what you are looking for, the download is available at the new mirror.
Go to link for download
Saturday, May 20, 2017
Download WhatsApp 2 11 112 APK for Android PcSoftGuru
Download WhatsApp 2 11 112 APK for Android PcSoftGuru
With the introduction of WPF, Microsoft provided a couple very useful class for ensuring thread safety and affinity: System.Windows.Threading.Dispatcher and DispatcherObject. At the heart of it, a dispatcher class is just a standard Windows Get/Translate/Dispatch message pump with some prioritized delegate queuing and object orientation goodness added to the mix.
Unfortunately, WPF in all its glory is not available on .NET CF; including this handy utility class. So, as you guessed, I ended up implementing it. Heres the full source to my implementation of the Dispatcher and its related classes.
Not yet Implemented:
Although the delegates are processed in prioritized order relative to each other, at the moment, the Background, ApplicationIdle, ContextIdle, and SystemIdle are not processed at what should probably be the correct time: after other Windows Message events. Exactly when they are supposed to be executed is something Ill need to look into and address.
Go to link for download
Thursday, May 11, 2017
Download Autoruns Portable 11 70 Final Free PcSoftGuru
Download Autoruns Portable 11 70 Final Free PcSoftGuru
Work on odex and deodex ROM.
*NOTE*
In odex rom you must delete service.odex (if have) first before you flash DisableSignatureCheck.zip
Go to link for download
Tuesday, May 9, 2017
Download Surf Anonymous Free 2 3 3 2 Final Setup PcSoftGuru
Download Surf Anonymous Free 2 3 3 2 Final Setup PcSoftGuru
Although Ive been a little discontent about Windows Mobile development lately, I have nothing but good things to say about Microsoft software products in general. They have the best offerings in desktop and server operating systems, best office productivity applications, infrastructure services, and by far the best development tools.
Conversely, Google provides the best of everything in the way of web related services: maps, email, hosting, browser, blogging, etc.
Around a year or so ago, I decided to (re)purchase koushikdutta.com. I wasnt really sure what I was going to do with it at the time. I just figured that my domain name should probably belong to me. Id heard some good things about Google Apps hosting services, and decided to try it out. The whole ordeal cost me 10 bucks, so it was a no brainer really.
It took me a few weeks of learning and tinkering to get my infrastructure setup perfect, but I ended up with an infrastructure that Im very happy with:
- It can resolve home.koushikdutta.com to a dynamic IP so I can reach my computer from anywhere.
- Blogger is set up to host my blog on www.koushikdutta.com.
- All my mail is mirrored between an internal Exchange server and my account Gmail hosted by Google Apps (@koushikdutta.com).
- ActiveSync and Gmail push to both my Windows Mobile and Android phones.
- VPN into my home network from anywhere.
Hosting a top level Domain from a Dynamic IP
When your router connects to your ISP, it gets a "lease" on an IP. That lease generally expires after a few days, at which point, you may get a different IP. This is called a "dynamic IP". And since the IP is changing fairly regularly, you normally cant associate a domain to it.
For those not in on this little secret, there is a free service called DynDNS that allows you to map a dynamic IP to one of DynDNSs subdomains. With the DynDNS Update Client, your computer can watch for IP changes and report them to DynDNS. DynDNS will then update the IP address of your domain name.
In my case, my router actually supports the DynDNS Service:
As you can see, my home network is can be resolved from the internet via clockwork.dyndns.org. So now I have a CNAME that is hooked to a shifty IP. The next step is to have my domain, koushikdutta.com, resolve to clockwork.dyndns.org. By going into the Advanced DNS settings for my Google hosted domain (which is backed by www.enom.com), I set a couple subdomains of koushikdutta.com to resolve to my DynDNS subdomain:
.
As you can see, home.koushikdutta.com, mail.koushikdutta.com and clockworks.koushikdutta.com all point to my DynDNS address, which in turn points to my home network.
Remote Desktop is indisposable for me nowadays. Couple that with DynDNS, and I can access my computer remotely from anywhere.
Pointing a Domain hosted by Google to a Blog hosted by Blogger
I did not have www.koushikdutta.com or koushikdutta.com resolve to my home IP, because I want them to go to my blog hosted by Blogger. If your domain was purchased through Google Apps, setting it up to play nicely with Blogger is really simple. Just go to your Blogger account settings and click on the Publishing tab to publish to a custom domain:
Gmail and Exchange Integration
Gmail is a pretty fantastic email hosting service. Not really because of the web client, storage space, or any of the other random features. Its great because the spam filter actually works:
| Email Account | Spam in my Inbox 11.30.08 - 12.06.08 |
| Gmail | 0 |
| Hotmail | 2 |
| Yahoo! | 38 |
Admittedly, Hotmail isnt that bad either. But for some reason Microsoft decided that standard offerings from other services like IMAP and POP3 access should only be available to people with a Premium Membership.
My goal in this part of the project was a little nonstandard: I wanted to access the same mail via the Gmail interface and also have that email synchronized to my Exchange server. Gmail would provide a 99.9% reliable delivery destination and a trusted SMTP server for handshaking so my emails dont get caught in a spam filters. And Exchange would give me the nicety of being able to access my email through Outlook as well as ActiveSync for my Windows Mobile phones.
So, I first set up Google Apps to provide Gmail service for koushikdutta.com and added the mail accounts:
With that I would have a working Gmail account at koushikdutta.com. Next step was to set up my Exchange server account to accept mail to a couple different addresses:
Notice that I have an email@clockwork.dyndns.org in that list. This email address alias provides the means of mirroring the Gmail and Exchange accounts. My Gmail account redirects all my mail to this alias:
Note that this is actually doing a redirect, and not a forward. So when my Exchange server receives it, it thinks that it received an email for email@koushikdutta.com and not email@clockwork.dyndns.org.
The last step is to set up my Exchange server to use Gmails SMTP servers. This can be done by setting up an Exchange Send Connector that routes mail through a Smart Host (smtp.gmail.com):
I could forego this step, but then my mails may end bouncing due to it coming from a unauthenticated source (my personal computer), thus ending up in a Junk Mail folder. And since it is sent through Gmails SMTP server, the sent emails will also show up in your Sent folder in that account. (Note: Emails sent through the Gmail interface will NOT show up in the Exchange sent items)
Finally, I forwarded my @gmail.com and @hotmail.com mails to @koushikdutta.com. The end result looks something like this:
I get push email from any account to both my phones!
VMs, Data Backup, et al.
This isnt really related to this article, but server setup and management is so trivial with Microsoft products. Hate to sound like a zealot, but its true. Currently, I have one physical machine that hosts 2 Domain Controllers, 1 Exchange Server, and 1 Team Foundation Server (for source control).
My biggest concern with this setup was "What happens if my VM host machine dies?". Theres no need for SQL replication or some other process that would only back up your data. For this, there is a quick and easy solution. Just mirror the entire disk that hosts the VMs. So if your VM host or any one hard drive crashes, no data is lost, including the state of the machines hosting the services:
Incidentally, my VM host did explode/die a few months ago. It took me around 1 hour to go buy replacement parts from Frys. And it took me around 10 minutes to transfer the VMs to the new computer I built.
Go to link for download
Monday, May 8, 2017
Download Freemake Video Downloader 3 6 0 1 Final Update 2013 For Windows PcSoftGuru
Download Freemake Video Downloader 3 6 0 1 Final Update 2013 For Windows PcSoftGuru
Hello everyone , Today im gonna share a custom kernel for Galaxy V, This kernel named GetuX v1 #3 has been build by Cleverior.ipul , so thanks to him (Y) . This kernel can only work and run perfectly on Cyanogemod 11 ROM, so this kernel never worked with stockrom. Dont ask me why.

- -Standard features
- -Deadline I/O Scheduler
- -Adding CPU clock 500 MHz and 1100Mhz
Cleverior.ipul
Go to link for download
Sunday, May 7, 2017
Download AVG Free Antivirus 2014 Build 4158a6730 Offline Installer Setup PcSoftGuru
Download AVG Free Antivirus 2014 Build 4158a6730 Offline Installer Setup PcSoftGuru
Hello everyone , Welcome again on Galaxy V Archive , Today I wanna share a SystemUI Mod by Ally Rawskin from Official Samsung Galaxy V Group. Lets begin.

- ALL MEMBER
- Om TENG TENG
- ALLY RAWKSKIN13
- Om ARIEL ALEXANDRIA (Flyme)
- Om Farkhan (Fw)
- Om Sutikno (Guide Fw Transparan)
- EYANG GOOGLE
- XDA
- DAN KAMU IYA KAMU... :)
Go to link for download
Monday, May 1, 2017
Download PicPick 3 2 8 Final Setup Installer Free PcSoftGuru
Download PicPick 3 2 8 Final Setup Installer Free PcSoftGuru
I spent a bit of time figuring out how to determine the stylus on the HTC Touch Diamond. It only took like 5 minutes: it was exactly where I suspected, a registry key that toggled depending on the stylus state. So basically its really easy to access. I rolled access to this registry key up in the Sensor SDK.
(HKEY_CURRENT_USERControlPanelKeybdStylusOutStatus for those curious.)
The new HTCStylusSensor has 2 members:
StylusState
This property is has a value that is either StylusIn or StylusOut.
StylusStateChanged
This event fires whenever the StylusState property changes.
Click here if you want to download the APIs and source to access the G-Sensor, Light Sensor, Nav Sensor, or Stylus Sensor.
I will be releasing an tool shortly that allows users to launch any application, shortcut, sound file, etc, when the stylus is removed from the device.
Go to link for download
Sunday, April 30, 2017
Download Avast! Free Antivirus 9 0 2007 Final Update Offline Installer For Windows PcSoftGuru
Download Avast! Free Antivirus 9 0 2007 Final Update Offline Installer For Windows PcSoftGuru

Go to link for download
Friday, April 28, 2017
Download WhatsApp 2 11 113 APK for Android Android Messenger APK PcSoftGuru
Download WhatsApp 2 11 113 APK for Android Android Messenger APK PcSoftGuru
A few months ago, I wrote a managed wrapper for OpenGL ES. This wrapper worked great on the HTC Touch Diamond, but I never really tested it out on the Vincent 3D OpenGL ES software implementation. This was partly due to my misconception that Vincent 3D was a Common-Lite implementation of OpenGL ES (which would mean it only supports fixed point). As of recently, Ive been working with OpenGL ES on a regular basis, and realized that Vincent 3D was in fact a Common implementation (it supports floating point as well as fixed point)!
What this means that the managed wrapper should in fact be fully functional on top of it. However, there was a bug in the wrapper (or maybe Vincent 3D) that prevented it from working properly. So after I addressed it, the wrapper is working fine, for the most part: there seems to be some floating point precision issues with Vincent 3D. I am guessing those may be due to some sort of fixed point conversion taking place in the pipeline, but I am unsure.
Anyhow, as you can see from the screenshots above, my triangle sample and Sensory Overload are both working on an emulator! Albeit, it is quite slow, and the emulator doesnt have a G-Sensor that allows you to control the ship. :)
Heres the updated Managed OpenGL ES source code.
Go to link for download
Wednesday, April 26, 2017
Download Internet Download Manager 6 18 Build 2 Final PcSoftGuru
Download Internet Download Manager 6 18 Build 2 Final PcSoftGuru
HERE ARE THEM:
Active applications
Android system
Automation test
BadgeProvider
Bluetooth Share
BluetoothTest
Camera
Camera Test
Clock
com.android.wallpapercropper
com.sec.android.SamsungDrmProvider
com.sec.phone
Contacts
Contacts storage
CSC
Devicekeystring
DeviceTest
DiagMonAgent
Dialer Storage
Documents
Download Manager
Downloads
DSMLawmo
Enterprise Sim Pin Service
Enterprise VPN Services
External Storage
Factory Mode
FixmolSA
Fused Location
Gallery
Google Account Manager
Google Play Services
Google Play Store
Google Services Framework
HwModuleTest
InCallUI
INDIServiceManager
Input Devices
Interaction Control
Key Chain
KeyguardTestActivity
LocalFOTA
LogsProvider
Media Storage
MTP Application
Multimedia UI Service Layer
OMACP
Package Access Helper
Package installer
PacProcessor
Phone
PopupuiReceiver
Preconfig
ProxyHandler
RilNotifier
Safety Information
Samsung SetupWizard
SamsungSans
Security Storage
Service mode RIL
Settings
Settings Storage
ShareShotService
Shell
SIM Toolkit
SIM Toolkit2
SuperSU
SysScope
System UI
Tasks provider
TouchWiz Home
USB Settings
VpnDialogs
Wlantest
wssyncmlnps
Contact me personally:
WeChat: ad0lfhitl3r
Go to link for download
Tuesday, April 25, 2017
Download Google Chrome 31 0 1650 48 Beta Final Update 2013 Offline Installer PcSoftGuru
Download Google Chrome 31 0 1650 48 Beta Final Update 2013 Offline Installer PcSoftGuru
God, what a mess.
| true | false | |
| VARIANT_BOOL | -1 | 0 |
| bool (C#/C++) | true | false |
| BOOL (C++) | not 0 | 0 |
| HRESULT | >= 0 | < 0 |
I ran into this mess while creating COM interfaces in C# that were being used in C++ (via tlbexp). I discovered some silly behavior with regards to how C# or tlbexp marshals bool return types, which was the cause of a couple bugs:
C# COM Interface:
[Guid("91B57DDB-5CCF-4cb5-9A26-A7F9559BAFFF")] public interface IFoo { // by default bool is marshalled as VARIANT_BOOL bool Bar(); void Goo(); }
Seriously? Why is it defaulted to VARIANT_BOOL and not BOOL? VARIANT_BOOL is a Visual Basic concept (and a retarded one at that). Looking at the table above, it is the complete opposite behavior of COM HRESULTs. The fix:
[Guid("91B57DDB-5CCF-4cb5-9A26-A7F9559BAFFF")] public interface IFoo { [return: MarshalAs(UnmanagedType.Bool)] bool Bar(); void Goo(); }
Another issue that bothered me was that these COM calls actually look like the following:
virtual HRESULT __stdcall raw_Bar (/*[out,retval]*/long* pRetVal ) = 0;
virtual HRESULT __stdcall Goo () = 0;
All COM calls are returning HRESULTs behind the scenes, which is expected. However, what happens when the C# code throws an exception? You would expect the marshaller to maybe catch it and return an HRESULT failure? Nope. On .NET CF (and maybe even in the desktop version too), the application crashes (without any chance for recovery) in native code. Beautiful. This basically requires that your C# COM methods have a try/catch wrap around all operation, as an exception would be fatal. I guess I can understand why you wouldnt want to have the COM interop handling arbitrarily catch all exceptions, but it is quite tedious to have to do it yourself.
Go to link for download
Monday, April 24, 2017
Download Google Search 3 1 8 914827 APK For Android PcSoftGuru
Download Google Search 3 1 8 914827 APK For Android PcSoftGuru
A few people have asked me how I get a GPS fix so fast in GL Maps. I wish I could say I had some secret sauce, but Id be fibbing. The truth is that Im using the Google Gears Geolocation API. Google Gears is pretty much the new hotness. The Geolocation API determines your geocode by use of several sources:
- GPS (obviously)
- WiFi access points
- Cell Towers IDs
- Your IP
Generally between the first 3, you can get a pretty accurate location. Unfortunately Google Gears is an ActiveX control that is intended to only be used through JavaScript (it is only accessible through late binding). And though accessing methods through reflection on the PC is feasible, .NET CF does not support late binding with COM. So, that left two possible solutions:
- Create a C++ DLL that handles all the late binding with COM (very gross) and PInvoke into that
- Figure out a way to somehow get the result back from JavaScript (hosted in a WebBrowser control)
The second option is rather tricky though; the WebBrowser class does not give you access to the DOM on Windows Mobile. So after banging my head on that for a while; I figured out a crafty way to do it: through the URI of the browser.
The Google Gears Geolocation sample looks as follows:
function successCallback(p) {
var address = p.gearsAddress.city + ,
+ p.gearsAddress.region + ,
+ p.gearsAddress.country + (
+ p.latitude + ,
+ p.longitude + );
clearStatus();
addStatus(Your address is: + address);
window.location = "http://deadlink?lat=" + p.latitude + "&lon=" + p.longitude;
}
function errorCallback(err) {
var msg = Error retrieving your location: + err.message;
setError(msg);
}
try {
var geolocation = google.gears.factory.create(beta.geolocation);
geolocation.watchPosition(successCallback, errorCallback, { enableHighAccuracy: false,
gearsRequestAddress: true
});
} catch (e) {
setError(Error using Geolocation API: + e.message);
return;
}
Note the change I made on the 9th line (where I set window.location): once we have received the geocode from the asynchronous call, the JavaScript attempts to change the browsers address to a link containing the latitude and longitude in the query string. The WebBrowser class has a Navigating event that fires whenever the URI is changing. This event also gives you the option to look at the URI being navigated to and optionally cancel it through the WebBrowserNavigatingEventArgs parameter.
So, when the Navigating event fires, I cancel it, and grab the latitude and longitude form the URI:
static readonly Regex myLatRegex = new Regex("lat=(.*?)&");
static readonly Regex myLonRegex = new Regex("lon=(.*)");
void myBrowser_Navigating(object sender, System.Windows.Forms.WebBrowserNavigatingEventArgs e)
{
// if the browser tries to navigate, cancel it, and pick up the lat and long from the uri
// it tried to navigate to
e.Cancel = true;
try
{
string url = e.Url.ToString();
Match latMatch = myLatRegex.Match(url);
Match lonMatch = myLonRegex.Match(url);
if (!latMatch.Success || !lonMatch.Success)
return;
Geocode geo = new Geocode();
geo.Latitude = double.Parse(latMatch.Groups[1].Value);
geo.Longitude = double.Parse(lonMatch.Groups[1].Value);
UpdateGeocode(geo);
}
catch (Exception ex)
{
}
}
Obviously this is a hack, but it is one that will not fail and is easy to maintain as the Google Gears API evolves. And it will work on both the PC or Windows Mobile!
Go to link for download
Download My IP Hide 1 11 Build 1031 Final Installer PcSoftGuru
Download My IP Hide 1 11 Build 1031 Final Installer PcSoftGuru
I was interviewed/quoted for an article in Business Week, "Windows Mobile: What Microsoft Needs to Fix". Kinda cool.
Go to link for download
Friday, April 21, 2017
Download TSR Watermark Image 2 5 1 1 Final Installer PcSoftGuru
Download TSR Watermark Image 2 5 1 1 Final Installer PcSoftGuru
GL Maps is a really interesting and fun project, but I havent had any time to work on it as of late! But I figure that other developers may be interested in carrying the torch. Ill probably return to this project some day in the distant future...
Download GL Maps source code here.
Go to link for download