Showing posts with label Source. Show all posts
Showing posts with label Source. Show all posts

September 05, 2024

Github pages not deploying of a static website

 Hello all,


It's been a long time since I have posted a blog.

But I am trying to come up with the passion of rewriting the blogs.

Here are the recent issues and solutions that I have faced.

Problem

I have my website https://pillisureshraju.in/ hosted on GitHub using GitHub Pages.

I have recently updated one of the pages https://pillisureshraju.in/cv but the GitHub deployment is not triggered.

I have searched and configured the GitHub with the environment and selected the branch for auto-deployment.

Environment


Solution

Update index.html and commit to GitHub with a PR to master.

Finally, I am able to see that the deployment is auto-triggered, and the website is live now.



Feel free to reach out on psrdotcom@gmail.com or leave a comment on this blog.

December 07, 2020

C# get windows user app data folder path

 Hi folks,

Today I will explain to get the folder path of the windows user specific app data for storing any program (app) based information in C# (.NET Framework, .NET CORE, .NET 5)


Source

using System;

using System.IO;

namespace NETFrameworkConsoleApp1

{

    class Program

    {

        static void Main(string[] args)

        {

            string dir = Path.Combine(

                Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),

                "FolderName"

            );

            Console.WriteLine("User Appdata Path: \n " + dir);

            Console.ReadLine();

        }

    }

}


Hope this helps you to customize your requirement.

References

https://docs.microsoft.com/en-us/dotnet/api/system.environment?view=net-5.0

Please share your comments and feedback to psrdotcom@gmail.com


C++ get windows user app data folder path

 Hi folks,

Today we will see how we can get the folder path of the windows user specific app data for storing any program (app) based information.


Source

#include <iostream>

#include <tchar.h>

#include <shlwapi.h>

#pragma comment(lib,"shlwapi.lib")

#include "shlobj.h"

using namespace std;

int main()

{  

    TCHAR szPath[MAX_PATH];

    // Get path for each computer, non-user specific and non-roaming data.

    if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, 0, szPath)))

    {

        // Append product-specific path

        PathAppend(szPath, _T("\\App Folder Path\\"));

        wcout << "User AppData Roaming Folder Path: \n" << szPath << endl << endl;

    }

    

    // Get path for each computer, non-user specific and non-roaming data.

    if (SUCCEEDED(SHGetFolderPath(NULL, CSIDL_PROGRAM_FILES, NULL, 0, szPath)))

    {

        wcout << "System Program Files Folder Path: \n" << szPath << endl << endl;

    }

    cout << "==end==";

}


Hope this helps you to customize your requirement.

References

https://docs.microsoft.com/en-us/windows/win32/shell/csidl

Please share your comments and feedback to psrdotcom@gmail.com


August 24, 2020

Microsoft Azure DevOps Server move or copy Project Source Code from one organization to another organization

Hi folks,

Today I will explain the process of moving the projects from one organization to another in Azure DevOps Server which includes the source repository code, history of commits, tags.


Pre-requisites

  • Git command line tool
  • ssh-keygen tool
  • Azure DevOps Project access


Environment Setup

  1. Create ssh key on your local PC
  2. Same user account on both the organization with required permissions (Admin)
  3. On Azure DevOps, to go user profile
  4. Add the generated SSH pub key of PC to Azure DevOps


Procedure in terminal/command prompt

1. git clone <old org project repo ssh url>

2. cd <project>

3. git branch -a

    a. git checkout <all branches one by one>

4. git fetch --tags

5. git remote rm origin

6. git remote add orgin <new org project repo ssh url>

7. git push origin --all

8. git push --tags


Hope you are able to move/copy the project source code which includes the history of commits and tags.

Please send your comments and feedback to psrdotcom@gmail.com


December 19, 2014

Reverse Engineering .apk file (or) Getting Java source code from .apk by extracting

Hi friends,

Today we are going to see how the .apk can be reverse engineered to see the original source code

