HelpUploadFiles

HelpUploadFiles - 星空上传助手,为 上传文件夹 赋能。 HelpUploadFiles - empowering upload folders.

GPL-3.0 License

Stars
55

HelpUploadFiles

- Introduction

HelpUploadFiles *** **** git .gitignore git* ****** HelpUploadFiles

HelpUploadFiles is an auxiliary upload tool. We know that git provides a .gitignore file for ignoring certain files from being uploaded based on rules, but this feature is limited to git. There are many scenarios involving file uploads, such as when we might need to upload certain files to cloud storage. However, most cloud storage services do not have the capability to ignore specified files based on rules, which is quite inconvenient. Additionally, there are numerous scenarios for uploading files. At this point, HelpUploadFiles comes into play!

HelpUploadFiles ******

Since there are no special rules required to ignore uploading for individual files, HelpUploadFiles is primarily aimed at scenarios involving folder uploads.

Star History

  1. Actions HelpUploadFiles
  2. Releases HelpUploadFiles

Package Acquisition

  1. You can go to the Actions section to download the latest feature package HelpUploadFiles.
  2. You can go to the Releases section to download the stable version of the HelpUploadFiles package.

- Expansion of File Upload Concepts

HelpUploadFiles HelpUploadFiles ****

The file upload involved with HelpUploadFiles is not limited to scenarios of uploading local files to cloud storage. In HelpUploadFiles, any operation that involves sending a folder to a specific interface can be generalized as file uploading.




The following scenarios can be considered as expanded concepts of file uploading:

  1. Uploading a local folder to cloud storage.
  2. Sending a local folder to another device (such as devices within a local area network, server object storage services, etc.).
  3. Sending a local folder to interfaces of compression software, etc.

- Verified Application Scenarios

  1. **Chromium **
  2. **Edge **
  3. 123
  4. OBS
  5. OSS
  6. COS
  7. LocalSend
  8. Send Anywhere
  9. WinSCP
  10. 7zBandizip360

The following scenarios have been verified and are operational:

  1. Folder uploads involving the Chromium browser.
  2. Folder uploads involving the Edge browser.
  3. Baidu Cloud client.
  4. Tencent Weiyun client.
  5. Alibaba Cloud Drive.
  6. Tianyi Cloud client.
  7. China Mobile Hard Disk client.
  8. Unicom Cloud.
  9. Google Cloud Storage.
  10. Little Airplane Cloud.
  11. Niuniu Express.
  12. 123 Cloud Storage.
  13. Huawei Cloud Object Storage Service OBS.
  14. Alibaba Cloud Object Storage Service OSS.
  15. Tencent Cloud Object Storage Service COS.
  16. LocalSend.
  17. Send Anywhere client.
  18. WinSCP.
  19. Compression software such as 7z, Bandizip, 360 Compression, etc.

  1. HelpUploadFiles 32 64 3232 HelpUploadFiles64Edge6464 HelpUploadFiles
  2. (v1.0.3) ***32 64 *** / ****
  3. **C++ **
  4. C++

Usage Notes

  1. HelpUploadFiles comes in two versions: 32-bit and 64-bit. You need to select the appropriate version based on the upload interface, such as using the 32-bit version of HelpUploadFiles for the 32-bit Baidu Cloud client, while the 64-bit Edge browser on a 64-bit system is a 64-bit program, requiring the 64-bit version of HelpUploadFiles.

  2. The current version (v1.0.2) only supports intercepting the file upload behavior of one process at a time. It's important to note that the 32-bit and 64-bit versions combined can only intercept one process simultaneously. Additionally, operations to add/remove the ignore list only take effect for the currently intercepted process. If you switch processes, even with a re-injection, you will need to re-add the ignore list (remove and then re-add), otherwise, it will be ineffective. This is due to the process communication scheme currently in use.

  3. For manual input of ignore rules in the input box below, C++ regular expression rules will be used.

  4. For files uploaded by dragging and dropping, automatic escaping will be performed to conform to C++ regular expression rules.

- Usage Steps (using Baidu Cloud as an example, other applications are similar)

Open Baidu Cloud.

  1. HelpUploadFiles ****

Open HelpUploadFiles, press and hold the left mouse button, the cursor will change indicating that the program has entered the capture state. Move the mouse to the main window of Baidu Cloud and release the left mouse button. The prompt text in the red box below will also change to the title of the window to be captured (if the title is empty, it will be the window class name).


At this point, you will be prompted whether to inject the empowerment module into Baidu Cloud. Click confirm, and Baidu Cloud will open a dialog box informing you of the successful injection of the empowerment module (this dialog box is generated by the Baidu Cloud process, and an obvious indication is that the dialog box icon is the Baidu Cloud icon), indicating that the module injection is successful. If there is no prompt for a successful empowerment module injection, there are two possibilities:


  • The empowerment module has already been injected before, and this injection is a repeat.

  • The empowerment module injection failed, which means the function will not be available. Please ensure that you click the "OK" button on the "Successful Empowerment Module Injection" message box before proceeding to the next step.


Please ensure that you click the OK button on the Successful Empowerment Module Injection message box before proceeding to the next step.

  1. C++

    Add ignore rules (based on C++ regular expression rules).

    There are two ways to add ignore rules:


    • You can drag and drop files into the ignore file list. (Dragging files will automatically complete the escaping to automatically adapt to regular expression rules).
    • Manually enter the regular expression in the input box below and click the "Ignore" button to add (pressing Enter is also possible).

    "****"

    If you need to remove an ignore rule, select the ignore rule in the ignore list box and then click the "Remove" button.

    As shown in the figure below, I have added two ignore rules to ignore:

    • .idea

    • node_modules

    • The .idea folder

    • The node_modules folder


  2. Upload file