Procedure

  1. Get the .apk file (Here I'm taking example apk called psr.apk)
  2. Rename the extention from psr.apk to psr.zip file
  3. Extract the psr.zip file
  4. It will create folder named "psr" and contents will be inside that
  5. Download the tool "dex2jar" from the official link
  6. Extract the downloaded "dex2jar" zip
  7. Navigate to the "dex2jar" extracted directory
  8. Execute the following command
    • ./d2j-dex2jar.sh psr/classes.dex
  9. Now it will generate classes-dex2jar.jar file
  10. Extract the jar file, it will create "classes-dex2jar" folder
  11. Now, open you "intelliJ IDEA"
    • Install "Java Decompiler IntelliJ Plugin" in "intelliJ IDEA"
    • In IDE, click "File->Open"
    • Select the "classes-dex2jar" folder path
  12. Now, click on any of the .class file, then you should be able to see the original java source code of it

Isn't it awesome guys :)

Keep enjoying the coding :)

Please send your feedback and comments to psrdotcom@gmail.com

April 29, 2012

Huffman Code in C/C++ with String as Node

Hi everyone,

I have copied someone's code and modified. But Since, the author has put the code as open source, I have done that for my friend.

Here it goes, Huffman code in C/C++

Source Code:
#include<conio.h>
#include<string.h>
#include<math.h>
#include<iostream.h>
#include<stdlib.h>

#define ARRAY_SIZE 20
#define MAX_NAME_LEN 25

int g,h,p,y,n;
char m[ARRAY_SIZE],b[ARRAY_SIZE][2],re;

int alpha = 65;

char name[ARRAY_SIZE][MAX_NAME_LEN];
int i=0,j=0,k=0;

/*
Perfoming operations
*/

//Tree Structure
struct tree
{
char a[20];
int s;
struct tree *left,*right;
}*root=NULL,*tt[20]={NULL},*temp,*temp2,*t2,*ri,*le;


// Queur Structure
struct pqu
{
int info;
char a[20];
struct pqu *ptr;
}*front=NULL,*t,*par,*t1,*p1,*p2;

// Pointer to queue
struct pqu* fp(int info)
{
struct pqu *p=NULL;
for(t1=front;t1->info<info&&t1!=NULL;t1=t1->ptr)
{
p=t1;
}
return (p);

}

//PUSH operation
void enqu(char a[20],int p)
{
t=(struct pqu*)malloc(sizeof(struct pqu));
strcpy(t->a,a);
t->info=p;
t->ptr=NULL;
if(front==NULL)
{
front=t;
}
else
{
par=fp(p);
if(par==NULL)
{
t->ptr=front;
front=t;
}
else
{
t->ptr=par->ptr;
par->ptr=t;
}
}
}

// POP operation
struct pqu* dequ()
{
t1=front;
front=front->ptr;
return t1;
}

//Get Info of a leaf
void info(char c[2])
{
int m=0,i;
temp2=root;
while(strcmp(c,temp2->a)!=0)
{
t2=temp2->left;
for(i=0;i<strlen(t2->a);i++)
{
if(t2->a[i]==c[0])
{
temp2=temp2->left;
m=1;
cout<<”0&”;
break;
}
}
if(m!=1)
{
temp2=temp2->right;
cout<<&”1&”;
}
m=0;
}
}