Upload files by dragging the folder you need to upload to Baidu Cloud (other methods are also possible) to complete the upload. Files that match the ignore rules will not be uploaded.

- Key Step Analysis and Experience

2

  1. HelpUploadFiles

Step 2 above is the key step, determining whether the program can achieve the expected results.

This step requires considering two issues:

  1. Which version of HelpUploadFiles to use
  2. Which window to capture (i.e., which window to move the mouse to and then release)

HelpUploadFiles - Analysis of Which Version of HelpUploadFiles to Use

  • HelpUploadFiles

  • 64 32 HelpUploadFiles64( WinSCP )

  • You can check the version of the program you want to intercept (such as Baidu Cloud) through Task Manager, and then use the corresponding version of HelpUploadFiles.

  • However, this is not absolute. Some 64-bit programs require the use of the 32-bit version of HelpUploadFiles. If the 64-bit solution is not feasible, you can consider verifying this scheme (as with WinSCP below).

- Usage Experience Summary

32x86

QQ
WinSCP
36032
Send Anywhere

Using the 32-bit (x86) Version

Program Capture Window
Baidu Cloud Client Main window or drag-and-drop upload floating window both work
Tencent Weiyun Client QQ Main window (note that this is special, not the Tencent Weiyun window)
Tianyi Cloud Main window or drag-and-drop upload floating window both work
China Mobile Hard Disk Main window or drag-and-drop upload floating window both work
WinSCP Main window or drag-and-drop upload floating window both work
360 Compression and other 32-bit compression tools Compression menu pop-up window
Send Anywhere Client Main window

64 x64

**Chromium **
**Edge **
123
OBS
OSS
COS
LocalSend
7zBandizip 64

Using the 64-bit (x64) Version

Program Capture Window
Chromium Browser Web page
Edge Browser Web page
Niuniu Express Web Version Web page
Little Airplane Cloud Web Version Web page
Alibaba Cloud Drive Web Version Web page
123 Cloud Storage Web Version Web page
Unicom Cloud Web Version Web page
Google Cloud Storage Web Version Web page
Huawei Cloud Object Storage Service OBS Console Web Web page
Alibaba Cloud Object Storage Service OSS Console Web Web page
Tencent Cloud Object Storage Service COS Console Web Web page
LocalSend Main window
7z, Bandizip, and other 64-bit compression tools Compression menu pop-up window

7z- Operation Video Demonstration (using 7z compression software as an example)

C++ - C++ Regular Expression Appendix

    • \d [0-9]
    • \D [^0-9]
    • \w [a-zA-Z0-9_]
    • \W [^a-zA-Z0-9_]
    • \s
    • \S
    • *
    • +
    • ?
    • {n} n
    • {n,} n
    • {n,m} n m
    • ^
    • $
    • \b
    • ()
    • \1, \2, ...
    • \ \. .
    • |
    • .

Regular expressions are tools used to describe string patterns that can help you perform operations such as search, match, and replace in text. Here are some common regular expression rules and symbols:

Character Categories:

  • \d: Matches any digit character, equivalent to [0-9].
  • \D: Matches any non-digit character, equivalent to [^0-9].
  • \w: Matches any letter, digit, or underscore character, equivalent to [a-zA-Z0-9_].
  • \W: Matches any non-letter, non-digit, or non-underscore character, equivalent to [^a-zA-Z0-9_].
  • \s: Matches any whitespace character, including spaces, tabs, and newlines.
  • \S: Matches any non-whitespace character.

Repeat Counts:

  • *: Matches the preceding character zero or more times.
  • +: Matches the preceding character one or more times.
  • ?: Matches the preceding character zero or one time.
  • {n}: Matches the preceding character exactly n times.
  • {n,}: Matches the preceding character at least n times.
  • {n,m}: Matches the preceding character at least n times, but no more than m times.

Boundary Matches:

  • ^: Matches the beginning of a string.
  • $: Matches the end of a string.
  • \b: Matches a word boundary.

Grouping and Referencing:

  • (): Treats the characters within as a group for operations.
  • \1, \2, ...: Refer to the match results of the grouped matches.

Special Character Escaping:

  • \: Used to escape special characters, for example, \. represents a match for the dot character.

Other Common Symbols:

  • |: Represents an OR operation, matching either of the two.
  • .: Matches any character except for a newline.

v1.0.4 - v1.0.4 New Features

- Introduction

id , 32 64 HelpUploadFiles

The new version has added the functionality to inject an empowerment module into a process based on the process ID, which can primarily be used for injecting into processes that do not have visible windows. The strategy for selecting whether to use the 32-bit or 64-bit version of HelpUploadFiles is the same as the one based on the window capture scheme.

- Usage Steps

id - Obtain the Process ID through Task Manager

id

Use the Task Manager to view the process ID that needs to be injected.

id - Inject into the Process Based on the Process ID

(x86/x64) HelpUploadFiles

Choose the appropriate version (x86/x64) of HelpUploadFiles to complete the injection.

v1.0.5 - v1.0.5 New Features

This version adds the functionality of importing and exporting an ignore list.

- Known Partially Incompatible Situations

  • BitBalloon Cloud Storage is not fully compatible, with issues such as directory creation failure.