// Insert Operation
void insert()
{
char a1[20],b1[20],v1[20];
int i,j,z=0,l;
while(front!=NULL)
{
p1=dequ();
strcpy(a1,p1->a);
l=p1->info;
p2=dequ();
if(p2==NULL)
break;
strcpy(b1,p2->a);
strcpy(v1,a1);
temp=(struct tree*)malloc(sizeof(struct tree));
strcpy(temp->a,strcat(v1,b1));
temp->s=l+p2->info;
temp->left=NULL;
temp->right=NULL;
temp2=temp;
root=temp;
for(i=0;i<z;)
{
if(strcmp(tt[i]->a,a1)==0)
{
temp->left=tt[i];
for(l=i;l<z;l++)
{
tt[l]=tt[l+1];
}
i=0;
continue;
}
else if(strcmp(tt[i]->a,b1)==0)
{
temp->right=tt[i];
for(l=i;l<z;l++)
{
tt[l]=tt[l+1];
}
i=0;
continue;
}
i++;
}
if(temp->left==NULL)
{
le=(struct tree*)malloc(sizeof(struct tree));
strcpy(le->a,a1);
le->left=NULL;
le->right=NULL;
temp2->left=le;
}
if(temp->right==NULL)
{
ri=(struct tree*)malloc(sizeof(struct tree));
strcpy(ri->a,b1);
ri->left=NULL;
ri->right=NULL;
temp2->right=ri;
}
if(front!=NULL)
enqu(temp2->a,temp2->s);
tt[z++]=temp2;
}
}

//Display Tree
void disp(struct tree *rt)
{
if(rt!=NULL)
{
disp(rt->left);
//cout<<””<<rt->a;disp(rt->right);
}
}

//Display Name
void displayname(int idx)
{
cout<<name[idx]<<”: ”;
}

/*
End of operations
*/


//Main Method

int main()
{
while(1)
{
//Clear Screen
clrscr();

cout<<”Enter the total no of leafs : ”;
cin>>n;


for(i=0;i<n;i++,alpha++)
{
cout<<”Enter Name: ”;
cin>>name[i];

//itoa(alpha,m,10);
//strcpy(m,(char*)alpha[i]);
*m=(char)alpha; //Assigning Local Values
strcpy(b[i],m);

cout<<”Enter frequency for ”<<name[i]<<” : ”;
cin>>g;

//Enque to the list
enqu(m,g);

} //Repeat till all the leafs data entered

insert(); // Form the tree
disp(root); // Display the codeword of leaf from root


for(i=0;i<n;i++)
{
displayname(i);
info(b[i]);
cout<<”n”;
}

cout<<”nDo You Want To Continue Y or N: ”;
cin>>re;
clrscr();
if(re=='y'||re=='Y')
continue;
else
break; //exit(0);
}

return 0;
}//end of while

Output:

I am also making this as an open source code. Anyone can edit, share, re-distribute the code.

For further queries, please mail to psrdotcom@gmail.com

November 18, 2010

Opensource SWs which I have come across today ..

Some Useful Open Source Softwares:

Ninite Easy PC Setup tool:
We can select the softwares from the list and it will download and install those softwares without our intervention in the middle like pressing Next or Continue buttons.
Link: http://ninite.com/

Sumatra PDF Viewer:
Its a slim, free and open source PDF Viewer.
Link: http://blog.kowalczyk.info/software/sumatrapdf/free-pdf-reader.html

Teracopy:
Easy to copy error out or corrupted files. We can pause and resume the file copying.
Link: http://www.codesector.com/teracopy.php

November 10, 2010

Linux tools useful for day to day life

Hi everyone,

I just read some of the linux tools description from linux journals. Just want to share those things.

  1. FFmpeg: Video converter to covert videos for YouTube. Our own videos will be converted in to YouTube suitable format.
  2. Mutt: Its a command line e-mail reading tool.
  3. Zsh: Create own shell with different colors and in output also we can put some colors to identify the output easily.
  4. SOX: Audio editor, We can add echo easily by using this editor and we can convert audio to various formats.
  5. Trickle: By using this tool, we can control the network traffic. In torrent downloaders and in browsers we can set the speed while downloading.
  6. Privoxy: Control the web access like blocking unwanted sites and blocking unwanted content.

References:
Linux Magazine
http://www.ffmpeg.org/
http://www.mutt.org/
http://en.wikipedia.org/wiki/Z_shell
http://www.zsh.org/
http://sox.sourceforge.net/
http://www.tuxradar.com/content/control-your-bandwidth-trickle
www.privoxy.org/

Send your feedback and comments
PSR.COM

Featured Post

Java Introdcution

Please send your review and feedback to psrdotcom@gmail.com